tuned
tuned copied to clipboard
Dynamic tuning of IRQs and kthreads
For a flexible deployment of realtime applications we need tuning of IRQs and kernel threads that go beyond what TuneD currently offers:
- Tuning of individual interrupts: If the realtime application uses a device (e.g., NIC), we want to control the affinity of the corresponding interrupt. Currently, we can only control the affinities of all interrupts with one setting.
- Tuning of individual kernel threads: Example is again a NIC that can have associated NAPI threads, which we want to tune. Some of this is already possible with the scheduler plugin, but it's lacking flexibility.
- Adapt tuning dynamically: resources (isolated CPUs, NICs, ...) are allocated to apps dynamically, so we only know which IRQs and Kthreads we need to move to which CPUs at the time an app is started. Currently this can only be done statically in the profile.
The code is already there:
- #596
- #580
- #628
EDIT: this one now spawned two more:
- #734
- #735
Opening this issue to summarize and put the 3 PRs into context.
@yarda could you please comment? Is this a relevant story for TuneD in principle? Do you think it's realistic to get this integrated for the 2.23 release?