The Wayback Machine - https://web.archive.org/web/20230320155924/https://www.phoronix.com/reviews/Software

Software Linux Reviews & Articles

There have been 862 Linux hardware reviews and benchmark articles on Phoronix for software. Separately, check out our news section for related product news.

Embree 4.0 Is Running Well On Intel 4th Gen Xeon Scalable "Sapphire Rapids"
Embree 4.0 Is Running Well On Intel 4th Gen Xeon Scalable "Sapphire Rapids"

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.

10 February 2023 - 8 Comments
Linux Schedutil Governor's Quirky Behavior Persists In 2023
Linux Schedutil Governor's Quirky Behavior Persists In 2023

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.

9 February 2023 - 26 Comments
Linux Developers Evaluating New "DOITM" Security Mitigation For Latest Intel CPUs
Linux Developers Evaluating New "DOITM" Security Mitigation For Latest Intel CPUs

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.

27 January 2023 - 34 Comments
AMD 4th Gen EPYC "Genoa" To Enjoy Slightly Better Performance With Linux 6.3
AMD 4th Gen EPYC "Genoa" To Enjoy Slightly Better Performance With Linux 6.3

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.

24 January 2023 - 4 Comments
Linux 6.3 To Squeeze A Bit More Performance Out Of AMD Zen 4 CPUs
Linux 6.3 To Squeeze A Bit More Performance Out Of AMD Zen 4 CPUs

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.

19 January 2023 - 4 Comments
Linux 6.2's Call Depth Tracking Helps Recover Lost Performance On Intel Skylake CPUs
Linux 6.2's Call Depth Tracking Helps Recover Lost Performance On Intel Skylake CPUs

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.

28 December 2022 - 21 Comments
AOCC 4.0 Shows The Strong Advantages Of Compiler Optimizations With 4th Gen AMD EPYC CPUs
AOCC 4.0 Shows The Strong Advantages Of Compiler Optimizations With 4th Gen AMD EPYC CPUs

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.

16 December 2022 - 14 Comments
Upgrading Linux 5.15 LTS To Linux 6.1 Can Yield Additional Performance For AMD EPYC "Milan" Servers
Upgrading Linux 5.15 LTS To Linux 6.1 Can Yield Additional Performance For AMD EPYC "Milan" Servers

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.

13 December 2022 - 5 Comments
Intel Raptor Lake Mitigation Impact Performance Comparison
Intel Raptor Lake Mitigation Impact Performance Comparison

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.

7 December 2022 - 2 Comments
A Fresh Look At The Asahi Linux Performance On Apple's M2
A Fresh Look At The Asahi Linux Performance On Apple's M2

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.

5 December 2022 - 13 Comments
The Intel Core i9 13900K "Raptor Lake" Performance From Linux 5.15 To Linux 6.1
The Intel Core i9 13900K "Raptor Lake" Performance From Linux 5.15 To Linux 6.1

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.

28 November 2022 - 11 Comments
AMD AOCC 4.0 vs. GCC vs. LLVM Clang Compiler Benchmarks On Zen 4
AMD AOCC 4.0 vs. GCC vs. LLVM Clang Compiler Benchmarks On Zen 4

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.

18 November 2022 - 10 Comments
AMD AOCC 4.0 Arrives For Squeezing More Performance Out Of Zen 4
AMD AOCC 4.0 Arrives For Squeezing More Performance Out Of Zen 4

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.

10 November 2022 - 21 Comments
Linux 6.1 Features Include Initial Rust Code, MGLRU, New AMD CPU Features, More Security
Linux 6.1 Features Include Initial Rust Code, MGLRU, New AMD CPU Features, More Security

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.

17 October 2022 - 11 Comments
AMD Ryzen 9 7950X P-State/CPUFreq Frequency Scaling Performance On Linux
AMD Ryzen 9 7950X P-State/CPUFreq Frequency Scaling Performance On Linux

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.

10 October 2022 - 24 Comments
AMD Cloud Platform Makes It Easy To Try Out AMD's Latest CPUs, Accelerators & ROCm Software
AMD Cloud Platform Makes It Easy To Try Out AMD's Latest CPUs, Accelerators & ROCm Software

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.

6 October 2022 - 8 Comments
Disabling Spectre V2 Mitigations Is What Can Impair AMD Ryzen 7000 Series Performance
Disabling Spectre V2 Mitigations Is What Can Impair AMD Ryzen 7000 Series Performance

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.

4 October 2022 - 43 Comments
AMD Rembrandt CPUFreq vs. AMD P-State Linux Testing
AMD Rembrandt CPUFreq vs. AMD P-State Linux Testing

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.

3 October 2022 - 18 Comments
Blender 3.3 AMD Radeon HIP vs. NVIDIA CUDA/OptiX Performance
Blender 3.3 AMD Radeon HIP vs. NVIDIA CUDA/OptiX Performance

Earlier this month Blender 3.3 released and in addition to introducing an Intel oneAPI back-end, it's notable for bringing improvements to the AMD HIP back-end for Radeon GPUs. Significant on the AMD side is extending GPU support back to GFX9/Vega. Thus it's a good time for a fresh round of benchmarking for showing how the AMD Radeon HIP performance against that of NVIDIA's existing CUDA and OptiX back-ends.

