CPU Tests: Synthetic

Most of the people in our industry have a love/hate relationship when it comes to synthetic tests. On the one hand, they’re often good for quick summaries of performance and are easy to use, but most of the time the tests aren’t related to any real software. Synthetic tests are often very good at burrowing down to a specific set of instructions and maximizing the performance out of those. Due to requests from a number of our readers, we have the following synthetic tests.

Linux OpenSSL Speed: SHA256

One of our readers reached out in early 2020 and stated that he was interested in looking at OpenSSL hashing rates in Linux. Luckily OpenSSL in Linux has a function called ‘speed’ that allows the user to determine how fast the system is for any given hashing algorithm, as well as signing and verifying messages.

OpenSSL offers a lot of algorithms to choose from, and based on a quick Twitter poll, we narrowed it down to the following:

  1. rsa2048 sign and rsa2048 verify
  2. sha256 at 8K block size
  3. md5 at 8K block size

For each of these tests, we run them in single thread and multithreaded mode. All the graphs are in our benchmark database, Bench, and we use the sha256 results in published reviews.

(8-3c) Linux OpenSSL Speed sha256 8K Block (1T)(8-4c) Linux OpenSSL Speed sha256 8K Block (nT)

AMD has had a sha256 accelerator in its processors for many years, whereas Intel only enabled SHA acceleration in Rocket Lake. That's why we see RKL matching TR in 1T mode, but when the cores get fired up, TR and TR Pro streak ahead with the available performance and memory bandwidth. This is all about threads here, and 128 threads really matters.

GeekBench 5: Link

As a common tool for cross-platform testing between mobile, PC, and Mac, GeekBench is an ultimate exercise in synthetic testing across a range of algorithms looking for peak throughput. Tests include encryption, compression, fast Fourier transform, memory operations, n-body physics, matrix operations, histogram manipulation, and HTML parsing.

I’m including this test due to popular demand, although the results do come across as overly synthetic.

(8-1c) Geekbench 5 Single Thread(8-1d) Geekbench 5 Multi-Thread

DRAM Bandwidth

As we're moving from 2 channel memory on Ryzen to 4 channel memory on Threadripper then 8 channel memory on Threadripper Pro, these all have associated theoretical bandwidth maximums but there is a case for testing to see if those maximums can be reached. In this test, we do a simple memory write for peak bandwidth.

For 2-channel DDR4-3200, the theoretical maximum is 51.2 GB/s.
For 4-channel DDR4-3200, the theoretical maximum is 102.4 GB/s.
For 8-channel DDR4-3200, the theoretical maximum is 204.8 GB/s.

(8-2b) AIDA DRAM Write Speed

Here we see all the 4-channel Threadripper processors getting around 83 GB/s, but the Threadripper Pro can only achieve closer to its maximums when there are more cores present. Along with the memory controller bandwidth, AMD has to manage internal infinity fabric bandwidth and power to get the most out of the system. The fact that the 64C/64T achieves better than the 64C/128T might suggest that in 128T there is some congestion.

CPU Tests: Legacy and Web CPU Tests: SPEC
Comments Locked

98 Comments

