Skip to content

Dedicate cores for emulation only #5549

Description

@System64fumo

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions