Je voudrais interdire les interruptions de certains processeurs. J'ai entendu parler de l'option IRQBALANCE_BANNED_CPUS. Je vois que l'irqbalance fonctionne en arrière-plan de ma machine. Où dois-je aller pour modifier et comment configurer cette option? Par exemple, je veux exclure les processeurs 2,3,4,5 des interruptions. Le descripteur d' argument est:
Fournit un masque de cpus que l'irqbalance doit ignorer et ne jamais affecter d'interruptions à
Qu'est-ce que cela signifie par un masque? Et où dois-je configurer irqbalance avec cette option?
EDIT1: Comment savoir que ma configuration est effective, en d'autres termes que mon processeur ne reçoit AUCUNE interruption? Je vérifie / proc / interrupts mais certains nombres y augmentent.
EDIT2: Maintenant, j'ai démarré ma machine avec IRQBALANCE_BANNED_CPUS = 3e, donc seul le CPU 0 n'est PAS banni des interruptions. Je devrais donc m'attendre à voir cpo0 recevoir beaucoup d'interruptions et les autres cpus ne recevant pas d'interruptions, non? Voici mes / proc / interruptions. Les lignes en gras changent pour TOUS les processeurs. Les lignes 22, 24, 35 et LOC changent.
CPU0 CPU1 CPU2 CPU3 CPU4 CPU5
0: 26 0 0 0 0 0 IO-APIC-edge timer
1: 2 0 0 0 0 0 IO-APIC-edge i8042
6: 3 0 0 0 0 0 IO-APIC-edge floppy
8: 1 0 0 0 0 0 IO-APIC-edge rtc0
9: 0 0 0 0 0 0 IO-APIC-fasteoi acpi
12: 4 0 0 0 0 0 IO-APIC-edge i8042
14: 13556 0 0 0 0 0 IO-APIC-edge ata_piix
15: 0 0 0 0 0 0 IO-APIC-edge ata_piix
18: 0 0 0 0 0 0 IO-APIC-fasteoi ata_piix
19: 2 0 0 0 0 0 IO-APIC-fasteoi ohci1394
20: 3 0 0 0 0 0 IO-APIC-fasteoi ehci_hcd:usb2, uhci_hcd:usb3, uhci_hcd:usb6
21: 197 635 39 0 0 0 IO-APIC-fasteoi uhci_hcd:usb4, uhci_hcd:usb7, HDA Intel
22: 344 3506 0 702 0 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb5, uhci_hcd:usb8
24: 162 48 0 0 0 0 IO-APIC-fasteoi nvidia
35: 174 0 47 0 0 0 IO-APIC-fasteoi nvidia
53: 3517 0 0 0 0 0 PCI-MSI-edge eth0
NMI: 0 0 0 0 0 0 Non-maskable interrupts
LOC: 11007 8840 6480 5652 4272 3046 Local timer interrupts
SPU: 0 0 0 0 0 0 Spurious interrupts
PMI: 0 0 0 0 0 0 Performance monitoring interrupts
PND: 0 0 0 0 0 0 Performance pending work
RES: 292 169 217 125 122 126 Rescheduling interrupts
CAL: 86 280 254 292 293 291 Function call interrupts
TLB: 1147 1031 1348 616 177 322 TLB shootdowns
TRM: 0 0 0 0 0 0 Thermal event interrupts
THR: 0 0 0 0 0 0 Threshold APIC interrupts
MCE: 0 0 0 0 0 0 Machine check exceptions
MCP: 2 2 2 2 2 2 Machine check polls
ERR: 5
MIS: 0
EDIT3: Il semble que l' option IRQBALANCE_BANNED_CPUS soit complètement IGNORÉE sur Ubuntu . J'ai essayé de redémarrer ma machine avec 1, 3e et j'ai eu des interruptions partout. Juste au moment où je désactive l'irqbalance en définissant ENABLED = 0, j'obtiens un clean / proc / interrupts juste sur cpu0 et aucun autre cpu.
la source
un bogue d'irqbalance empêche IRQBALANCE_BANNED_CPUS de travailler sur les machinges NUMA: http://code.google.com/p/irqbalance/issues/detail?id=43
Pour l'instant, 1.0.5 est la dernière version d'irqbalance et n'a pas le correctif.
la source
Vous devez utiliser 3c comme indiqué ci-dessus pour le faire fonctionner. Les versions ultérieures le font automatiquement (au moins par v 1.9 sur debian / sid)
la source
Ajout aux suggestions ci-dessus sur le dépannage des problèmes d'irqbalance - Une commande utile pour afficher les affinités d'interruption résultant de l'exécution d'irqbalance:
la source