Skylake AVX-512 Benchmarks With GCC 8.0
For those curious about the current benefits of AVX-512, here are some benchmarks using a recent snapshot of the GCC 8 compiler and comparing the performance of the generated binaries for the skylake and skylake-avx512 targets.
AVX-512 right now is limited to just the Intel server and X-Series processors, but as we've reported already, Intel has effectively confirmed AVX-512 support for the Cannonlake desktop CPU line-up through GCC/Clang patches noting the AVX-512 addition. So due to greater AVX-512 availability on the horizon and continued AVX-512 improvements in GCC8, I ran some fresh benchmarks using the high-end Core i9 7980XE test system running Ubuntu Linux.
GCC 8.0.0 was built from Git on 25 November and with the i9-7980XE, the benchmarks were run after built with the "-O3 -march=skylake" and then the "-O3 -march=skylake-avx512" compiler flags. Over the conventional Skylake target, the -march=skylake-avx512 adds AVX512F, AVX512VL, AVX512BW, AVX512DQ, and AVX512CD.
Further and a wider range of GCC 8 (and Clang 6) compiler benchmarks on more hardware will be coming soon while this can be treated as just a quick AVX-512 testing roundabout.
There are some minor improvements to note when targeting skylake-avx512, but there were also a couple of slowdowns:
All these test details and more data is available from this OpenBenchmarking.org result file.
AVX-512 right now is limited to just the Intel server and X-Series processors, but as we've reported already, Intel has effectively confirmed AVX-512 support for the Cannonlake desktop CPU line-up through GCC/Clang patches noting the AVX-512 addition. So due to greater AVX-512 availability on the horizon and continued AVX-512 improvements in GCC8, I ran some fresh benchmarks using the high-end Core i9 7980XE test system running Ubuntu Linux.
GCC 8.0.0 was built from Git on 25 November and with the i9-7980XE, the benchmarks were run after built with the "-O3 -march=skylake" and then the "-O3 -march=skylake-avx512" compiler flags. Over the conventional Skylake target, the -march=skylake-avx512 adds AVX512F, AVX512VL, AVX512BW, AVX512DQ, and AVX512CD.
Further and a wider range of GCC 8 (and Clang 6) compiler benchmarks on more hardware will be coming soon while this can be treated as just a quick AVX-512 testing roundabout.
There are some minor improvements to note when targeting skylake-avx512, but there were also a couple of slowdowns:
All these test details and more data is available from this OpenBenchmarking.org result file.
27 Comments