View All Comments

  • DesireeTR - Wednesday, July 14, 2021 - link

    OK, found the news too. IDK if I can link any other website here other than Anandtech, but look for "Lenovo is Using AMD PSB to Vendor Lock AMD CPUs" from servethehome, dated April 5th 2021. Lenovo P620 with Threadripper Pro was tested and found that they used the strict PSB lock-in like Dell do on their PowerEdge servers.
  • Threska - Wednesday, July 14, 2021 - link

    I think "permanently" is the biggest concern, otherwise it could be a great feature as part of a "root of trust" if the user could control it, especially via hardware modification. e.g. jumper.
  • DesireeTR - Wednesday, July 14, 2021 - link

    Yeah, and if this trend continues, the Ryzen PRO definitely is next on the line getting this PSB. Laptops might be OK, since they use soldered BGA processor anyway, but definitely a big no no for prebuild towers.
  • arashi - Saturday, July 17, 2021 - link

    If it can be overridden like that then it isn't a root of trust anymore.
  • Threska - Saturday, July 17, 2021 - link

    There's the presumption you trust yourself.
  • Mikewind Dale - Wednesday, July 14, 2021 - link

    Dear Anandtech: If you ever review the motherboards, I'll relate something a few things I discovered about the Supermicro M12SWA-TF:

    First, it cannot use sleep mode. If you put the computer to sleep, then when you wake it up, the fans will all spin at low RPM, and they will fail to adjust to temperature. HWiNFO64 reports two sets of sensors: one set is direct, and the other is indirect, via the IPMI. After waking from sleep, the direct sensor readings were still reported, but the indirect-via-IPMI sensors were all null. When I logged into the BMC/IPMI, all the sensors were null there too. And when I ran a CPU burn-in after waking from sleep, my CPU temperature quickly climbed higher than normal, and the fans did NOT ramp up their RPM. (I was prepared for this, so I was running only a single-threaded CPU benchmark.)

    Not only did rebooting the computer fix the problem, but so did Windows hibernate. The fact that Windows hibernate fixed the problem told me that the problem was hardware, not OS.

    I contacted Supermicro, and they said this behavior is normal (!!!!!!). They explained that the IPMI controls the fan RPM, but it only connects to the sensors during POST. If you put the computer to sleep, the IPMI loses its connection to the sensors, and it cannot resume that connection until the computer POSTs again.

    So if you review the motherboards, make sure to test the sleep behavior.

    Second, the Supermicro board is programmed with critical low fan RPM threshholds that are lower than Noctua's RPM. If you Google, you'll see a lot of people have problems with using Noctua fans with Supermicro boards. What happens is, the the Noctua fan's RPM will drop below the critical low RPM threshholds, so the Supermicro board will think the fan is failing, and it will quickly ramp the fan up to 100% PWM. Once the fan exceeds the critical low RPM threshold, the alert will end, and the fan will drop its RPM back down again, starting the cycle over. So the fans cycle back and forth between high and low RPM. When I logged into the IPMI, I saw that I every single fan was triggering the low RPM alert every few seconds.

    The solution is to reprogram the IPMI with new critical low RPM thresholds. Supermicro's own IPMI software does NOT allow this, because Supermicro explained to me that some people have overheated and fried their motherboards using insufficient cooling. So I had to use a third-party tool called "ipmitool".

    Usually, ipmitool is obtained via "sudo apt-get install ipmitool". However, I found that the Linux version was unable to establish a connection with my BMC, even though other IPMI tools had no problem with establishing that connection. But other IPMI tools did not have the ability to reprogram the fan thresholds.

    Luckily, the Windows version of ipmitool was able to establish a connection and alter my fan thresholds just fine. The Windows version is available at https://www.dannynieuwenhuis.nl/download-windows-i...

    If you Google, you'll find many, many different websites offering instructions for how to use ipmitool to modify your Supermicro board to be compatible with Noctua fans. I'll just give a few sample lines of code here, in case anyone needs them:

    ipmitool -I lanplus -H <ipaddress> -U <username> -P <password> sensor thresh FAN1 lower 40 140 240
    ipmitool -I lanplus -H <ipaddress> -U <username> -P <password> sensor thresh FAN1 upper 1650 1750 1850

    Where:
    --- FAN1 is the name of the fan header, as labeled in the motherboard manual. Options are FAN1-FAN6 and FANA-FAND.
    --- "lower" numbers are lower non-recoverable, lower critical, and lower non-critical, in that order.
    --- "upper" numbers are upper non-critical, upper critical, and upper non-recoverable, in that order.

    To calculate the thresholds, I did the following:
    First, I looked up Noctua's specs. FAN1 is my Noctua NH-U14S TR4-SP3. According to Noctua, its fan's RPM are 300 +/-20% to 1500 +/- 10% RPM.
    Second, I set the lower non-critical to 300*0.8 (i.e. -20%) and the upper non-critical to 1500*1.1 (i.e. +10%).
    Third, for the critical and non-recoverable thresholds, I just added or subtracted 100%.

    Do the same for every other fan in every other header. I wrote about every line in a .BAT file in Windows, which read like this:

    REM **************************************************************************************************
    REM **********
    REM FAN1 is Noctua NH-U14S TR4-SP3: 300 +/-20% to 1500 +/- 10% RPM
    REM **********

    ipmitool -I lanplus -H <ipaddress> -U <username> -P <password> sensor thresh FAN1 lower 40 140 240
    ipmitool -I lanplus -H <ipaddress> -U <username> -P <password> sensor thresh FAN1 upper 1650 1750 1850
    REM **************************************************************************************************

    REM **************************************************************************************************
    REM **********
    REM FAN2 is Noctua NF-A15: 300 +/- 20% to 1200 +/- 10%
    REM **********

    ipmitool -I lanplus -H <ipaddress> -U <username> -P <password> sensor thresh FAN2 lower 40 140 240
    ipmitool -I lanplus -H <ipaddress> -U <username> -P <password> sensor thresh FAN2 upper 1320 1420 1520
    REM **************************************************************************************************

    and so forth, for every fan header. This successfully solved the problem of the fans triggering the threshold alerts and cycling up and down.
  • Mikewind Dale - Wednesday, July 14, 2021 - link

    "Second, the Supermicro board is programmed with critical low fan RPM threshholds that are lower than Noctua's RPM."

    I meant *higher*. The Supermicro default critical low fan RPM thresholds are *higher* than Noctua's.
  • Mikewind Dale - Wednesday, July 14, 2021 - link

    Oh, and because sleep mode is dangerous, threatening to potentially fry your CPU (since the fans no longer respond to temperature), I not only set my computer never to sleep, but I removed sleep from the power options in the start menu. That way, I cannot accidentally put the computer to sleep.

    If you do ever put your Supermicro M12SWA-TF to sleep, you will not receive any alerts that every sensor is null. If you log into the BMC, you'll see every sensor is null, but there are no alerts. And the fans all spin at minimum RPM regardless of your fan setting, and regardless of temperature. So sleep mode appears to have the potential to fry your CPU.
  • Threska - Wednesday, July 14, 2021 - link

    You keep saying "fry" but haven't CPUs had thermal protection for ages at this point?
  • Mikewind Dale - Wednesday, July 14, 2021 - link

    Threska, possibly. But I didn't want to find out.

    At best, sleep mode would cause the computer to constantly downclock or shut down without any clear cause (unless the user realized it was because sleep mode deactivated the IPMI's reporting of the sensors while the sensors themselves were still reporting values to software such as HWiNFO).

Log in

Don't have an account? Sign up now