A Look At How The AMD EPYC Linux Performance Has Evolved Over The Past Year
Written by Michael Larabel in Processors on 11 June 2018. Page 1 of 1. 13 Comments

This month marks one year since AMD returned to delivering high-performance server CPUs with the debut of their EPYC 7000 series processor line-up. It's been a triumphant period for AMD with the successes over the past year of their EPYC family. Over the past year, the Linux support has continued to improve with several EPYC/Zen CPU optimizations, ongoing Zen compiler tuning, CPU temperature monitoring support within the k10temp driver, and general improvements to the Linux kernel that have also helped out EPYC. In this article is a comparison of a "2017" Linux software stack as was common last year to the performance now possible if using the bleeding-edge software components. These Linux benchmarks were done with the EPYC 7351P, 7401P, and 7601 processors.

This comparison boiled down to testing these three EPYC processors with a software stack from 2017 to what's now possible if employing the very latest key software components on the same system. The software stacks included:

2017: Ubuntu 16.04.4 LTS server edition, which by default is on the Linux 4.4 kernel, GCC 5.4 compiler, EXT4 file-system, and the other stock components of Ubuntu Server 16.04 with that being the latest LTS release as of last year.

2018: Ubuntu 18.04 LTS server edition but with having upgraded to the Linux 4.17 kernel and GCC 8.1 for offering the very latest kernel and compiler, given the ongoing Zen tuning that has taken place.

With both software stacks, the CFLAGS/CXXFLAGS set during the test build and execution process were "-O3 -march=native" for tuning the binaries for this EPYC platform. The other software settings, etc were maintained the same in their stock form on Ubuntu Server.

The same hardware was used throughout testing. The EPYC 7351P/7401P/7601 processors were tested on the Tyan 2U B8026T70AE24HR using the latest V1.02.B10 BIOS. The Tyan B8026T70AE24HR has been our primary EPYC test platform over the past year of EPYC benchmarking and it continues working out extremely well. The Tyan server was loaded with 128GB of DDR4 memory and 280GB Intel Optane 900p NVMe SSD.

This testing is quite straight-forward so let's get right to these numbers for seeing the AMD EPYC performance differences as a result of the latest Linux code over the past year. All of the benchmarking was facilitated via the Phoronix Test Suite.

First up was the NAS Parallel Benchmarks' embarrassingly parallel synthetic test. The flagship EPYC 7601 processor was 6% faster with the latest Linux software and similar gains as well on the two smaller EPYC processors.

The Parboil OpenMP scientific workloads were faster in some tests while in other cases were roughly the same as the Ubuntu 16.04.4 stack.

The Java Gradle Build performance was about 7% faster with the latest software stack all while OpenJDK 8 was the version that was deployed on both versions of Ubuntu.

The TTSIOD 3D renderer saw significant gains as well with the latest software advances over the past year. The EPYC 7601 processor came in at 9% faster while the EPYC 7351P was about 7% and the EPYC 7401P saw the most significant difference at 14%.

The 7-Zip compression benchmark came in slightly faster with the newer software stack.

While the Stockfish and asmFish chess engine benchmarks were of the few cases where using the 2018 Linux/open-source components were a tiny bit slower.

The ebizzy benchmark that tries to model server workload performance saw huge improvements with the latest code, though keep in mind the test itself is synthetic and doesn't directly map to a given web server program.

While using newer versions of the GCC code compiler tend to be slower due to new optimization passes and features being added, code compilation performance turned out being slightly faster with the latest 2018 stack that encompasses GCC 8.1.

The C-Ray multi-threaded ray-tracer was also favoring the latest Linux software components.

As was PBZIP2 performance also being better off on the latest Linux code.

Primesieve meanwhile was another case of the performance moving slightly in the wrong direction.

The M-Queens OpenMP performance was leaning in favor of the Linux software components from this year.

The OpenSSL performance meanwhile hasn't budged.

The Blender 3D modeling software renderer's performance also went unchanged.

The PyBench Python performance has improved nicely over the past year.

Lastly, PostgreSQL saw some nice wins with the latest software stack too. The EPYC 7601 was about 13% faster with the latest software components.

In some workloads the AMD EPYC Linux performance was the same or in a few cases slightly lower, but in many benchmarks it was nice to see a few percent better performance when making use of the latest Linux software components that incorporate continued Zen znver1 compiler optimizations, ongoing kernel improvements, etc. In several cases -- including some real-world workloads -- the latest software stack tacked onto Ubuntu 18.04 LTS had yielded around a 10% performance improvement over Ubuntu 16.04.4 LTS.

It's important to keep in mind though that it will take some time before these latest "2018" Linux packages work their way into the various enterprise Linux distributions that are generally used by workstations/servers. Ubuntu 18.04 LTS contains a bulk of the improvements while with Ubuntu 18.04.2 in several months to come will offer a hardware enablement kernel option for the ~4.18 kernel that will ship in Ubuntu 18.10. But Ubuntu 18.04 LTS won't receive any official GCC 8 compiler support, though there is the gcc-snapshot package that can be installed. Likewise, on the RHEL/CentOS side will be the Red Hat Enterprise Linux 8 release.

About The Author
Author picture

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter or contacted via MichaelLarabel.com.

Related Articles
Trending Linux News