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

Optimized Binaries Provide Great Benefits For Intel Haswell

Michael Larabel

Published on 15 June 2013
Written by Michael Larabel
Page 1 of 4 - 9 Comments

Utilizing the core-avx2 CPU optimizations offered by the GCC 4.8 compiler can provide real benefits for the Intel Core i7 4770K processor and other new "Haswell" CPUs. For some computational workloads, the new Haswell instruction set extensions can offer tremendous speed-ups compared to what's offered by the previous-generation Ivy Bridge CPUs.

With our source-based benchmarks to date of Haswell, we have been using the -march=native compiler flag that effectively means -march=core-avx2 but we haven't looked specifically at the benefits provided by Haswell CPUs introducing support for AVX2, FMA, BMI, and BMI2. This is also particularly interesting since on the Windows side, most of the benchmarking that happens at the other review sites is done using generic pre-compiled binaries rather than building from source with optimizations for a given architecture.

For those unfamiliar with the GCC x86/x86_64 optimization options, read the online GCC documentation. The new core-avx2 option means "Intel Core CPU with 64-bit extensions, MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI, BMI2 and F16C instruction set support."

The other tested options were Nocona (the old Xeons), Core2 (the original Intel Core CPUs with SSE3 support), Corei7 (Ironlake), Corei7-avx (Sandy Bridge), and Core-avx-i (Ivy Bridge). Again, the GCC documentation explains what instruction sets are offered by each of these different Intel CPU models.

Results in full are on OpenBenchmarking.org in 1306150-PTS-INTELHAS05. The Core i7 4770K Haswell system was running Ubuntu 13.04 with the Linux 3.10 development kernel and GCC 4.8.1 was built from source. The various compiler options were set via the CFLAGS and CXXFLAGS environment variables along with passing -O3 for the most aggressive compiler optimizations.

Latest Articles & Reviews
  1. Khronos Group Announces Vulkan, OpenCL 2.1, SPIR-V
  2. Samsung 850 EVO SSD Linux Benchmarks
  3. Kubuntu 15.04 Is Turning Out Quite Nice, Good Way To Try Out The Latest KDE
  4. 5-Way Linux Distribution Comparison On The Core i3 NUC
  5. OCZ ARC 100 Linux SSD Benchmarks
  6. Lenovo ThinkPad X1 Carbon Works Great As A Linux Ultrabook
Latest Linux News
  1. PC-BSD 10.1.2 To Add Tor Mode, LibreSSL & Other Features
  2. Valve Launches SteamOS Sale, Confirms A Lot Of New Linux Games
  3. Ubuntu Cloud Switches Over To Using Systemd By Default
  4. System76 Introduces The Broadwell-Powered, Ubuntu-Loaded "Meerkat"
  5. Xfce 4.12 Might Make It For Fedora 22
  6. Pictures Of The Near Production Ready Ubuntu Tablet
  7. OpenVG Support Stripped From Gallium3D
  8. Mozilla Is Getting Excited About WebGL 2
  9. ZOTAC Announces Steam Machine SN970, Powered By SteamOS
  10. Allwinner Continues Violating The LGPL
Most Viewed News This Week
  1. More Proof That Allwinner Is Violating The GPL
  2. The Tremendous Features Of Fedora 22
  3. Krita 2.9 Released, Their Biggest Release Ever
  4. Confirmed: Vulkan Is The Next-Gen Graphics API
  5. A Single UEFI Executable With The Linux Kernel, Initrd & Command Line
  6. Xfce 4.12 Released After Nearly Three Years Of Work
  7. 8cc: A Small C11 Compiler
  8. LLVM 3.6 & Clang 3.6 Deliver More Features, Complete C++14 Support