Como funciona o irqbalance

1

O irqbalance adiciona o módulo do kernel? Como um daemon de espaço do usuário é capaz de atribuir interrupções a diferentes processadores? Se for um processo de espaço do usuário que está fazendo isso, o kernel não vai mudar o contexto do espaço do usuário para atrasar o processamento de interrupção?

    
por kalyan 10.01.2017 / 18:31

1 resposta

1

irqbalance não adiciona um módulo do kernel. É um daemon.

irqbalance não atribui IRQs a partes específicas de hardware, apenas mapeia esses IRQs para CPUs dinamicamente. Então, se a eth0 fosse atribuída a IRQ 28, o irqbalance moveria periodicamente o IRQ 28 da CPU0 para a CPU1 para a CPU2 para a CPU3 para a CPU0 ...

Você poderia fazer a mesma coisa manualmente escrevendo a máscara de afinidade da CPU em "/ proc / irq / $ {IRQ} / smp_affinity".

Pode haver algum atraso para uma interrupção chegar a uma CPU se a afinidade for alterada ao mesmo tempo, mas suponho que seja semelhante a qualquer processo que tenha experimentado uma alternância de contexto.

    
por 10.01.2017 / 18:54