LLVM/Clang On The ARMv7 OMAP4 PandaBoard ES

Written by Michael Larabel in Software on 29 December 2011. Page 1 of 3. 6 Comments

Here's a quick look at running the LLVM/Clang compiler on the OMAP4460-based PandaBoard ES compared to the default GCC compiler.

After running the OMAP4 PandaBoard ES benchmarks earlier in the week I carried out some basic LLVM/Clang vs. GCC compiler benchmarks from this dual-core ARM Cortex-A9 board. The tests were quite simple as there were issues in getting LLVM/Clang 3.0 building on the board and so the LLVM/Clang 2.9 packages were used from the Ubuntu 11.10 ARM repository. GCC 4.6.1 was also obtained from the Ubuntu Oneiric repository, so this is just a matter of comparing the default ARM compiler options under Ubuntu 11.10.

Clang ARMv7 OMAP4 PandaBoard ES, OMAP4 PandaBoard ES On Ubuntu ARM

More in-depth compiler benchmarks will come later on. As you can see from these initial results, at least with the default compiler parameters on ARMv7, the LLVM/Clang performance in this configuration is a mess.

I've also been in contact with Texas Instruments and Linaro now about the PandaBoard ES. It turns out that Ubuntu 11.10 isn't exactly good for the PandaBoard ES. The Linux 3.0 kernel doesn't have full DVFS and thermal management support for the OMAP4660, so it's cpufreq selection may be limited. So in general the PandaBoard ES performance might be upped (for both compilers) on Ubuntu 12.04 LTS and other newer releases. So stay tuned for more tests but on the following pages are the LLVM/Clang 2.9 vs. GCC 4.6.1 compiler tests using the standard flags for both.

Related Articles