AMD Working With GNU Developers To Provide More Robust Runtime Detection For Better Performance
Back in March we reported how AMD developers were looking at GNU C Library platform optimizations for Zen and in part could be leveraging some of the capabilities currently employed by Intel for Haswell and newer. It's looking like some solid progress is being made in that direction.
The patches from AMD in March provided better run-time detection for CPU features like AVX2 and could allow making use of more optimized code-paths at run-time when run on such hardware, similar to Intel Glibc optimizations for Haswell and newer. This would be a big win not only for AMD Zen but also current Zen 2 CPUs and future Zen 3 parts, etc in basically providing more reasonable optimized code-paths at run-time for prominent CPU instruction set extensions.
Issues were pointed out in the early AMD proposed code, but it looks like AMD engineers are better communicating with the GNU toolchain folks and a solution could be coming.
Florian Weimer of Red Hat commented back in February that this bug report over AMD EPYC/Zen CPUs should default to the Haswell platform directory as a better default has a new comment. While in February was the comment by Weimer that he was blocked until getting feedback from AMD, at the end of April he added:
Finally! Let's hope this will be settled soon for seeing greater AMD performance on Linux with greater AVX2, delivering even greater performance than what AMD's desktop and server CPUs have already been delivering out-of-the-box on Linux.
The patches from AMD in March provided better run-time detection for CPU features like AVX2 and could allow making use of more optimized code-paths at run-time when run on such hardware, similar to Intel Glibc optimizations for Haswell and newer. This would be a big win not only for AMD Zen but also current Zen 2 CPUs and future Zen 3 parts, etc in basically providing more reasonable optimized code-paths at run-time for prominent CPU instruction set extensions.
Issues were pointed out in the early AMD proposed code, but it looks like AMD engineers are better communicating with the GNU toolchain folks and a solution could be coming.
Florian Weimer of Red Hat commented back in February that this bug report over AMD EPYC/Zen CPUs should default to the Haswell platform directory as a better default has a new comment. While in February was the comment by Weimer that he was blocked until getting feedback from AMD, at the end of April he added:
I'm happy to report that I've been in contact with the right people at AMD for a while.
I do not know yet what the exact outcome will be (if the “haswell” directory will be used), but there will be a way to automatically load AVX2-optimized libraries on AMD CPUs as well.
Finally! Let's hope this will be settled soon for seeing greater AMD performance on Linux with greater AVX2, delivering even greater performance than what AMD's desktop and server CPUs have already been delivering out-of-the-box on Linux.
16 Comments