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

FX-8350 Piledriver Tuning On AMD's Open64 Compiler

Michael Larabel

Published on 24 October 2012
Written by Michael Larabel
Page 1 of 4 - 1 Comment

With this week's unveiling of the FX-8350 eight-core processor being based on AMD's new Piledriver architecture, in this article are benchmarks when testing out the Piledriver "bdver2" optimizations within AMD's own Open64 compiler.

Back in August was when AMD released the AMD Open64 4.5.2 compiler, which introduced support for Family 15h Piledriver cores. With the Piledriver support came work within AMD's Open64 compiler fork for handling AVX, XOP, FMA3, FMA4, BMI, TBM, and F16C instruction sets.

From the features list for the Open64 4.5.2 release, "You can enable this new instructions in Piledriver core using the -march=bdver2. Alternately you can pick and choose the ISA to be enabled using -mfma (for FMA3), -mfma4, -mbmi, -mtbm flags." The "bdver2" target is the same as is used by GCC and LLVM/Clang for supporting the second-generation Bulldozer -- a.k.a. Piledriver -- AMD processors.

Earlier this month I did do some GCC compiler tuning tests for the Piledriver-based AMD A10-5800K Trinity APU. With the GCC testing of comparing the bdver2 micro-architecture support against bdver1 and other earlier AMD CPU targets, there wasn't much improvement out of using "-march=bdver2" when compiling the test application / benchmark binaries.

In the GCC Piledriver tuning tests from last week with GCC 4.7.2 I went over what the bdver2 target adds: BMI, TBM, F16C, and FMA3. FMA3 is a three operand variant (that's being pushed by Intel with Haswell) of Fused Multiply-Add rather than the four operand version, F16C allows for converting and storing 32-bit floating point values using 16-bits, TBM is Trailing Bit Manipulation, and BMI is Bit Manipulation Instructions.

From the AMD FX-8350 Eight-Core "Vishera" setup running Ubuntu 12.10 with the Linux 3.5 kernel, AMD's official 64-bit Open64 4.5.2 compiler was tested. Each time this compiler built the Phoronix Test Suite collection of tests while passing each time a different "-march=" value of k8, barcelona, bdver1, and then bdver2.

Latest Linux News
  1. Fedora 22 Is Being Released Next Tuesday
  2. OpenWRT 15.05 Preparing Improved Security & Better Networking
  3. Using The New LLVM/Clang OpenMP Support
  4. Zapcc Claims To Be A "Much Faster C++ Compiler"
  5. Godot 1.1 Engine Release Brings New 2D Engine
  6. Intel VA-API Driver 1.6 Is Coming
  7. Canonical Is Reportedly Considering An IPO
  8. GNOME 3.18 - GTK3 Now Supports RandR 1.5
  9. Fedora 22 Risks Being Delayed Beyond Next Week
  10. Systemd 220 Has Finally Been Released
  11. LibreOffice 5.0 Beta 1 Released
  12. Allwinner Publishes New CedarX Open-Source Code
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. Microsoft Open-Sources The Windows Communication Foundation
  8. RadeonSI Gallium3D Driver To Be Enabled For Android