1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking Benchmarking Platform
Phoromatic Test Orchestration

Benchmarking LLVM & Clang Against GCC 4.5

Michael Larabel

Published on 21 April 2010
Written by Michael Larabel
Page 1 of 6 - 17 Comments

With the recent release of GCC 4.5 and the forthcoming release of LLVM 2.7 that is expected in the coming days, we have decided to see how the performance of GCC compares to that of LLVM. For this testing we have results from GCC 4.3/4.4/4.5 compared to LLVM with its GCC front-end (LLVM-GCC) and against Clang, which is the native C/C++ compiler front-end for the Low-Level Virtual Machine.

Beyond being used in unique ways such as by the Mono project and Gallium3D to optimize GPU shaders and provide a viable software rasterizer for Linux, the Low-Level Virtual Machine (LLVM) compiler infrastructure continues to gain interest among developers as a viable alternative to the GNU Compiler Collection. LLVM/Clang is gaining traction on FreeBSD, OpenBSD, and among Linux developers. GCC continues to be criticized for its large and old code-base that can be buggy, slow, and generating poor code.

Clang is the compiler front-end that uses LLVM behind it and provides support for C, C++, and Objective-C. The LLVM developers consider Clang as being production ready (and was tagged "Clang 1.0") for its C support with the release of LLVM 2.6 last year, but it is still under constant development. It was two months ago that LLVM's Clang was finally self-hosting in that it could properly build itself. LLVM 2.7 is due out on the 25th of April and it has much more work to Clang (it will be released as Clang 1.1) since the 2.6 release some months back. On the software side was an Ubuntu 10.04 LTS snapshot with the Linux 2.6.32 kernel.

Besides Clang there is LLVM-GCC, which is a modified version of GCC that provides a LLVM C front-end and guts out much of GCC. In September of last year we did publish GCC vs. LLVM-GCC benchmarks atop Mac OS X. With these older tests, it was found that LLVM-GCC was not quite as fast as GCC alone.

Today's testing takes our GCC 4.3.0/4.4.0/4.5.0 benchmarks from earlier this week and adds in LLVM-GCC and LLVM Clang 2.7 SVN results. Originally, we had built LLVM from source using a Subversion snapshot over the weekend, but there were some issues with it so we reverted to using the LLVM/Clang packages supplied in the Ubuntu Lucid repository. These packages include an LLVM 2.7 SVN snapshot from 2010-04-09, an LLVM 2.7 GCC 4.2 snapshot from 2010-03-17 and Clang from 2010-03-17. We were using 64-bit software in all of our testing.

Again the test system we used was a Lenovo ThinkPad T61 notebook with an Intel Core 2 Duo T9300 "Penryn" processor clocked at 2.50GHz, 4GB of DDR3 system memory, a 100GB Hitachi HTS72201 SATA HDD, and a NVIDIA Quadro NVS 140M graphics processor. We used effectively the same set of tests in our earlier GCC benchmarking, except there are a few tests that were removed either due to build issues under LLVM-GCC or LLVM-Clang or the test not being written in C/C++. The tests included measuring the compilation times of Apache, PHP, and ImageMagick. The tests we used to look at the generated binary performance were Apache, 7-Zip, LAME, Gcrypt, C-Ray, BYTE, GraphicsMagick, Himeno, John The Ripper, and HMMer. This testing was driven by the Phoronix Test Suite.

Latest Linux News
  1. LLVM 3.7 Is Planned For A Late August Release
  2. The OpenGL ES 3.1 Foundation Is Being Laid In Mesa
  3. There Are 140k Benchmark Results So Far On LinuxBenchmarking.com
  4. LLVM 3.6.1 Brings R600 & MIPS Fixes
  5. Friction Building Around An Ubuntu Community Council Decision
  6. Bye Bye Mandriva, She's Being Liquidated
  7. Fedora 22 Is Now Available
  8. Red Hat Has Another Developer Now Working On Nouveau
  9. Scribus 1.5 Released, Ported To Qt 5 With Big UI Overhaul Coming
  10. Mesa May Soon Enable OpenGL ES 1.x/2.x By Default
Latest Articles & Reviews
  1. Opening The Gates To Our Daily Open-Source Linux Benchmark Results
  2. The Latest Features For Linux Performance Management + Benchmark Monitoring
  3. Noctua NH-U12DX i4 + NF-F12
  4. Btrfs RAID 0/1 Benchmarks On The Linux 4.1 Kernel
Most Viewed News This Week
  1. The Linux 4.0 EXT4 RAID Corruption Bug Has Been Uncovered
  2. NVIDIA's Proprietary Driver Is Moving Closer With Kernel Mode-Setting
  3. Microsoft Open-Sources The Windows Communication Foundation
  4. Systemd 220 Has Finally Been Released
  5. Zapcc Claims To Be A "Much Faster C++ Compiler"
  6. LibreOffice 5.0 Beta 1 Released
  7. Another HTTPS Vulnerability Rattles The Internet
  8. LibreOffice 5.0 Open-Source Office Suite Has Been Branched