Red Hat Training
A Red Hat training course is available for RHEL 8
20.5.2. Configuración de la máscara smp_affinity
El valor de smp_affinity
se almacena como una máscara de bits hexadecimal que representa a todos los procesadores del sistema. Cada bit configura una CPU diferente. El bit menos significativo es la CPU 0. El valor por defecto de la máscara es f
, lo que significa que una petición de interrupción puede ser manejada en cualquier procesador del sistema. Poner este valor a 1 significa que sólo el procesador 0 puede manejar la interrupción.
Procedimiento
En binario, utilice el valor 1 para las CPUs que manejan las interrupciones. Por ejemplo, para que la CPU 0 y la CPU 7 manejen las interrupciones, utilice
0000000010000001
como código binario:Tabla 20.3. Bits binarios para CPUs
CPU 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Binario
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
Convierte el código binario a hexadecimal:
Por ejemplo, para convertir el código binario utilizando Python:
>>> hex(int('0000000010000001', 2)) '0x81'
En sistemas con más de 32 procesadores, debe delimitar los valores de
smp_affinity
para grupos discretos de 32 bits. Por ejemplo, si desea que sólo los primeros 32 procesadores de un sistema de 64 procesadores atiendan una solicitud de interrupción, utilice0xffffffff,00000000
.El valor de afinidad de la interrupción para una solicitud de interrupción particular se almacena en el archivo asociado
/proc/irq/irq_number/smp_affinity
. Establezca la máscarasmp_affinity
en este archivo:# echo mask > /proc/irq/irq_number/smp_affinity