-
Notifications
You must be signed in to change notification settings - Fork 185
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Question] CPU pinning and multi-CCD Zen3 CPUs #460
Comments
both pin_cores and park_cores can take the same arguments and as is described in the .ini file they can take yes/no or a list of which cores to park or pin where you can use both comma separated cores and/or - to list a range. I'm adding the text from the .ini file here since it should describe how it works: ; Parking or Pinning can be enabled with either "yes", "true" or "1" and disabled with "no", "false" or "0". edit: aka "yes" is autodetect, "no" is to disable it all and a list of cores is to force those cores to be pinned or parked regardless of which cpu is used. |
Hi @HenrikHolst, thank you for your answer, do you have any idea of what would be the best setting for a 5950X? From what I understood the |
The autodetect code only looks at differences in frequency or cache size yes so it does nothing on the 5950X. IF games would benefit from only running on one of the ccd:s of the 5950X (which is something that have to be tested, myself I unfortunately does not have access to such a cpu) then the cores to pin/park have to be entered manually. Most likely is that the cores on the 5950X is organized so that 0-15 is on one CCD and 16-32 is on the other but to be sure one can use the lscpu command, here from my 5800x3d:
What we can see here is the core id on the far left and if I'm not mistaken the 5950X have one L3 per CCD so the L3 column which is 0 above should be something like 0 for CCD1 and 1 for CCD2 letting you see which cores is on which ccd. Since the 5800x3d is 8 cores but since HT is enabled it shows it as 16 cores (each core can run 2 threads) so on a 5950X there even might be the potential that 0-15,33-49 is CCD1 for you since you have 16 physical cores but 32 virtual. |
This is the output of
so, if I get it right, CPU 0-7, 16-23 are on the same CCD and 8-15, 24-31 are on the other? what values would you suggest for |
for that I would use "0-7,16-23" to pin_cores to put the game only on the first CCD, or "8-15,24-31" in park_cores to park the second CCD. Or switch the values around if you like to pin to the second CCD or park the first CCD. |
Thanks! Do you have any recommendation for specific games to use to test if pin/parking will bring gaming performance benefits? |
sorry, no idea at all. I simply knew that it was an issue with the 7900x3d, 7950x3d and the Intel ones with e and p cores on Windows and added the functionality to GameMode, have zero experience myself since I'm on a 5800x3d (and had a 1600x prior to that). So this is something that you have to try out for yourself if it makes any difference or not. |
Hi, I was wondering if you are aware of any advantages of using CPU pinning with a multi-CCD Zen3 CPU (e.g. Ryzen 5900X and 5950X).
As far as I know only Ryzen 7900x3d and 7950x3d will be autodetected so I was wondering if I should manually set some values for the
gamemode.ini
'spin_cores
andpark_cores
to get better game performances with my 5950X.One more question about
pin_cores
: what values can be set besidesyes
andno
? Is it possible to specify the CPU topography, for example setting that the CCD1 uses cores from 0 to 7 and the CCD2 from 7 to 15 or how can this parameter be used to do some manual core pinning when the autodetect doesn't work?The text was updated successfully, but these errors were encountered: