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.org

Initial Benchmarks Of The LLVM/Clang 3.3 Compiler

Compiler

Published on 19 February 2013 01:06 AM EST
Written by Michael Larabel in Compiler
Comment On This Article

While LLVM and Clang (and related LLVM projects) remain in heavy development for the 3.3 cycle, up today are some initial compiler benchmarks of LLVM/Clang 3.3 SVN compared to the current stable release.

Motivated in part by the loop vectorizer improvements that have already been committed to the SVN code-base, I ran some early LLVM/Clang 3.2 vs. 3.3 SVN benchmarks as of Monday morning (18 February). Testing happened from an AMD FX-8350 "Bulldozer2" (Vishera) system running Ubuntu 13.04 with the Linux 3.8 kernel.

Aside from the loop vectorizer enhancements, LLVM 3.3 will also feature the AMD R600 GPU back-end and the AMD 64-bit AArch64 back-end for future ARM Cortex processors coming in the future. There's also improvements to the x86 and ARM cost models, reworked attributes classes, and much more.

With it still being some months before the next LLVM 3.3 release, more changes and new features will surely pile in along with enhancements to the Clang C/C++ front-end. The benchmarks being shared today are just some very early, primitive benchmarks for whetting the appetites of those interested in compiler performance.

Results in full for some initial LLVM 3.3 loop vectorizer benchmarks when toggling the -fno-vectorize and -fvectorize compiler flags can be found within the 1302189-FO-LLVM33VEC37 result file on OpenBenchmarking.org. The result file also has all of the software/hardware details, logs, and other information for interested readers. This AMD FX-8350 system was also tested with the -fslp-vectorize compiler flag for also enabling the basic block vectorizer within LLVM.

The LLVM vectorizers on the SVN code as of Monday have only small performance benefits to the HMMer real-world scientific workload. For LLVM 3.3 it's expected that the loop vectorizer will be enabled by default.

For not all workloads will the vectorizers obviously be of benefit. For more details on what the LLVM vectorizers are capable of, read the LLVM.org documentation on the current vectorizers.

The LLVM Loop Vectorizer led to a small performance regression within Himeno.

When applying LLVM vectorizers, obviously the compile-time increases.

Uploaded separately within the 1302186-FO-LLVM33FIR21 result file are more LLVM/Clang 3.3 compiler benchmarks. Within that result file are all of the details when comparing the LLVM/Clang 3.2 stable performance to the LLVM/Clang 3.3 SVN state as of yesterday. The testing happened from the same AMD FX-8350 system running Ubuntu Linux.

More LLVM/Clang 3.3 benchmarks will come as the official release approaches in the coming months. If you are interested in more open-source compiler benchmarks until then, check out the recent PathScale EKOPath 5.0 Beta Compiler Performance and Benchmarking The New Optimization Level In GCC 4.8 articles.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. Trying The Configurable 45 Watt TDP With AMD's A10-7800 / A6-7400K
  2. Sumo's Omni Gets Reloaded
  3. AMD A10-7800 & A6-7400K APUs Run Great On Linux
  4. Radeon Gallium3D Is Running Increasingly Well Against AMD's Catalyst Driver
Latest Linux Articles
  1. Intel Sandy Bridge Gets A Surprise Boost From Linux 3.17
  2. Open-Source Radeon Graphics Have Some Improvements On Linux 3.17
  3. CPUFreq Scaling Tests With AMD's Kaveri On Linux 3.16
  4. Enabling HyperZ Is Still An Easy Way For Faster RadeonSI Performance
Latest Linux News
  1. NVIDIA Releases CUDA 6.5 As A Huge Update
  2. GNOME 3.14 Beta Makes GLSL Optional, Supports Wayland Gesture/Touch Events
  3. KDE Software Compilation 4.14 Released
  4. The Many Things You Can Build With A Raspberry Pi
  5. AMD's Catalyst Linux Driver Preparing For A World Without An X Server?
  6. Khronos Publishes Its Slides About OpenGL-Next
  7. Proposed: A Tainted Performance State For The Linux Kernel
  8. Systemd 216 Piles On More Features, Aims For New User-Space VT
  9. LXQt 0.8 Is Being Released Soon
  10. Linux 3.17 Lands Memfd, A KDBUS Prerequisite
Latest Forum Discussions
  1. Remote gui not accessible in Phoronix Test Suite 5.2
  2. The dangers of Linux kernel development
  3. Dead Island for Linux (?)
  4. Updated and Optimized Ubuntu Free Graphics Drivers
  5. AMD Offers Mantle For OpenGL-Next, Pushes Mantle To Workstations
  6. Next-Gen OpenGL To Be Announced Next Month
  7. OpenGL 4.5 Released With New Features
  8. Updated graphics drivers for Ubuntu 12.04 Precise LTS