• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.
  • The forums have been upgraded with support for dark mode. By default it will follow the setting on your system/browser. You may override it by scrolling to the end of the page and clicking the gears icon.

Does setting affinity for cores in task manager make AMD Threadripper gamemode irrelevant?

Joined
May 19, 2017
Messages
443 (0.15/day)
Processor i7 4790k / ryzen 1700
Motherboard Asus Maximus VI Extreme / gigabyte b350 mini itx
Cooling Corsair H70 / cooler master master liquid
Memory 32gb DDR3 / 32gb ddr4
Video Card(s) Gtx 1080 / gtx 1080
Storage 128gb Samsung 850 Pro, 2tb hdd / 500gb 850 evo
Case Thermaltake Chaser Mk-1 / Silverstone m13b
Power Supply 1000W OCZ Gold Full Modular / seasonic focus 850w
Mouse Proteus Core G502
Keyboard Corsair K95 RGB
As far as I can tell, gamemode and disabling SMT for better gaming performance basically results in locking down half the cores on the CPU. Wouldn't simply only allowing the application to use 8 or 16 threads via task manager set affinity bypass that issue and make it so you don't lose those threads for other applications, or am I mistaken? If so, wouldn't that effectively render gamemode irrelevant? Or am I mistaken on how setting affinity works?
 
Do a test? Run a game with a built in benchmark. I doubt changing affinity settings will impact anymore than Game Mode does.

Affinity basically instructs the Windows thread scheduler which logical processors the process can use. Normally, there's no restrictions so it balances the load. If a process starts using >50% on one logical processor, it usually moves unrelated threads to another core that isn't carrying so much burden; however, if you have aggressive power saving features enabled, it will do the opposite: try to pile threads together so it can power logical processors down. If you set it to high performance power profile as AMD recommends, the former is the case.
 
Last edited:
Game mode prevents the Windows scheduler from bouncing threads around but also tries to keep the game in RAM nearest to the cores the game is utilizing (reduction in memory latency for far away cores.)

Another name I see it referred to is Local Mode, the other is NUMA mode.
 
Last edited:
Affinity helps windows prioritize processes, if you make the game at highest it will try to give the most resources to the game.

It is another trick that worked in XP well, however I feel it is less important now...
 
Do a test? Run a game with a built in benchmark. I doubt changing affinity settings will impact anymore than Game Mode does.

Affinity basically instructs the Windows thread schedule which logical processors the process can use. Normally, there's no restrictions so it balances the load. If a process starts using >50% on one logical processor, it usually moves unrelated threads to another core that isn't carrying so much burden; however, if you have aggressive power saving features enabled, it will do the opposite: try to pile threads together so it can power logical processors down. If you set it to high performance power profile as AMD recommends, the former is the case.

I would try this, but sadly I only have an i7 4790k and I don't actually have a threadripper processor to test it out with (at least yet).

Game mode prevents the Windows scheduler from bouncing threads around but also tries to keep the game in RAM nearest to the cores the game is utilizing (reduction in memory latency for far away cores.)

Another name I see it referred to is Local Mode, the other is NUMA mode.

Affinity helps windows prioritize processes, if you make the game at highest it will try to give the most resources to the game.

It is another trick that worked in XP well, however I feel it is less important now...

I was watching a video where having localized memory mode on didn't really hurt performance in games, but that it didn't necessarily make a significant bump up in frame. So I was wondering if having memory mode in default but having the task affinity in the task manager only allow access to say 8 threads to games that seem to suffer with a higher core count cpu it that would effectively enable game mode (for that application) and let me have access to the rest of the processor to do something else with while I'm using it?
 
most of the games we AMD ryzen buyers are playing, where NOT made with the RYZEN kits sent out. they had not test bench to test them on, so most companies never used them. intel packs allowed companies to use up to 4 cores, so the companies did not have to worry about getting the games to run on anything passed 4 cores. when the companies becomes less lazy and store going passed 4 core, will amd fx and ryzen line really be useful.
 
most of the games we AMD ryzen buyers are playing, where NOT made with the RYZEN kits sent out. they had not test bench to test them on, so most companies never used them. intel packs allowed companies to use up to 4 cores, so the companies did not have to worry about getting the games to run on anything passed 4 cores. when the companies becomes less lazy and store going passed 4 core, will amd fx and ryzen line really be useful.


Even the Phenom 2
 
