AMD Ryzen 5000 Series (Zen 3) Linux Expectations - Should Be Good But No "Znver3" Compiler Yet

Written by Michael Larabel in AMD on 8 October 2020 at 11:00 AM EDT. 18 Comments
AMD
Today perhaps will be the most interesting day since the start of the pandemic... It's finally the day where AMD Zen 3 desktop CPUs are expected to be revealed in just about one hour's time! Stay tuned, but before that virtual event, here is a word on the Linux prospects and support for these upcoming AMD CPUs.

Long story short, barring any issues like we've seen in the past around flakey RdRand or other problems, the AMD Zen 3 desktop CPU support under Linux should be in fine shape. On prior kernels we've seen new IDs added and other bits around Family 19h like preparing for larger microcode files. Especially with no new chipsets expected for this initial Zen 3 launch, I don't foresee many (or any?) Linux support issues at launch. But not everything is squared away quite yet.

Linux 5.10 will bring Zen 3 CPU temperature monitoring. Linux 5.10 won't be out as stable until year's end so if you are really concerned about CPU temperature monitoring support that will be coming late albeit at least this time it was contributed by AMD engineers ahead of launch rather than left up to the community and only tackled post-launch. There is also the RAPL PowerCap patches for Zen 3 that haven't yet been queued for introduction to mainline for power monitoring/control support. But in terms of core functionality that should all be in place with features like power and thermal monitoring again being tardy for Linux.

The one unfortunate area that isn't yet addressed for the Zen 3 support is on the compiler side. AMD has yet to provide any public patches for bringing up Zen 3 with the new znver3 target for the GCC or LLVM Clang compilers. That has yet to be published as presumably they don't want to reveal all their new instruction set extensions ahead of launch, even though Intel often reveals this many months or years ahead of time in wanting to ensure good GCC/Clang compiler support at launch and in released versions. Intel has already been hitting the compilers with Alder Lake, Sapphire Rapids, and other bits for forthcoming CPUs - their punctual open-source software support for years is much appreciated by early adopters. Even if AMD posts the compiler patches today for the znver3 target, it won't appear until GCC 11 in March~April in released form or until LLVM Clang 12 also around the March timeframe next year. And then for Linux distributions like Ubuntu it won't be shipping with GCC 11 until Ubuntu 21.10 this time next year.

The lack of Znver3 support in advance to line up with the major open-source compiler releases is unfortunate although AMD presumably will have out their LLVM/Clang-based AMD Optimizing C/C++ Compiler (AOCC) around the time these new CPUs ship. We do know PCID and other new extensions may be coming with Zen 3. A tuned scheduler model is also ideal in ensuring optimal binaries for Zen 3.

Granted, the lack of a Znver3 compiler target for GCC/Clang isn't an issue for gamers or most other desktop users for that matter, but still for Linux users often compiling their own packages from source and tinkering with their trying to obtain optimal open-source performance, it's too bad Znver3 support isn't yet out there. Hopefully AMD gets their Znver3 compiler code out there soon and no issues getting the support merged for those early 2021 compiler releases.

But at least the rest of the Ryzen 5000 series / Zen 3 Linux support will hopefully be in good standing for launch -- of course, once the CPUs begin to ship there will be plenty of Linux benchmarks and coverage on Phoronix.

Continue on now to our AMD Ryzen 5000 series launch coverage.
Related News
About The Author
Michael Larabel

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 20,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, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week