Jump to content

SSE+ENB on 5 cores! WTH?


Guest

Recommended Posts

Posted

Well, this isn't really a support request, but since its technical stuff i thought i put it here.

 

I've been playing SSE for over a year now - almost as long with ENB. And all the time, i saw what everyone knows already: SSE can't multithread. There's one main thread and a helper-thread, and that's it. Everything they call 'threads' in the ini-files are actually just subroutines. And so, what i got was the same everyone else has seen: Core 1 maxxed out, core 2 only moderately used, and that's it. Meanwhile, the GPU is bored to death from having nothing to do, since skyrim spends most its time on papyrus, havok and crappy AI, instead of sending render-calls.

 

As a result, even with a 6-core Ryzen and GTX 1660 TI, i could barely reach 60 FPS. And in cities it was usually 45-60 FPS.

 

Until 20 minutes ago, i fired up SSE and was confused why everything runs so smooth, even in cities. Alt-tabbed and checked out the afterburner-stats:

 

1133254316_SSEwithENBon5cores.png.0b6c12d5a2c3816c0e7dca50077b6c5f.png

 

Nothing else was running, not even firefox. This is SSE utilizing 5 CORES! (#6 is reserved for OS and services, so SSE was forbidden from using it).

 

What did i do? How did this happen? I have no freaking idea! I didn't change any ini-settings (neither skyrim, ENB, nor plugins). All i've done since i last started SSE, was adjust my GPU's powertarget from 100% to 110%, but that makes no sense to affect core-utilization, plus the GPU was only at about 50% load before anyways.

 

It's magick. I guess i'll just be happy while it lasts.

 

Posted

UPDATE: I now found a way to reproduce this at least on my rig (Ryzen5 2600, GTX 1660 TI, Win8.1).

 

The deciding factor seems to be, to force SSE putting its main thread on core1. If windows is allowed to just assign whatever core it likes, odds are core1 is not the least-used one, so SSE's main thread will end up on a higher numbered core. When the main-thread is on a higher numbered core, for whatever reason SSE runs almost single-core. But if the main is assigned core1, then it will use any extra cores for good measure.

 

So here's how i reproduced it: My taskmanager of choice (not the native windows one), allows me to set core-affinity for individual processes. So i launch SSE, set its affinity to core1 only, wait a moment for it to be moved to that core, then i use my taskmanager again to give it more cores: The main-thread will typically stay on core1, but now it magically uses extra cores to do work, and i get 60FPS in cities on ultra.

  • 4 weeks later...
Posted
On 8/26/2019 at 6:55 AM, lynak said:

My taskmanager of choice (not the native windows one), allows me to set core-affinity for individual processes. 

What taskmanager are you using ?

Posted
2 hours ago, Angahran said:

What taskmanager are you using ?

System Explorer 1.5. There's are much newer version, but i don't like the new layout, and for my personal needs, the newer versions don't add anything i'm missing.

 

The nice thing about it is, one can set both - temporary and permanent affinities. This way i can for example tell my browser and musicplayer to always (permanently) use core 6, so they don't get in the way of skyrim. And this works across reboots. Here's how it looks like:

 

1100118089_Screeny2019_09_19_15_55_59.png.ac1c2f2c8bdca19cf7e04a5d0a7d0a3b.png

 

Also, based on feedback in my "SSE @ 60 FPS On Midrange PCs"-guide, it seems the described behavior (SSE wants its mainthread on core1) is not an issue on win10. I'm using win8.1, so maybe the problem is specific to the combination of win8.1 + Ryzen + SMT-disabled. Then again: Win8 is quite rare, and i've seen plenty of threads where people described SSE only using 1.5 cores. So maybe it's win7-8 specific.

 

 

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...