Testing the second gen Threadripper cross platform, a little more closely

Techreport and Phoronix have done some very good tests with early hands on of the second gen threadripper parts.

I’m doing some testing of my own for upcoming videos with a loaner 2990WX from ASRock, 128gb of Crucial ECC memory I bought and 128gb of 2933 Threadripper-specific memory I’ve borrowed from GSkill.

This “blog” is for me to gather my thoughts. This isn’t complete.

Here’s some data with IndigoBench. It is interesting because it’s cross platform and works well on Windows and Linux.

Techreport covered it

As did Phoronix
https://www.phoronix.com/scan.php?page=article&item=amd-linux-2990wx&num=4

The 1950 and the 2950 should score around 2 in Indigo, and around 3.5 for the 2990WX, for the bedroom scene. So far, I haven’t been able to get close to that. 1.7-1.8 is about what I get with the 1950 and the 2950.

For the 2990WX today I took a bit of a side tangent. When working on a video the other day, I noticed that some games seemed to be running better when preventing them from being assigned to run on CPU0 on windows. (You can do this via powershell, or with the relatively handy ProcessLasso app from bitsum tech).

The Indigo benchmark scores improve dramatically on Windows when I did this, but the score still doesn’t match its Linux counterparts.

Still, I wonder if this type of thing is part of why we see performance regressions between the 2950X and 2990WX because, if the software is working properly, the 2990WX should be about as fast as the 2950X in the worst case scenario (on techreport, for example, shows the 2990WX scoring a paltry 1.642 – A result I was able to replicate by just running Indigo. Even with the Windows 10 Pro “Ultimate” power profile. Even with Ryzen Master turning up the juice.)

IndigoBench bedroom scene, stock windows 10 but with fancy power profile.

IndigoBench bedroom scene, only change is telling process lasso not to let this process run on CPU0


NOTE: I was able to replicate Techreport’s 1.6 result, and move the result to 1.9 by both enabling the “Ultmate” power profile for win10 and setting the process priority to “normal” (it usually runs at below normal?).

powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61

Linux’s “unopitmized” result, for comparison:

Will blog more as I have more data. I need something more robust to keep track of my notes. :smiley:

Curiouser and Curiouser… down the rabbit hole I shall continue to go.

8 Likes

My bet is that Windows is doing something important kernel related on CPU 0.
Something which Indigo depends on, that if slowed down is causing the entire system to slow down as it waits for something on core 0 to complete.

For Windows what happens if you load up Core 0 with something else and then run indigo on all other cores except core 0?

… Or leaving logical core 0 open gives Windows kernel and system components a preferred optimal CPU to use, instead of allowing it to assign critical threads to the less efficient back half of this processor.

It would be interesting to see if the behavior is also true for any logical core in the first 32…

1 Like

That’s also something worth testing.

1 Like

Tested:
Unselecting any cpu improves things whether its a near or far cpu… but cpu0 seems slightly better than any other.

Scores of
2.5ish = thread 32-63
2.6ish = thread 2-62
2.7ish = thread 0/1

Pbo is doing 3.4 to 3.6 GHz all core so its making it hard to really nail down though.

1 Like

Could You do a real world application test?
For example: compile a big open source project like the Linux kernel or Chromium browser. I would like to know what inpacts compile times more: CPU, RAM or SSD/HDD.
I love Level 1 Linux channel, please post more content that matters in the real world (non-gaming).

@wendell not specific to ThreadRipper 2, but my 1950x always boots with the clocks all over the place, even when using performance governor.

I have been using https://raw.githubusercontent.com/r4m0n/ZenStates-Linux/master/zenstates.py to disable c6 states and then the clocks stay very close to what it should be (no change in temperature or power draw). This has given me better latency overall on linux and on the vfio setup.

Curious part is my bios says C6 states are disabled.

edit: I read somewhere that this is what ultimate power profile for windows does, ignores C6 states. Honestly don’t know enough about it.

1 Like