Software Archives
GCC vs. LLVM Clang vs. AOCC Compiler Benchmarks On The AMD EPYC 7742

While AMD's hardware folks were launching the EPYC 7002 series, their software crew was pushing out the AMD Optimizing C/C++ Compiler 2.0 with support/optimizations for the Zen 2 micro-architecture. Using the top-end AMD EPYC 7742 in a 2P Linux server configuration, here are C/C++ compiler benchmarks looking at the performance when built by the GNU Compiler Collection (GCC), LLVM Clang, and AOCC 2.0.

9 August 2019 - 15 Comments
Initial Benchmarks Of The Spectre "SWAPGS" Mitigation Performance Impact

Yesterday the SWAPGS vulnerability was made public as a new variant of Spectre V1 that affects all operating systems and is believed to affect only Intel CPUs. The SWAPGS discovery by Bitdefender was quietly mitigated by Microsoft for Windows 10 last month while yesterday the patches were posted for the mainline Linux kernel as the Grand Schemozzle. As soon as learning of this SWAPGS vulnerability and seeing the kernel code, I began running some preliminary performance tests to look at the impact of this latest CPU mitigation.

7 August 2019 - 22 Comments
AMD Zen 2 Performance Looking Even Better With GCC 10

While this year's GCC 9 compiler release brought initial support for AMD Zen 2 processors with the Znver2 target, the support was sadly incomplete. While the GCC 9 support added some of the new instructions, it wasn't complete (such as RDPRU support remains missing) and the cost tables and scheduler model were not updated from Znver1 to account for the microarchitectural changes. Thankfully, SUSE's compiler experts recently fixed up this support for the GCC 10 compiler and more recently were able to get it back-ported for the upcoming GCC 9.2 for the Linux distributions that will upgrade to that point release. Here are some benchmarks looking at the performance impact of that updated AMD Zen 2 compiler code.

2 August 2019 - 23 Comments
GCC vs. Clang Compiler Benchmarks On POWER9 With Raptor's Blackbird

While for Intel x86_64 with the latest compilers it's a very competitive race between LLVM Clang and GCC, how is that battle playing out on the IBM POWER9 front? Using the interesting Raptor Blackbird with IBM POWER9 4-core / 16-thread CPU, here are some recent benchmarks I did between GCC 9, GCC 10, and LLVM Clang 8.

23 July 2019 - 6 Comments
The New Features & Improvements Of The Linux 5.3 Kernel

The Linux 5.3 kernel merge window is expected to close today so here is our usual recap of all the changes that made it into the mainline tree over the past two weeks. There is a lot of changes to be excited about from Radeon RX 5700 Navi support to various CPU improvements and ongoing performance work to supporting newer Apple MacBook laptops and Intel Speed Select Technology enablement.

21 July 2019 - 6 Comments
Firefox 69 Beta On Linux Bringing Better Performance

With the recent release of Mozilla Firefox 68 there are some nice WebRender performance improvements that Linux users can enjoy. But with Firefox 69 now in beta there is even better performance, including when enabling WebRender on Linux.

16 July 2019 - 27 Comments
The Performance Impact To AMD Zen 2 Compiler Tuning On GCC 9 + Znver2

One of the areas that I always have "fun" benchmarking for new CPU launches is looking at the compiler performance. Following the recent Ryzen 3000 series launch I carried out some initial benchmarks looking at the current Zen 2 performance using the newest GCC 9 stable series with its "znver2" optimizations. Here is a look at how the Znver2 optimizations work out when running some benchmarks on the optimized binaries with a Ryzen 9 3900X running Ubuntu 18.04 LTS.

11 July 2019 - 36 Comments
Intel Xeon Cascade Lake Compiler Performance - GCC 9/10 vs. LLVM Clang 8/9

At least for the newest Intel Xeon "Cascade Lake" processors, the LLVM Clang compiler is running incredibly well compared to the long-standing GNU Compiler Collection (GCC). Overall, LLVM clang is now nearly at performance parity to GCC 9 and the in-development GCC 10 compilers. Here are some Linux compiler benchmarks using the dual Intel Xeon Platinum 8280 server built around the Gigabyte S3461-3R0.

27 June 2019 - 16 Comments
Benchmarking The Intel Performance Change With Linux FSGSBASE Support

As covered last week, the Linux kernel is finally about to see FSGSBASE support a feature supported by Intel CPUs going back to Ivybridge and can help performance. Since that earlier article the FS/GS BASE patches have been moved to the x86/cpu branch meaning unless any last-minute problems arise the functionality will be merged for the Linux 5.3 cycle. I've also begun running some benchmarks to see how this will change the Linux performance on Intel hardware.

