Dedicate cores for emulation only
- Dominant language
- C++
- Stars
- 8k
- Forks
- 351
- Avg merge
- 12h 31m
- Merged PRs (30d)
- 102
Description
Hello, I've got a very weird question to ask and i highly doubt it's possibility but is it possible to pin FEX emulation to specific cores while keeping games running on other cores?
I'm using FEX on my Radxa Orion O6 and sort of recently found out that if i start a game in steam with `taskset -c 0-7 %command%` (Cores 0-3 being big, 4-7 being medium, 8-11 being small)
Then run `taskset -cp 4-7 PIDOFGAME`, I get a noticable performance increase in practically all games.
I have 2 theories for this:
1. Games/FEX create 8 threads on startup and after i run the taskset command something notices core count was lowered and thus moves the threads to the other cores?
2. FEX is pinned to the first core it's allowed to run the game from and by moving the game to other cores FEX is effectively utilizing some cores for emulation only and the other cores for running the actual game code uninterrupted.
I really want to believe theory 2 is true because if it is then that unlocks a way to better utilize such hardware by pinning emulation to specific cores.
Contributor guide
Assessment
This issue has not been assessed yet.