Software Linux Reviews & Articles
There have been 872 Linux hardware reviews and benchmark articles on Phoronix for software. Separately, check out our news section for related product news.
There have been 872 Linux hardware reviews and benchmark articles on Phoronix for software. Separately, check out our news section for related product news.
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.
Released on Sunday was Linux 6.1 and in addition to having many new features making it all the more exciting is that it's expected to be this year's Long-Term Support (LTS) kernel release. As such it will see widespread adoption particularly among servers and much interest from the hyperscalers. For those weighing an upgrade from last year's Linux 5.15 LTS kernel, Linux 6.1 with initial testing on an AMD EPYC Milan-X 2P server has shown a nice speed bump is possible across a wide-range of workloads.
A recurring question that has come up by readers since the recent launch of the Intel 13th Gen Core "Raptor Lake" processors has been whether it's still worthwhile running with the "mitigations=off" Linux kernel option to disable software-controlled CPU security mitigations to increase performance. For production systems that is never recommended due to the security risk, but for those wondering, here is a brief look at the mitigation situation on Raptor Lake with the flagship Core i9 13900K.
Back during the summer once Asahi Linux introduced initial Apple M2 SoC support I ran many Apple M2 Linux benchmarks including a look at how the M2 competes with AMD and Intel laptop processors. With months having passed since then and the Apple M1/M2 Linux support has continued to advance upstream as well as more work hitting the Asahi Linux tree, here is a fresh look at where the performance of the M2 is currently at compared to that initial at-launch support.
For those of you upgrading to an Intel 13th Gen Core "Raptor Lake" system this holiday season, here are some benchmarks looking at how the varying kernel versions affect the Core i9 13900K flagship performance. Testing started using the Linux 5.15 LTS kernel shipped by Ubuntu 22.04 LTS currently and ends with the Linux 6.1 Git snapshot of that kernel nearing its official release and what is expected to be this year's LTS kernel version.
Last week when launching the AMD EPYC 9004 "Genoa" processors, AMD released AOCC 4.0 as the newest version of their optimizing C/C++ compiler that now supports their Zen 4 micro-architecture. Last week I ran some initial AOCC 4.0 benchmarks and this LLVM/Clang downstream was looking rather favorable in relation to upstream LLVM/Clang, while since then I've been able to conduct more thorough benchmarks across a wide variety of C/C++ open-source workloads. Here is that more extensive round of AOCC 4.0 benchmarking against the open-source LLVM/Clang and AOCC compilers.
On Thursday when launching AMD 4th Gen EPYC Genoa processors, AMD also published AOCC 4.0 as the newest version of the AMD Optimizing C/C++ Compiler. I've been putting it through its paces the past day and continues showing the positive performance impact of proper compiler tuning.
While this summer I ran some early Python 3.11 benchmarks using the development state at the time, given yesterday's Python 3.11 release I ran some fresh performance tests of the official Python 3.11 version against prior Python 3 releases.
AMD, Google, Microsoft, and NVIDIA have used this week's OCP Global Summit to announce Caliptra as their open specification for a silicon Root-of-Trust (ROT) to be found with future CPUs / SoCs, GPUs, NICs, SSDs, and other hardware components.
Now that Linux 6.1-rc1 was released, here is my look at all of the interesting kernel changes and new features that landed over the past two weeks. Linux 6.1 is shaping up to be another exciting kernel with many new software features, new hardware enablement work, and other changes for this end-of-year 2022 kernel version that is also likely to be the next Linux LTS release.
For those wondering the difference using the aging ACPI CPUFreq driver or the newer AMD P-State CPU frequency scaling drivers make for modern Ryzen 7000 "Zen 4" desktops, here are some CPUFreq/P-State driver tests using the Ryzen 9 7950X as well as testing the various governor options and looking at the impact on the CPU power consumption, peak frequency, and thermals too.
Last week at Intel's Innovation conference the Intel Developer Cloud "DevCloud" was announced, while on the AMD side there is already something similar: the AMD Cloud Platform. At the tail end of 2021, AMD announced the Accelerator Cloud as a way for trying out the latest EPYC CPUs and Instinct accelerators complete with a pre-configured ROCm compute software stack. The AMD Cloud Platform is a currently parallel effort to the Accelerator Cloud with the former intended more for developers while the latter is more customer-oriented. After trying out the AMD Cloud Platform, it's indeed an easy way to evaluate the latest AMD data center wares while having a easy-to-deploy, pre-configured software environment.
Last week I shared some initial numbers how surprisingly when disabling Zen 4 CPU security mitigations can actually *hurt* the Ryzen 7000 series CPU performance. While conventional wisdom and with past Intel/AMD processors yield better performance when disabling the CPU security mitigations, with the Ryzen 9 7950X it was found to be basically the opposite. I have since conducted more tests and using an AMD Ryzen 5 7600X to confirm the earlier results and dig deeper into the data.
Before getting busy with the AMD Ryzen 7000 "Zen 4" desktop testing, I recently wrapped up some benchmarks looking at the ACPI CPUFreq vs. AMD P-State frequency scaling drivers and various governor options for the AMD Ryzen 6000 "Rembrandt" mobile SoCs. If you are curious about the impact of CPUFreq/P-State and the various governors for the latest AMD laptops running Linux, this round of testing is for you.
872 software articles published on Phoronix.