Results 1 to 7 of 7

Thread: Arch-ing ARM: Running Arch Linux On The NVIDIA Tegra 2

  1. #1
    Join Date
    Jan 2007
    Posts
    15,651

    Default Arch-ing ARM: Running Arch Linux On The NVIDIA Tegra 2

    Phoronix: Arch-ing ARM: Running Arch Linux On The NVIDIA Tegra 2

    The CompuLab Trim-Slice is quite an interesting dual-core ARM Tegra 2 device. This nettop/desktop-oriented system ships with Ubuntu 11.04 by default, but it is also well supported by Arch Linux. In this article are some tests of the dual-core ARM Cortex-A9 1.0GHz system running under Arch.

    http://www.phoronix.com/vr.php?view=16932

  2. #2
    Join Date
    Jun 2008
    Location
    Edinburgh, Scotland
    Posts
    455

    Default

    I'm not sure where you got the "softfp" bit from but if you got it from the CFLAGS, be aware that this doesn't necessarily mean it's not using the FPU. -mfloat-abi=softfp merely tells it to use the soft-float calling conventions. The same goes for "softfloat" in the host triplet. I have built for two ARM systems before.

    For the ZTE Blade, which does have an FPU...
    Code:
    armv6j-softfloat-linux-uclibceabi-gcc -march=armv6j -mfpu=vfp -mfloat-abi=softfp
    For the Medion MD 86407, which doesn't have an FPU...
    Code:
    armv6k-softfloat-linux-gnueabi-gcc -march=armv6k -mfloat-abi=soft
    Last edited by Chewi; 01-13-2012 at 12:49 PM.

  3. #3
    Join Date
    Jan 2012
    Posts
    121

    Default

    What happened to Apache benchmark?

    Anyway, a lot of the difference difference can be probably attributed to gcc versions/configurations.

    Ubuntu Linux:
    Code:
    Using built-in specs.
    COLLECT_GCC=./cc
    COLLECT_LTO_WRAPPER=/usr/lib/arm-linux-gnueabi/gcc/arm-linux-gnueabi/4.5.2/lto-wrapper
    Target: arm-linux-gnueabi
    Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.5.2-8ubuntu4' --with-bugurl=file:///usr/share/doc/gcc-4.5/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.5 --enable-shared --enable-multiarch --with-multiarch-defaults=arm-linux-gnueabi --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib/arm-linux-gnueabi --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.5 --libdir=/usr/lib/arm-linux-gnueabi --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-plugin --enable-gold --enable-ld=default --with-plugin-ld=ld.gold --enable-objc-gc --disable-sjlj-exceptions --with-arch=armv7-a --with-float=softfp --with-fpu=vfpv3-d16 --with-mode=thumb --disable-werror --enable-checking=release --build=arm-linux-gnueabi --host=arm-linux-gnueabi --target=arm-linux-gnueabi
    Thread model: posix
    gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4)
    Arch Linux:
    Code:
    Using built-in specs.
    COLLECT_GCC=./cc
    COLLECT_LTO_WRAPPER=/usr/lib/gcc/armv7l-unknown-linux-gnueabi/4.6.2/lto-wrapper
    Target: armv7l-unknown-linux-gnueabi
    Configured with: /build/src/gcc-4.6-20111223/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,fortran,lto,objc,obj-c++ --enable-shared --enable-threads=posix --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --enable-gnu-unique-object --enable-linker-build-id --with-ppl --enable-cloog-backend=isl --enable-lto --enable-gold --enable-ld=default --enable-plugin --with-plugin-ld=ld.gold --disable-multilib --disable-libssp --disable-libstdcxx-pch --enable-checking=release --host=armv7l-unknown-linux-gnueabi --build=armv7l-unknown-linux-gnueabi --with-arch=armv7-a --with-float=hard --with-fpu=vfpv3-d16
    Thread model: posix
    gcc version 4.6.2 20111223 (prerelease) (GCC)
    As we can see, it's Ubuntu/Linaro 4.5.2-8ubuntu4 (--with-mode=thumb --with-float=softfp) vs. gcc 4.6.2 20111223 (--with-float=hard). Ubuntu uses linaro optimized gcc and also has thumb2 enabled by default. Not to mention that the version of gcc is different.

  4. #4
    Join Date
    Sep 2009
    Posts
    2

    Default More ARM hardfloat benchmarks, Debian armhf, etc.

    @Michael

    DISCLAIMER: I'm Konstantinos Margaritis, the debian-armhf maintainer, working for Genesi USA -who basically has been funding the armhf port for ~2 years now- and a Linaro partner engineer, which also leads the hardfloat push amongst ARM distros. I could easily say that the best hardfloat support can be found in Debian (with over 300 patches for armhf so far), next Ubuntu armhf and then Fedora. Collaboration between those distros is very good within Linaro, and we are having our ARM hardfloat mini-summit next month in Linaro Connect in San Francisco (Feb 6-10).

    If you really want to see impressive ARM softfp/hardfp benchmarks, make sure you check this page:

    https://wiki.linaro.org/OfficeofCTO/...oat/Benchmarks

    The benchmarks were made using Phoronix Test Suite on both Debian armhf and Ubuntu armel (these are almost identically built, the only difference being the ABI, hard vs softfp).
    As you have noted, hardfp wins softfp (there is no comparison with the plain 'soft' ABI), where there are LOTS of floating point calculations, my favourite example being povray -yes, the results are real. Also, of interest is the gtkperf benchmark, font and icon rendering (via svg) is also something floating point intensive, so there is a measurable difference there as well.
    We are in the process of updating the benchmarks for the (unreleased yet) Ubuntu armhf to complete the picture.

    For the history, Debian was the first serious distro to support the hardfloat ABI -and it now has an official port, armhf:

    http://wiki.debian.org/ArmHardFloatTodo

    and

    https://buildd.debian.org/status/arc...rmhf&suite=sid

    We are at 90% and keep growing, we expect to reach armel status (>95%) in the next month or so. Next step is to finish platform support and enable Debian Installer to work on the supported devices (for now Genesi EfikaMX Smartbooks and Smarttops, Pandaboard and most likely the AC100).

    Regards

    Konstantinos

  5. #5
    Join Date
    Jul 2009
    Posts
    29

    Default

    It seems that Ubuntu gets higher marks in a lot of CPU and disk intensive benchmarks, but Arch wins in media encoding benchmarks. I know that media encoding is typically helped by SIMD instructions like SSE2, SSE3, etc... I believe the equivalent on ARM are the NEON instructions. I'm not sure to what affect these help encoding and if the tests are optimized for these instructions or not, but it was a thought I had.

    The other thought I had with regards to disk performance was differences in drivers due to kernel version differences between Arch and Ubuntu, but it seems they are both running the same versions of the kernel (barring any additional patches they have back-ported).

    As ssvb says, it is probably due to compiler/configuration differences (my guess is the big difference comes from enabling thumb mode on Ubuntu).

  6. #6
    Join Date
    Jul 2009
    Posts
    14

    Default

    I'd be interested in running one of these as a MythTV frontend.

    Do they run the NVidia binary driver and do they support vdpau or something similar that would making watching TV and 1080p/i a worthwhile exercise?

  7. #7
    Join Date
    May 2011
    Posts
    353

    Default

    There's a seperate Linux driver for Tegra hardware, downloadable from nVidia's website.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •