Software Linux Reviews & Articles
There have been 885 Linux hardware reviews and benchmark articles on Phoronix for software. Separately, check out our news section for related product news.
There have been 885 Linux hardware reviews and benchmark articles on Phoronix for software. Separately, check out our news section for related product news.
Last month the Downfall CPU security vulnerability was disclosed that impacts various AVX/AVX-512 workloads. Now that there's been a few weeks for the Linux kernel code to settle around the mitigation and the latest Intel CPU microcode becoming more broadly available, here is a fresh look at the performance impact of the Downfall mitigation on affected AVX workloads.
With the new Linux 6.5 kernel stable series one of the many new features is defaulting to the AMD P-State driver with the EPP/active mode compared to the long-used default of the ACPI CPUFreq driver. As shown in various Phoronix articles this can help with the mobile/desktop performance with this new default change while this article is looking at the Ryzen for server benefits too.
As a continuation of last week's article looking at Linux 6.6 bringing some impressive gains for AMD EPYC Bergamo, over the past few days I've also tested Linux 6.5 stable and Linux 6.6 Git on Genoa and Genoa-X processors as well as Intel Xeon Scalable "Sapphire Rapids" in looking at this next kernel version's performance. The Sapphire Rapids performance was largely flat while for an interesting class of workloads the Linux 6.6 performance drives the AMD EPYC server performance much higher.
Here's a surprise announcement I was briefed on last week and now made public by the Linux Foundation and Intel... The Linux Foundation is forming the Unified Acceleration (UXL) Foundation that is an evolution of Intel's oneAPI initiative and has the potential to make the compute accelerator ecosystem as a whole more open and unified across vendors.
From my early testing thus far of the Linux 6.6 kernel in its very early state, some of the most impressive gains are happening on AMD's high core count server processors, the EPYC 9754 "Bergamo" in particular is enjoying some stellar improvements for various server workloads on this forthcoming kernel.
While catching up on my Linux kernel benchmarking across different systems the Intel Core i9 13900K "Raptor Lake" desktop performance has been particularly volatile. Linux 6.5 is running slower for the Core i9 13900K compared to Linux 6.4 for a number of different workloads. Buckle up for a wild ride but the good news is a stable fix is forthcoming.
With the Linux 6.6 merge window over, here's a look at the most interesting new features, hardware support, and other changes to find with this kernel that will debut as stable around the end of October.
With the recently released Linux 6.5 kernel bringing AMD P-State EPP by default for modern Ryzen systems rather than the generic ACPI CPUFreq driver, running Linux 6.5 (or newer) in various workloads can lead to improved performance and/or power efficiency. Curious about the impact on the mobile side, I recently carried out some benchmarks of the ASUS ROG Ally gaming handheld with AMD Ryzen Z1 Extreme SoC from Linux 6.3, 6.4, 6.5, and 6.6 Git kernels.
The Linux 6.5 kernel is expected to be released as stable this weekend barring any last minute issues from being raised. One of the notable changes with this new kernel version is Linux now defaulting to the AMD P-State "EPP" active driver configuration for modern Ryzen systems rather than the long-used generic ACPI CPUFreq driver default. In some cases this can mean better performance but particularly should yield a nice improvement to the power efficiency of Ryzen Zen 2 and newer platforms, especially laptops and other portable Linux systems like the Steam Deck and ROG Ally. I am working on some fresh AMD Ryzen Linux laptop comparison benchmarks but for this article is a look at Linux 6.5 on the desktop side with the AMD Ryzen 9 7950X.
Over the past month I've been delivering a number of Linux laptop tests with the AMD Ryzen 7 7840U for that Zen 4 "Phoenix" SoC within an Acer Swift Edge 16. One of the requests that has come up with my ongoing testing has been how well the default Microsoft Windows 11 installation compares to loading up Linux on this 8-core AMD Zen 4 laptop. Well, in this article is a look at the Linux performance compared to Windows 11, including when making use of the Linux 6.5 development kernel where AMD P-State is now the default and also for seeing what workloads are impacted by the recent AMD Inception vulnerability.
Last week the AMD Inception vulnerability was made public as a speculative side channel attack affecting Zen processors and different mitigation options based on the CPU generation. There wasn't too much communication around the performance implications of mitigating Inception while over the past week I have begun benchmarking the software and microcode updates on Ryzen and EPYC processors.
With yesterday's disclosure of the Intel Downfall speculative execution vulnerability and the updated CPU microcode and Linux kernel patches I have been very busy testing the performance impact of this mitigation. Here are some initial numbers and workloads I have found to be impacted as a result of this security mitigation for Skylake to Icelake/Tigerlake client and server processors.
Now that the Linux 6.5 merge window ended this past weekend, here is the usual Phoronix overview that lists all the prominent new features and changes coming for this next version.
With the recent stable releases of LLVM's Clang 16 and GCC 13 compilers there is now initial AMD Zen 4 "znver4" support in these open-source compilers. Curious about the performance difference between these two compilers on the very newest AMD 4th Gen EPYC "Genoa" server processors, I ran some LLVM Clang 16.0 and GCC 13.1 benchmarks on the flagship EPYC 9654 2P Linux server.
For those wondering how the recent releases of the Clang 16 and GCC 13 are competing for the fastest generated binaries of these leading open-source compilers, here is a fresh round of benchmarks from an Intel Core i9 13900K "Raptor Lake" system looking at the performance for a variety of C/C++ workloads built under each of these compilers.
With Linux 6.4-rc1 released, here is my original overview of all the interesting changes coming for the Linux 6.4 kernel that will be released as stable at the end of June or in early July.
Recently I noticed out-of-the-box on Ubuntu Linux the performance of Intel Xeon Scalable "Sapphire Rapids" processors was much improved for some workloads compared to tests done just weeks ago on the same Sapphire Rapids server. It ended up being an issue coming full-circle and ultimately boils down to one line of code added within the Linux kernel.
With Linux 6.3 there is the new AMD P-State EPP driver code for supporting the ACPI Energy Performance Preference (EPP) to further enhance the power efficiency and performance of modern AMD systems on Linux. Last week I ran some benchmarks of AMD EPYC with the new AMD P-State EPP mode while in today's article is a look at the laptop impact with Ryzen Mobile when comparing ACPI CPUFreq, the existing AMD P-State driver, and the new AMD P-State EPP mode and its multiple different preferences.
Last month I wrote about Intel's Linux kernel engineering improvements to help enhance CPU scaling across various workloads by addressing low-level bottlenecks within the kernel. It's an area we'll likely see Intel continue to invest in as Sierra Forest comes next year with 144 E cores per socket. Already with the Linux kernel patches Intel is carrying at the moment via their in-house distribution, there are some significant benefits for Xeon Scalable Sapphire Rapids. I was curious to see how this Intel-focused work impacted AMD EPYC servers and thus in today's article is a similar analysis using two AMD EPYC 9654 "Genoa" flagship processors while evaluating Intel's Linux kernel optimizations.
Among the many new features coming in Linux 6.3 -- including many AMD additions -- is the AMD P-State EPP "Energy Performance Preference" support being merged for modern Ryzen and EPYC systems. AMD P-State EPP can further help tune the performance and power efficiency of AMD Linux systems beyond the existing basic AMD P-State driver support and address some existing deficiencies. Here are some benchmarks of the AMD P-State and ACPI CPUFreq driver configurations benchmarked on an EPYC Milan-X server with the in-development Linux 6.3 kernel.
Earlier this month I wrote about Intel engineers working on more big optimizations to the Linux kernel with a focus on enhancing the kernel's performance at high core counts. The numbers shared then were very promising and since then I've had more time looking at the performance impact of Intel's stellar software optimization work and its impact on real-world workloads. Here is a look at how Intel's pending kernel optimization patches are a huge deal for today's high core count servers.
Now that the Linux 6.3 merge window is over with Linux 6.3-rc1 having been released last night, here is a look at all of the interesting changes, new features, and hardware support coming with this next major kernel version.
This week Intel released Embree 4.0 as the newest version of their open-source, high performance ray-tracing library. While the headline feature is now having support for GPU acceleration with SYCL to take advantage of Arc Graphics and other GPU hardware with SYCL support, for those that have long been using Embree on CPUs its performance has also improved. Here are some initial CPU-based benchmarks I did this week on Embree 4.0 with Intel's new 4th Gen Xeon Scalable "Sapphire Rapids" processors.
Earlier this week I posted benchmarks looking at how the AMD Ryzen Threadripper 3990X performance has evolved in the three years to the day since that 64-core / 128-thread HEDT chip launched. While overall the Threadripper 3990X performance has evolved nicely under Linux since 2020, when it came to the video encoding tests in particular they performed worse overall. As I had raised in that earlier article and now elaborated with some follow-up tests, that regression is driven by the default "schedutil" frequency scaling governor used by default.
Last summer Intel published guidance around the Data Operand Independent Timing (DOIT) instruction mode that can be enabled with recent generations of Intel processors to ensure constant time execution for a subset of the Intel instruction set, which can be particularly important for cryptographic algorithms. Linux kernel developer discussions fizzled out last year over handling this DOIT functionality for what is described as a CPU vulnerability with recent Intel CPUs. However, now a Linux kernel patch from a Google developer would enable this change unconditionally for newer Intel CPUs but raises performance concerns.
Expected to be squared away in time for the Linux 6.3 kernel cycle, which is kicking off in February, is Automatic IBRS as a new feature of Zen 4 processors. The patches already have been queued up into TIP's x86/cpu branch so barring any issues will be all wired up for this next kernel version. Automatic IBRS can provide better performance than the Retpolines implementation used currently on Zen 4 and prior CPUs as part of the Spectre V2 mitigations. With the switch over to Automatic IBRS for Zen 4, it means better performance in some areas as shown by these benchmarks today with AMD 4th Gen EPYC "Genoa" processors.
As I wrote about earlier this week, Linux 6.3 is positioned to support AMD Zen 4's Automatic IBRS feature. AMD's Linux enablement code around Automatic IBRS has been undergoing review the past few months and now via TIP's x96/cpu Git branch is to be sent in next month for the Linux 6.3 merge window. I've run some preliminary benchmarks of the Automatic IBRS support on Zen 4 and it's looking positive for further enhancing the performance of AMD's new Ryzen 7000 series and EPYC 9004 series processors.
When the Retbleed security vulnerability was introduced earlier this year mitigating it for Intel Skylake and Skylake-derived CPU cores required imposing Indirect Branch Restricted Speculation (IBRS) that further tanked the out-of-the-box performance for these aging Intel CPUs. But being introduced now with Linux 6.2 is a new mitigation technique named Call Depth Tracking that is helping recover some of that lost performance and in turn extending the usefulness of the Skylake-derived processors still in service.
Now that the merge window for Linux 6.2 is over, here is a look at all the prominent features on deck for the Linux 6.2 kernel that will be released as stable in about eight weeks.
Last month when AMD launched the EPYC 9004 "Genoa" series they also published AOCC 4.0 as the newest version of the AMD Optimizing C/C++ Compiler derived from LLVM/Clang and tailored to their latest Zen microarchitecture. At the time I ran some AOCC 4.0 benchmarks on the Ryzen 7000 series and compared it to GCC and Clang. Since then I've had the time on my Genoa test rig to look at how well AOCC 4.0 is performing and in this article are some benchmarks with the EPYC 9374F processors between GCC and AOCC 4.0.
885 software articles published on Phoronix.