22 September 2022 - 28 Comments
Following Retbleed, The Combined CPU Security Mitigation Impact For AMD Zen 2 / Ryzen 9 3950X
Following Retbleed, The Combined CPU Security Mitigation Impact For AMD Zen 2 / Ryzen 9 3950X

Following the July disclosure of the Retbleed CPU security vulnerability affecting older processors and an AMD change made in August, here is a fresh look at the performance impact of the Retbleed mitigations on Linux, including if opting for the IBPB-based Retbleed mitigation, and the accumulated CPU security mitigation impact for Zen 2 with the flagship Ryzen 9 3950X processor.

6 September 2022 - 36 Comments
GCC vs. LLVM Clang Compilers For The Apple M2 On Linux
GCC vs. LLVM Clang Compilers For The Apple M2 On Linux

With the Apple M2 running Asahi Linux you may be wondering whether it's better to use the GCC compiler as is the default on upstream Arch Linux or whether going for LLVM Clang will yield better performance given all the LLVM/Clang usage by AArch64 vendors, including Apple's own Xcode compiler toolchain making use of it. If you are wondering about GCC vs. Clang for building binaries on the Apple M2, here are some benchmarks.

1 September 2022 - 12 Comments
AMD Ryzen 7 PRO 6850U: ACPI Platform Profile Low-Power vs. Balanced vs. Performance
AMD Ryzen 7 PRO 6850U: ACPI Platform Profile Low-Power vs. Balanced vs. Performance

As with many new Intel/AMD laptops these days, the recently launched Lenovo ThinkPad X13 Gen3 with AMD Ryzen 7 PRO 6850U "Rembrandt" SoC boasts ACPI Platform Profile support that is exposed under Linux for switching between low-power, balanced (default), and performance modes. For those curious about this ACPI Platform Profile impact, here are some benchmarks from this 6850U laptop under Ubuntu Linux and its impact on power and thermal efficiency too.

5 August 2022 - 12 Comments
Retbleed Impact, Overall CPU Security Mitigation Cost For Intel Xeon E3 v5 Skylake
Retbleed Impact, Overall CPU Security Mitigation Cost For Intel Xeon E3 v5 Skylake

Since the disclosure of Retbleed earlier this month as the newest CPU security vulnerability around speculative execution, I've posted some Intel/AMD benchmarks looking at the mitigation cost for the affected older generations of processors. Last week I also looked at the accumulated CPU mitigation cost on AMD Zen 1. Today is a similar comparison over on the Intel Xeon E3 v5 "Skylake" side with looking at the cost of just the Retbleed mitigations and then the overall CPU mitigation cost when toggling all of the various vulnerabilities with the "mitigations=off" flag.

28 July 2022 - 39 Comments
AMD Zen 1 Linux Performance Hit From Retbleed, Accumulated CPU Mitigation Impact
AMD Zen 1 Linux Performance Hit From Retbleed, Accumulated CPU Mitigation Impact

Last week I posted my initial benchmarks for the Linux impact of mitigating Retbleed as the newest CPU speculative execution vulnerability. As noted in the prior Retbleed articles, on the AMD side it's Zen 1/1+/2 processors affected as well as older Bulldozer CPUs. That earlier article included Zen 2 benchmarks while in this article are Zen 1 tests given its situation is slightly different.

20 July 2022 - 39 Comments
GCC 12 Compiler Optimization Tuning With The AMD Ryzen Threadripper 3990X
GCC 12 Compiler Optimization Tuning With The AMD Ryzen Threadripper 3990X

Following the recent discussions about -O3'ing the Linux kernel and other compiler optimizations, a request came in to see some fresh GCC compiler optimization benchmarks with the recently released GCC 12. So here is a fresh look at various GCC optimization levels up through -Ofast as well as with link-time optimizations (LTO) and "-march=native" tuning on the new GCC 12 with the mature AMD Ryzen Threadripper 3990X platform.

19 July 2022 - 16 Comments
An Important Note On The Alder Lake Mobile Power/Performance With Linux 5.19
An Important Note On The Alder Lake Mobile Power/Performance With Linux 5.19

After dealing with the Intel Alder Lake P GuC firmware breakage around Linux 5.19 Git that is now to be addressed by the upstream Intel developers, it was on to performance testing the shiny new Core i7 1280P with this kernel due to be released as stable within the next two weeks... For those concerned about maximum performance, there was a glaring performance regression for this Alder Lake P on the new kernel being released as stable later this month. Well, a default change in performance/behavior at least but the power efficiency / performance-per-Watt tended to be better on this new kernel.

18 July 2022 - 25 Comments
Benchmarking The Linux Mitigated Performance For Retbleed: It's Painful
Benchmarking The Linux Mitigated Performance For Retbleed: It's Painful

Yesterday Retbleed was made public as a new speculative execution attack exploiting return instructions. While the "good" news is Retbleed only impacts prior generations of AMD and Intel processors, the bad news is the mitigated performance impact on Linux is quite severe. Since yesterday I have been benchmarking the newly-merged Linux patches on various Intel and AMD processors affected by Retbleed. It's very bad if you are on an affected processor.

13 July 2022 - 74 Comments

862 software articles published on Phoronix.