Software Linux Reviews & Articles
There have been 904 Linux hardware reviews and benchmark articles on Phoronix for software. Separately, check out our news section for related product news.
There have been 904 Linux hardware reviews and benchmark articles on Phoronix for software. Separately, check out our news section for related product news.
For today's benchmarking is a look at how the GNU Compiler Collection has performed over the past few years going from the GCC 8 stable series introduced in 2018 through the recently released GCC 11.1 stable feature release plus also including the current early development snapshot of GCC 12.
Earlier this month were benchmarks looking at GCC 11 performance with varying optimization levels and features like link-time optimizations. Stemming from reader requests, here are now similar reference benchmarks off LLVM Clang 12.0 on the same system with going from -O0 to -Ofast and toggling -march=native and LTO usage.
Given the recent forum discussion stemming from the -O3 optimization level still too unsafe for the Linux kernel (in part due to older, buggy compilers) and some users wondering about the current -O2 versus -O3 compiler optimization level impact, here is a fresh round of reference benchmarks using GCC 11.1 on Fedora Workstation 33 looking at various optimization levels and optimizations tested on dozens of different application benchmarks to see the overall impact on performance.
As part of the curiosity-driven benchmarks and areas of technical interest now that we've gotten some of our initial Intel Xeon Platinum 8380 "Ice Lake" benchmarks out of the way has been looking into the performance of Linux's P-State CPU frequency scaling driver on the 3rd Gen Xeon Scalable server. Benchmarked for the latesting testing was the power/efficiency out-of-the-box with P-State powersave as used by default with many Linux distributions against the P-State "performance" mode as well as putting P-State into passive mode to be able to via intel_cpufreq to try the Schedutil governor that relies on the kernel's scheduler utilization data for making frequency scaling decisions. Here is a number of power/performance governor benchmarks with the dual Xeon Platinum 8380 server in these varying kernel configurations.
Recently we have been running a number of compiler benchmarks looking at the recently released LLVM Clang 12 and GCC 11 open-source code compilers. There is as healthy and competitive competition as ever between GCC and Clang with the mainline Linux kernel these days working well under Clang, more software projects shifting to Clang by default, and the performance being as tight as ever between GCC and Clang for compiled C/C++ code on x86_64 and AArch64. In today's article are benchmarks of Clang 12 vs. GCC 11 on the dual Intel Xeon Platinum 8380 Ice Lake server.
Earlier this week I posted some benchmarks looking at the compiler performance of GCC 11 vs. LLVM Clang 12 on the Intel Core i9 11900K "Rocket Lake" processor while in this article the same tests and same software are being carried out on an AMD Ryzen 9 5950X "Zen 3" desktop. With these AMD Linux tests the Clang 12 compiler not only yielded the fastest binaries at -O2 but carried through in the more optimized configurations as well.
For those wondering how GCC and LLVM Clang are competing when running on Intel's latest Rocket Lake processors, here are some GCC 11 vs. LLVM Clang 12 compiler benchmarks with the Core i9 11900K running from the newly-released Fedora Workstation 34 featuring these very latest compilers. The compiler benchmarks were carried out at multiple optimization levels on each compiler.
Following the two week merge window, feature development on the Linux 5.13 kernel is slated to end today with the release of Linux 5.13-rc1. Here is a look at some of the most interesting new features and improvements for this kernel that in turn should debut as stable around the end of June.
For those wondering how the recent releases of the GCC 11 and LLVM 12 (Clang 12) open-source compilers are competing on AMD Zen 3, here are some recently conducted benchmarks looking at that showdown on an AMD EPYC 7763 1P server.
Released last week was the LuxCoreRender 2.5 open-source physically based renderer. Significant with this v2.5 update is OptiX/RTX acceleration support in addition to its existing CUDA, OpenCL, and CPU render paths. Given that, here are some fresh benchmarks of LuxCoreRender 2.5 across an assortment of NVIDIA graphics cards.
Here is a look at the AVX / AVX2 / AVX-512 performance on the Intel Core i9 11900K "Rocket Lake" when building a set of relevant open-source benchmarks limited to AVX, AVX2, and AVX-512 caps each time while also monitoring the CPU package power consumption during the tests for looking at the performance-per-Watt in providing some fresh reference metrics over AVX-512 on Linux with the latest Intel "Rocket Lake" processors.
This past week AMD published a security analysis of AMD Zen 3's new Predictive Store Forwarding (PSF) functionality. In there they did acknowledge there is the possibility where bad PSF functionality could lead to a side-channel attack albeit the real-world exposure would be quite low. In any case they are allowing interested users to disable the Predictive Store Forwarding functionality, but what they didn't comment on in that paper was what performance overhead to expect if disabling PSF. So my Easter weekend turned into AMD Zen 3 PSF benchmarking.
For those wondering about the state of speculative execution vulnerabilities and what software-based mitigations are required for Intel's new Rocket Lake processors, here is the rundown along with benchmarks when disabling those present Linux kernel mitigations.
Launched last week with the AMD EPYC 7003 "Milan" processors was the AOCC 3.0 code compiler as AMD's downstream of LLVM Clang with various patches now catering to optimized for Zen 3. Last week some preliminary benchmarks of AOCC 3.0 on the Ryzen 9 5950X were carried out to good results. Since then I have begun putting AOCC 3.0 through its paces on a AMD EPYC 7003 series server to overall great results.
This week alongside the EPYC 7003 series launch was the introduction of AOCC 3.0 as AMD's Zen-optimized LLVM/Clang downstream. We have started putting this updated compiler through its paces to see what it means for AMD Zen 3 performance.
With GCC 11 stable likely to be released next month, here is the latest in our compiler testing against the current GCC 10 stable release. This round of tests was carried out on a System76 Thelio Major with Ryzen Threadripper 3990X HEDT processor.
The Linux 5.12 merge window was off to a rough start due to winter storms preventing Linus Torvalds from merging changes for nearly one week, but in any case he appears to have caught up and the Linux 5.12-rc1 kernel is expected later today to end out the merge window. Here is a look at the many exciting changes coming for Linux 5.12.
After recently looking at the early LLVM Clang 12 compiler performance on the AMD Ryzen 9 5950X, in today's benchmarking is a look at how the GCC 11 compiler performance is looking in its near final state compared to GCC 10 under a variety of build CFLAGS/CXXFLAGS configurations on the AMD Zen 3 desktop.
With LLVM 12 due for release next month and GCC 11 not being far behind, it's the season for fresh compiler benchmarks. In today's article is a look at the AMD Ryzen 9 5950X (Zen 3) compiler performance between LLVM Clang 11.1 against the current LLVM Clang 12.0 Git development code in its feature-frozen state.
Now with the CPUFreq fix landing this week in Linux Git, the mainline Linux 5.11 kernel in its near final state is looking in very good shape for AMD Zen 2/3 hardware from Ryzen laptops and desktops through EPYC servers. The Linux 5.11 development kernel was regressed for the better part of the past two months but now that the frequency invariance regression is addressed, not only is the regression gone but generally is performing much better compared to prior kernel versions.
For those following the saga of the AMD frequency invariance regression on Linux 5.11 since the Christmas investigative benchmarking looking at the performance regressions, everything now looks like it will be buttoned up in time for the Linux 5.11 stable release. As noted yesterday, there was a curve ball this week in that the patch proposed by SUSE's Giovanni Gherdovich in January to address the frequency invariance regression was turned down by the Linux power management maintainer and instead he (Rafael Wysocki of Intel) proposed an alternative patch that instead modified the CPUFreq driver. Given it's getting late into the cycle, it's been a mad rush of re-conducting benchmarks on this new kernel patch and now it looks like that solution will be sent in the coming days for Linux 5.11.
With a pending patch, the Linux 5.11 AMD Zen 2 / Zen 3 performance is looking very good as far as the out-of-the-box performance is concerned when using Schedutil as is becoming the increasingly default CPU frequency scaling governor on more distributions / default kernels. With the previously noted Linux 5.11 regression addressed from when the AMD CPU frequency invariance support was first introduced, the Schedutil performance from small Ryzen systems up through big EPYC hardware is looking quite good. But how much upside is left in relation to the optimal CPU frequency scaling performance with the "performance" governor? Here is a look at those benchmarks on Ryzen and EPYC for Schedutil vs. Performance on a patched Linux 5.11 kernel.
While the initial AMD Linux 5.11 performance regression written about at the end of last year was of much concern given the performance hits to AMD Zen 2 / Zen 3 processors with the out-of-the-box "Schedutil" governor, with a pending patch the regression is not only addressed but in various workloads we continue seeing better performance than even compared to Linux 5.10. Here is the latest from several more days of extensive performance testing.
Following last month's initial benchmarks of the AMD "znver3" support that landed in the GCC 11 compiler was a request by a premium supporter to see the AMD Zen 3 benchmarks at more compiler optimizations. Well, here are those numbers for those wanting to pursue aggressive compiler optimizations on a shiny AMD Ryzen 9 5950X.
With this week marking three years since Spectre and Meltdown were made public in ushering in a wave of CPU security disclosures that followed and mitigations that often resulted in measurable performance hits, here is a look at how the performance costs stand today with various new and older Intel CPUs as well as AMD processors too. This article is looking at the current performance costs under Linux with the default mitigations and then the run-time disabling of the relevant mitigations for each of the processors under test while using an up-to-date Ubuntu 20.10 paired with the new Linux 5.10 LTS kernel.
Phoronix Test Suite 10.2 is available today as the latest quarterly (Q1-2021) feature update to our open-source automated benchmarking framework for Linux, macOS, Solaris, Windows, and BSD platforms.
Back on Christmas I wrote about Linux 5.11 regressing for AMD performance on Zen 2 and newer systems where the just-added CPU frequency invariance support was often hurting various workloads when using the default "Schedutil" scheduler utilization frequency scaling governor. Since then and through the holidays I have been carrying out many more benchmarks looking at the Linux 5.11 performance with a particular focus on the AMD desktop/server platforms.
There are many new features with the Linux 5.11 kernel that is presently under development but one of the ones I've been more curious about for how well it works is the Intel "workload hints" that can be passed via its thermal framework. This is about providing the system with hints of workloads being run to optimize the thermal/power properties.
The Linux 5.11 merge window has been open the past two weeks following the debut of Linux 5.10 but is set to close today. A lot of new features and exciting improvements were merged for Linux 5.11 although it is somewhat of a bumpy ride at the moment but should be buttoned up and ready for its stable release come February.
It's not the Grinch in 2020 that stole Christmas, but the Schedutil CPU frequency scaling governor on the in-development Linux 5.11 kernel that is thrashing performance for AMD Zen 2 and newer. Distributions like Ubuntu, Fedora, and Manjaro are beginning to use CPUFreq Schedutil by default on newer kernels and thus leading to a very bad initial/out-of-the-box experience with the current behavior on the early Linux 5.11 code.
904 software articles published on Phoronix.