- Edited
A recent change to glibc in this week's sync allowed AMD Ryzen processors to use the AVX2 (haswell) optimized libs in /usr/lib64/haswell
across the system.
So far this has only been tested on zen2 (Ryzen 3000) with results being good. A technical difference in the architecture of zen1 /1+ means that they may not receive the same benefit as the zen2 CPUs.
To test:
Verify you are using the haswell libs: run
ldd /usr/bin/id
and verify that/usr/lib64/haswell/libc.so
is being loaded (as opposed to/usr/lib64/libc.so
).Install the phoronix-test-suite (
sudo eopkg it phoronix-test-suite
) and run the glibc and R benchmarks. Make sure R is installed if you don't use it (sudo eopkg it r
).
phoronix-test-suite run-test pts/glibc-bench
phoronix-test-suite run-test pts/rbenchmark
- Install an old version of glibc which does not allow use of the optimized AVX2 libs on Ryzen processors and run the glibc and R benchmarks again.
sudo eopkg it https://packages.getsol.us/shannon/g/glibc/glibc-2.29-59-1-x86_64.eopkg
- Upload the results to openbenchmarking.org and link the results here. Reinstall glibc when you are done (
sudo eopkg it --reinstall glibc
). sin/cos/sincos/log2 should see the biggest uplift in glibc and R should hopefully see a decent uplift from using the haswell optimized openblas.
The most important thing is to verify that performance is not being regressed on these zen1 CPUs.