24 June 2019 - 17 Comments
Chrome 75 vs. Firefox 67 / 68 Beta Linux Performance

With last week's release of Chrome 75 I have now wrapped up some benchmarks seeing how the performance of the updated Google web-browser compares to that of the current Firefox 67 stable release as well as Firefox 68 beta, including with WebRender activated. Here are those latest Linux web browser benchmarks.

10 June 2019 - 77 Comments
Benchmarking AMD FX vs. Intel Sandy/Ivy Bridge CPUs Following Spectre, Meltdown, L1TF, Zombieload

Now with MDS / Zombieload being public and seeing a 8~10% performance hit in the affected workloads as a result of the new mitigations to these Microarchitectural Data Sampling vulnerabilities, what's the overall performance look like now if going back to the days of AMD FX Vishera and Intel Sandybridge/Ivybridge processors? If Spectre, Meltdown, L1TF/Foreshadow, and now Zombieload had come to light years ago would it have shaken that pivotal point in the industry? Here are benchmarks looking at the the performance today with and without the mitigations to the known CPU vulnerabilities to date.

24 May 2019 - 48 Comments
Firefox 68 Performance Is Looking Good With WebRender On Linux

With Firefox 67 having released this week, Firefox 68 is in beta and its performance from our tests thus far on Ubuntu Linux are looking real good. In particular, if enabling the WebRender option that remains off by default on Linux, there are some nice performance gains especially.

23 May 2019 - 39 Comments
A Look At The MDS Cost On Xeon, EPYC & Xeon Total Impact Of Affected CPU Vulnerabilities

This weekend I posted a number of benchmarks looking at the performance impact of the new MDS/Zombieload vulnerabilities that also included a look at the overall cost of Spectre/Meltdown/L1TF/MDS on Intel desktop CPUs and AMD CPUs (Spectre). In this article are similar benchmarks but turning the attention now to Intel Xeon hardware and also comparing those total mitigation costs against AMD EPYC with its Spectre mitigations.

20 May 2019 - 16 Comments
The Many Changes & Additions To Find With The Linux 5.2 Kernel

