tesselslate / resetti

Minecraft multi-instance reset macro for speedrunning
GNU General Public License v3.0
15 stars 3 forks source link

Idea for affinity #20

Open gllxflr opened 7 months ago

gllxflr commented 7 months ago

A useful option would be: when a world is chosen, give that instance all cores. remove all affinity limits from it.

I run a Ryzen 5 3600 so don't have the cores for advanced affinity, but also have lower single-core performance. Adding this option would greatly improve my in-game experience while not sacrificing reset efficiency.

tesselslate commented 7 months ago

In theory, advanced affinity should work fine on a 6-core CPU like the 3600. I used to use it when I had a 3600, and plenty of people still do on Windows with Julti, which has a similar affinity system. However, I don't remember if the 3600 has 1 or 2 CCXs.

If you're using sequence affinity instead, I believe this behavior should happen when setting active_cpus to 12. Lowering background_cpus may help a bit as well. Regardless of what you do, it's not unusual to have some very brief lag when initially tabbing into an instance while other instances are generating worlds.

gllxflr commented 7 months ago

Thanks for your help, I'll try this next time I do runs About the lag - it was below 60fps for about 30 seconds upon any dimension load and sometimes otherwise, despite no other instances being active. Was just 3600 single-core performance I assume.

tesselslate commented 7 months ago

Hm, that is unusually bad. Does it still happen when not using resetti?

gllxflr commented 7 months ago

It doesn't, but it also doesn't happen if affinity is disabled. The issue appears to be mostly that single-core performance is not good.