[Tool] Core Switcher - Force GD to use all cores equally!

A threadripper 1950x with half of the cores disabled.

Mm. So 8 cores outta 16. How are they disabled? In the BIOS? Or do you just mean with Process Lasso (which I believe might have something in the program that lets you do that)?

Ryzen master has a ā€˜game modeā€™(cringe)

that let you diable half of the cores for faster memory access.

Interesting. Iā€™m not overly familiar with AMD CPUā€™s (except for my crappy AMD APU PC I have for watching Netflix). I wonder if itā€™s a setting of some kind you flipped thatā€™s making it behave that way.

So, now that makes 1 Intel CPU and 1 AMD CPU that arenā€™t behaving the same as everyone elses so far.

After figuring out which was GDā€™s ā€œnewā€ PID number, itā€™s definitely behaving better with both commands but it seems, @ least for the roughly 20 minutes i just finished playing, itā€™s slightly better with just the 1st command VS also putting the 2nd but, in both instances, thereā€™s no longer any ā€œCPUā€ with close to 100% load anymore, as opposed to before introducing the commands, where thereā€™s always one.

Now, if only there was some way to have some sort of ā€œbatch fileā€ that determined GDā€™s PID number after the game is launched and automatically did the terminal command ā€¦

Still, this is most definitely an improvement.

OK, tried Process Lasso and GD starts with all cores, but core 2 still seems to get the primary load at first. So I disabled core 2 and then 2 other cores are doing more than before (the other 5 doing barely anything - and by the way GD goes back to all cores automatically without me doing anything after some time), but still not equally like I see in your graph in your first post. I think performance might have increased somewhat - my fps would get bogged down in those occasional situations where you are faced with a huge swarm of enemies in SR.

I wish I could remember what I did exactly at that time when I was trying to turn core 0 off long ago.

EDIT: Now without disabling core 2, I noticed two other cores were always somewhat active. So perhaps there was hardly any, if any, improvement at all.

Second EDIT: Just to make sure there was nothing weird about my system, I ran XCOM, and all cores were active mostly equally (the even numbered cores having about an equal level thatā€™s more than the fairly equal level for the odd ones for some reason).

I have no way to test this right at the moment but I took a stab at trying to make you a script by reading up on bash scripts and reading up on what I would need to do to have the system retrieve and store GDā€™s PID into a variable we could use and then throwing spaghetti at the wall hereā€¦

ubuLinux_6core_switcher.zip (282 Bytes)

If it actually works I will be surprised. Download it, extract it, start up GD for 5-10 seconds then run the script - if it miraculously works then what it should do is disable Core 0 for GD, it sleeps for 8 secs, then reenables. If memory serves in order to run a .sh (Bash) file you might have to right click on it and make executable or something like that.

:crossed_fingers:

edit: if that one doesnā€™t do anything try this oneā€¦
ubuLinux_6core_switcher.zip (288 Bytes)




@Anonymous918 - damnā€¦ I was hoping that would do the trick. Back to the drawing boardā€¦ :zzz:


Just for clarity for myself here but when you start up Grim Dawn, every time, what youā€™re saying is that if you open up Task Manager (Windows Task Manager) and go to change affinity, Core 0 is sitting there, already disabled with you having to do nothing?

Thatā€™s justā€¦ weird, if so, and has to mean that there is something on your system thatā€™s making it do that.

@powbam:

Unfortunately, neither worked.

What you are saying is correct. I followed some instructions from a thread from these forums a long time ago to probably do something similar to what you are saying, and I must have permanently shut off core 0 for Grim Dawn on startup, but I donā€™t remember how I did that. I do remember that I did not get any performance increase from the method outlined in that post.

And to further emphasize, this is only for GD. All other apps and other games do not have that core shut off from startup.

Alrightā€¦ the ā€œsleepā€ error is an easy fix that i already figured out how to fix. The hangup is my variable for getting GDā€™s PID. I found some online bash editors that i can throw code into so im trying to figure it out but at least I can test it somewhat now.

Iā€™ll let ya know once i get one that i think is working.

1 Like

@H_T_C

k try this one on for size
ubuLinux_6core_switcher.zip (291 Bytes)

It has 24 cores?

2 threads per coreā€¦ his CPU is a 6 core.

Mine has 24 cores and 48 threads. (AMD Ryzen Threadripper 3960X)

I wrote it wrong was the cpu of my old processor.

Ohā€¦ you had replied to H_T_C in your first post so it looked like your post was directed at him.

Were you meaning to ask me for a hotkey script capable of toggling core affinity on a 24 core CPU?

Sorry the misunderstanding was not on purpose.
I changed computers a week ago and I still havenā€™t gotten used to the new one and I thought about the old one when I wrote that mistake.

Yes, I wanted, can you make it available?

1 Like

@powbam This post of yours is very interesting and will help many people, I passed the link of your post to some friends.

1 Like

Ok I added it up top in the OP. Please let me know if it works.

Your script od working just fine with my i5 2500k on win7 but I cannot see any significant gain from using it. Game is still working just fine and no problems occur. Stable 60 FPS with some deeps to 40-45 in some areas. With or without script, I see no difference.

1 Like