There's an application called system explorer that lets you set proc affinity and priority , and retains user Choices after reboot. I use it to prevent threads to bounce around. I think it would be as effective as using game mode, without loosing 8 cores. You can set other programs to work on the other die
 
Hey guys
Those that use Processlassoor or want to, ver 9.0.0.513beta now supports NUMA, so you can set your node/affinity per application and it will save settings.
 
Last edited:
+1 for Process Lasso from Bitsum. I talked to devs few days ago, and they were very responsive, and I suggested to do few improvements to make automatic affinity on Windows handle 2970X/2990WX better. The new version also helps with other CPUs, 2950X, and even some Intel ones HEDTs. (If you know how to use it). The new Dynamic Mode in Ryzen Master Tool is also apparently doing pretty good job according to Bitsum, but Process Lasso will give you more control and be sure it works as intended for specific apps.
 
I've tested with process lasso, or task manager and from my experience with a very limited CPU at the time, it didn't help, windows managed all the threads just fine on its own
 
Off the top of my head I answer you with a question , witch one of the 2 you mentioned has the greater ctrl on what instructs are prioritized?, I can see one favoring another , conficts that are yeldng diminishing returns, a win , yet these are merely some scenarios as I've not fiddled with these new ones at such affinity so a grain of salt is implied for my this forum post.
 
I've tested with process lasso, or task manager and from my experience with a very limited CPU at the time, it didn't help, windows managed all the threads just fine on its own

Isn't this where Ryzen Master comes into play for local dynamic mode?
 
Off the top of my head I answer you with a question , witch one of the 2 you mentioned has the greater ctrl on what instructs are prioritized?, I can see one favoring another , conficts that are yeldng diminishing returns, a win , yet these are merely some scenarios as I've not fiddled with these new ones at such affinity so a grain of salt is implied for my this forum post.
ProcessLasso can prioritize CPU Affinity and CPU priority per application, which the settings are saved.
There also a bunch of other features (ProBalnce, performance mode, etc) but the above pertain to this post mostly.

Ryzen Master Dynamic local mode is a global fix, so it tries to fix latency of the nodes by trying to keep the CPU load on certain nodes that have direct access to memory (nothing per app).
 
Last edited:
Ryzen Master Dynamic Local Mode, is observing multithreaded processes and see which ones do significant amount of memory operations, and if such process is detected it changes process / thread affinity for it. The important part it is doing this automatically and universally to any app, and if app no longer uses all cpu or memory operations, it will undo affinity fixation for the process.
 
Nice I like Bitsum's stuff... really helps out on the workstation.
 
Just an update on CorePrio, It now has a GUI and startup service.
Small footprint with some tweakable setting for ThreadRipper 2990wx and 2970wx to support Dynamic Local Mode.

A How-to explained.

https://bitsum.com/portfolio/coreprio/
 
I have turned off cores starting with 8 on several Intel CPUs and say no impact until I want from 4 to 3 ... it was about 2 fps
 
I have turned off cores starting with 8 on several Intel CPUs and say no impact until I want from 4 to 3 ... it was about 2 fps
If I follow you there won't be too many places Intel CPU would get helped out doing this.
The main issue with Threadripper is the only die 0 and 2 have direct memory channels (only 4 channels for 4 dies's/nodes), so the software prioritizes those 2 to limit latency.

The only thing that might help Intel is to prioritize the fastest core or say your running 2 application that needs to be contained, no thread thrashing. like, for example, you have an 8core CPU and want to stream your game on the same system. You could prioritize the game and also set low limit affinity on stream threads that you never want the game to use. This might run better than not micromanaging the affinity.
You would need to test all this for whatever software combo to see if it benefits performance (on Intel side).
 
@Ed_1
micromanaging the affinity
thankyou as such is some tedious work doing so right after every boot for one, I am not running my pc 24/7 , yet I have done so on a less performant PC and the results where there as in app(game) responsiveness compared to not "micromanaging the affinity".
 
@Ed_1 thankyou as such is some tedious work doing so right after every boot for one, I am not running my pc 24/7 , yet I have done so on a less performant PC and the results where there as in app(game) responsiveness compared to not "micromanaging the affinity".
Right, Just to remind Process lasso can handle persistent process and affinities along with its Probalance module, but this thread is about high core count TR.
I don't know, maybe Coreprio might get integrated into PL in the future if demand is high from users.
 
Back
Top