FreeBSD vs. Linux Scaling Up To 128 Threads With The AMD Ryzen Threadripper 3990X

Written by Michael Larabel in Operating Systems on 20 February 2020 at 09:54 AM EST. Page 2 of 5. 37 Comments.
Threadripper 3990X Scaling - FreeBSD 12.1 vs. Linux

First up was the John The Ripper password cracker with the Blowfish algorithm. Interestingly FreeBSD 12.1 out-of-the-box with its LLVM Clang 8.0.1 compiler was performing the best while FreeBSD 12.1 with GCC9 was performing the worst against Ubuntu 20.04 and CentOS Stream. Between CentOS Stream and Ubuntu 20.04 on the Threadripper 3990X the performance was nearly identical at 16 through 64 cores. But when hitting the 64 cores / 128 threads, CentOS Stream continued scaling in line with FreeBSD 12.1 while the Ubuntu 20.04 performance had dropped off. This may be due to the different kernel configurations between these distributions and/or a regression within the newer GCC 9 compiler used by Ubuntu 20.04 given the similar outcome when FreeBSD 12.1 was running with GCC 9.

Threadripper 3990X Scaling - FreeBSD 12.1 vs. Linux

When running with the MD5 benchmark, FreeBSD 12.1 pulled back while Ubuntu 20.04 and CentOS Stream were performing near identically and well ahead of either FreeBSD toolchain configuration tested. At 16 cores Linux was about 7% faster than FreeBSD 12.1 with GCC but at 64 cores / 128 threads there was a roughly 32% advantage for the Linux distributions.

Threadripper 3990X Scaling - FreeBSD 12.1 vs. Linux

With the OpenMP-threaded GraphicsMagick imaging program the performance between the four operating systems were nearly identical through 32 threads but at 48 threads/cores and above is where the performance began to differ. FreeBSD 12.1 ended up pulling out ahead at the higher thread counts for the image sharpening test.

Threadripper 3990X Scaling - FreeBSD 12.1 vs. Linux

With the image enhancement operation within GraphicsMagick was much greater scaling while FreeBSD 12.1 was performing the best on both compilers followed by CentOS Stream and then Ubuntu 20.04.

Threadripper 3990X Scaling - FreeBSD 12.1 vs. Linux

For the last of the GraphicsMagick imaging tests was the noise-gaussian operation where there was quite a difference between the operating systems / compilers tested. FreeBSD 12.1 with Clang was continuously leading the way followed by CentOS Stream. At 16 cores FreeBSD 12.1 with GCC was the slowest while at 32 cores it tied with Ubuntu 20.04 and at all higher core/thread counts was performing much better than Ubuntu.

Related Articles