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. A Walkthrough Of The New 32 System Open-Source Linux Benchmarking Test Farm
  2. Habey MITX-6771: Mini-ITX Board With Quad-Core J1900 Bay Trail
  3. OCZ Vector 150 SSD On Linux
  4. Noctua i4 CPU Cooler: Great For Cooling High-End LGA-2011v3 CPUs
Latest Linux Articles
  1. AMD Kaveri: Open-Source Radeon Gallium3D vs. Catalyst 14.12 Omega Driver
  2. 12-Way AMD Catalyst 14.12 vs. NVIDIA 346 Series Linux GPU Comparison
  3. AMD Catalyst 14.12 Omega Driver Brings Mixed Results For Linux Users
  4. 6-Way Winter 2014 Linux Distribution Comparison
Latest Linux News
  1. FSF's High Priority Project List Now Has A Committee
  2. Details On Using OpenACC & GPUs With GCC
  3. Ubuntu 15.04 Alpha 1 For Its Various Flavors
  4. Git 2.2.1 Released To Fix Critical Security Issue
  5. WTFTW: A Tiling Window Manager Written In Rust
  6. Jolla's Sailfish OS Update 10 Is Now Available
  7. HP To Launch Linux++ Operating System Next Year
  8. Civilization: Beyond Earth Launches For Linux
  9. NIR Has Been Revised As A New IR For Mesa
  10. New 64-bit Linux Kernel Vulnerabilities Disclosed This Week
Latest Forum Discussions
  1. Debian init discussion in Phoenix Wright format
  2. The New SuperTuxKart Looks Better, But Can Cause GPU/Driver Problems
  3. XLennart: A Game For Systemd Haters With Nothing Better To Do
  4. Bench specific mount point
  5. Tool for measuring FPS in games
  6. Need some hand holding with upgrading xserver
  7. Ubuntu Developers Still Thinking What To Do About Adobe Flash Support
  8. Microsoft buying Mojang