The Linux 5.2 kernel merge window has been open for two weeks now and is expected to close today or in the next few days (there is some uncertainty due to Linus Torvalds traveling this week due to his daughter's graduation). But anyhow all of the major pull requests have already been sent in so here is a look at the new features to find with the Linux 5.2 kernel and the many other changes.

19 May 2019 - 2 Comments
The Performance Impact Of MDS / Zombieload Plus The Overall Cost Now Of Spectre/Meltdown/L1TF/MDS

The past few days I've begun exploring the performance implications of the new Microarchitectural Data Sampling "MDS" vulnerabilities now known more commonly as Zombieload. As I shared in some initial results, there is a real performance hit to these mitigations. In this article are more MDS/Zombieload mitigation benchmarks on multiple systems as well as comparing the overall performance impact of the Meltdown/Spectre/Foreshadow/Zombieload mitigations on various Intel CPUs and also AMD CPUs where relevant.

18 May 2019 - 57 Comments
GCC 9 vs. Clang 8 C/C++ Compiler Performance On AMD Threadripper, Intel Core i9

Since the release of the GCC 9 stable compiler suite earlier this month we have begun firing up a number of compiler benchmarks for this annual feature update to the GNU Compiler Collection. For your viewing pleasure today is looking at the performance of GCC 8 against GCC 9 compared to LLVM Clang 8 as the latest release of this friendly open-source compiler competition. This GCC 8 vs. GCC 9 vs. Clang 8 C/C++ compiler benchmarking was done on an Intel Core i9 7980XE and AMD Ryzen Threadripper 2990WX high-end desktop/workstation systems.

14 May 2019 - 9 Comments
The 2019 Laptop Performance Cost To Linux Full-Disk Encryption

I certainly recommend that everyone uses full-disk encryption for their production systems, especially for laptops you may be bringing with you. In over a decade of using Linux full-disk encryption on my main systems, the overhead cost to doing so has fortunately improved with time thanks to new CPU instruction set extensions, optimizations within the Linux kernel, and faster SSD storage making the performance penalty even less noticeable. As it's been a while since my last look at the Linux storage encryption overhead, here are some fresh results using a Dell XPS laptop running Ubuntu with/without LUKS full-disk encryption.

14 March 2019 - 34 Comments
Linux 4.19 Kernel Benchmarks On The Raspberry Pi

With the Raspberry Pi Foundation recently having begun rolling out a Linux 4.19-based kernel to Raspberry Pi boards, here are some benchmarks looking at the performance of two Raspberry Pi systems with the new Linux 4.19 kernel compared to its previous 4.14 kernel.

13 March 2019 - 30 Comments
Intel P-State vs. CPUFreq Frequency Scaling Performance On The Linux 5.0 Kernel

It's been a while since last running any P-State/CPUFreq frequency scaling driver and governor comparisons on Intel desktop systems, so given the recent release of Linux 5.0 I ran some tests for looking at the current state of affairs. Using an Intel Core i9 9900K I tested both the P-State and CPUFreq scaling drivers and their prominent governor options for seeing not only how the raw performance compares but also the system power consumption, CPU thermals, and performance-per-Watt.

12 March 2019 - 15 Comments
GCC 9 Compiler Tuning Benchmarks On Intel Skylake AVX-512

Recently I carried out a number of GCC 9 compiler benchmarks on AMD EPYC looking at the performance benefits of "znver1" compiler tuning and varying optimization levels to see when this level of compiler tuning pays off. There was interest from that in seeing some fresh Intel Skylake-X / AVX-512 figures, so here are those benchmarks of GCC 9 with various tuning options and their impact on the performance of the generated binaries.

8 March 2019 - 28 Comments
The Current Spectre / Meltdown Mitigation Overhead Benchmarks On Linux 5.0

With it being a little over one year since Spectre and Meltdown mitigations became public and with the Linux kernel today hitting the big "5.0" release, I decided to run some benchmarks of the current out-of-the-box performance hit as a result of the current default mitigation techniques employed by the Linux kernel. The default vs. unmitigated performance impact for Spectre/Meltdown are tested on an Intel Core i7 and Core i9 systems while there is also an AMD Ryzen 7 box for reference with its Spectre mitigation impact on Linux 5.0.

3 March 2019 - 32 Comments
The Performance Impact Of GCC CPU Tuning On The Linux Kernel's Performance

Last week there was the patch being proposed for the mainline Linux kernel that has long been carried by Gentoo's kernel to provide CPU optimization options, which were quickly shot-down by upstream maintainers, there were many requests to benchmark said patches... Here are dozens of performance figures looking at the performance impact of these optimizations for AMD Zen (znver1), Skylake, and Skylake X (Skylake-AVX512) compared to a stock mainline kernel build on several different systems.

27 February 2019 - 55 Comments
Linux 5.0 Kernel Performance Is Sliding In The Wrong Direction

With the Linux 5.0 kernel performance approaching the finish line, the past few days I've been ramping up my tests of this new kernel in our benchmarking farm. Unfortunately, when looking at the results at a macro level it's pointing towards Linux 5.0 yielding lower performance than previous kernel releases.

22 February 2019 - 40 Comments
Extensive Benchmarks Looking At AMD Znver1 GCC 9 Performance, EPYC Compiler Tuning

With the GCC 9 compiler due to be officially released as stable in the next month or two, we've been running benchmarks of this near-final state to the GNU Compiler Collection on a diverse range of processors. In recent weeks that has included extensive compiler benchmarks on a dozen x86_64 systems, POWER9 compiler testing on the Talos II, and also the AArch64 compiler performance on recent releases of GCC and LLVM Clang. In this latest installment of our GCC 9 compiler benchmarking is an extensive look at the AMD EPYC Znver1 performance on various releases of the GCC compiler as well as looking at various optimization levels under this new compiler on the Znver1 processor.

20 February 2019 - 12 Comments
Linux 5.0 I/O Scheduler Benchmarks On Laptop & Desktop Hardware

Our past tests have shown that while most Linux distributions default to "none" for their I/O scheduler on NVMe solid-state storage, that isn't necessarily the best scheduler decision in all cases. Here are tests using the Linux 5.0 Git kernel using laptop and desktop hardware while evaluating no I/O scheduler, mq-deadline, Kyber, and BFQ scheduler options.

18 February 2019 - 18 Comments
GCC 8/9 vs. LLVM Clang 7/8 Compiler Performance On AArch64

With Clang 8.0 due out by month's end and GCC 9 due for release not long after that point, this week we've been running a number of GCC and Clang compiler benchmarks on Phoronix. At the start of the month was the large Linux x86_64 GCC vs. Clang compiler benchmarks on twelve different Intel/AMD systems while last week was also a look at the POWER9 compiler performance on the Raptor Talos II. In this article we are checking out these open-source compilers' performance on 64-bit ARM (AArch64) using an Ampere eMAG 32-core server.

12 February 2019 - 20 Comments

669 software articles published on Phoronix.