Добавляет ли irqbalance модуль ядра? Как демон пользовательского пространства может назначать прерывания разным процессорам? Если это делает процесс пользовательского пространства, не будет ли переключение контекста ядра на пользовательское пространство задерживать обработку прерывания?
irqbalance не добавляет модуль ядра. Это демон.
irqbalance не назначает IRQ конкретным компонентам оборудования, он просто динамически отображает эти IRQ на процессоры. Итак, если eth0 было назначено IRQ 28, irqbalance будет периодически перемещать IRQ 28 с CPU0 на CPU1, на CPU2, на CPU3 на CPU0 ...
Вы можете сделать то же самое вручную, написав маску соответствия ЦП в "/ proc / irq / $ {IRQ} / smp_affinity".
Может быть некоторая задержка для прерывания, приходящего к процессору, если в то же время было изменено сродство, но я предполагаю, что это будет похоже на любой процесс, который испытал переключение контекста.