Que es el daemon Irqbalance.
Irqbalance es una herramienta en linea de comandos que trabaja como un daemon (demonio).
De manera predeterminada, viene activado y preconfigurado en prácticamente la totalidad de distribuciones Linux server (en versiones desktop su penetración cada día es más importante). Su principal función es equilibrar la carga de la CPU, generada por las interrupciones de la propia CPU en el sistema.
Irqbalance identifica las fuentes de interrupción de mayor volumen y las aísla en una única CPU o nucleo. Con este proceso se consigue que la carga se distribuya entre todos los procesadores o nucleos del sistema.
El correcto funcionamiento del daemon irqbalance es muy importante, pues no solo distribuye la carga de trabajo de la maquina, sino que a la vez se minimizan las tasas de caché fallidas de los controladores irq.
Como comente anteriormente su instalación de forma predeterminada es prácticamente total, pero en el caso de que por cualquier causa no lo estuviera, su instalación es sencilla.
Vamos a ello.
Instalar el daemon Irqbalance
Irqbalance lo podemos descargar desde su Github oficial.
Una vez descargado lo descomprimimos y procedemos a su instalación.
1 2 3 4 5 6 7 |
./autogen.sh ./configure [options] make make install |
Opciones
Tag | Description |
---|---|
–oneshot | |
Hace que irqbalance se ejecute una vez. | |
–debug hace que irqbalance se ejecute en primer plano y la información de depuración adicional se imprima |
Enviroment variables
Tag | Description |
---|---|
IRQBALANCE_ONESHOT | |
Lo mismo que –oneshot | |
IRQBALANCE_DEBUG | |
Lo mismo que –debug | |
IRQBALANCE_BANNED_CPUS | |
Brinda una máscara de CPU que irqbalance debe ignorar y nunca asignar interrupciones. Esta es una máscara hexagonal sin el “0x” inicial, en los sistemas con un gran número de procesadores se separa cada grupo de ocho dígitos hexadecimales en una coma ‘,’. es decir, ‘export IRQBALANCE_BANNED_CPUS = fc0’ evitaría que irqbalance asignara irqs a la 7ma-12ma cpus (cpu6-cpu11) o ‘export IRQBALANCE_BANNED_CPUS = ff000000,00000001’ evitaría que irqbalance asignara irqs a la 1ra (cpu0) y la 57.a-64ma. (cpu56-cpu63). | |
IRQBALANCE_BANNED_INTERRUPTS | |
Lista separada por espacios de irq’s enteros que irqbalance debe ignorar y jamas modificar la afinidad, osea la exportación… export IRQBALANCE_BANNED_INTERRUPTS=”205 217 225″ |