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

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 Linux News
  1. Zapcc Claims To Be A "Much Faster C++ Compiler"
  2. Godot 1.1 Engine Release Brings New 2D Engine
  3. Intel VA-API Driver 1.6 Is Coming
  4. Canonical Is Reportedly Considering An IPO
  5. GNOME 3.18 - GTK3 Now Supports RandR 1.5
  6. Fedora 22 Risks Being Delayed Beyond Next Week
  7. Systemd 220 Has Finally Been Released
  8. LibreOffice 5.0 Beta 1 Released
  9. Allwinner Publishes New CedarX Open-Source Code
  10. ACPI 6 Non-Volatile Memory Device Support / NFIT / LIBND For Linux
  11. Fedora 22 Marches Closer To Release
  12. The Linux 4.0 EXT4 RAID Corruption Bug Has Been Uncovered
Latest Articles & Reviews
  1. Btrfs RAID 0/1 Benchmarks On The Linux 4.1 Kernel
  2. The State Of Various Firefox Features
  3. Intel Iris Graphics Performance With Mesa 10.6
  4. Fedora Workstation 22 Is Looking Great, Running Fantastic
Most Viewed News This Week
  1. The Linux 4.0 Kernel Currently Has An EXT4 Corruption Issue
  2. Rust 1.0 Language Officially Released
  3. AMDGPU Open-Source Driver Code Continues Maturing
  4. Oculus Rift Suspends Linux Development To Focus On Windows
  5. Wine 1.7.43 Works On Desktop Shell Window Support
  6. Spec Ops: The Line Is The Latest Linux Shooter
  7. RadeonSI Gallium3D Driver To Be Enabled For Android
  8. Microsoft Open-Sources The Windows Communication Foundation