Saya ingin melarang interupsi dari CPU tertentu. Saya mendengar tentang opsi IRQBALANCE_BANNED_CPUS. Saya melihat irqbalance berjalan di latar belakang mesin saya. Di mana saya pergi untuk mengedit dan bagaimana cara mengkonfigurasi opsi itu? Misalnya, saya ingin mengecualikan CPU 2,3,4,5 dari interupsi. Deskriptor argumen adalah:
Menyediakan topeng cpus yang harus diabaikan oleh irqbalance dan tidak pernah memberikan interupsi
Apa yang dimaksud dengan topeng? Dan di mana saya mengkonfigurasi irqbalance dengan opsi itu?
EDIT1: Bagaimana cara mengetahui bahwa konfigurasi saya berlaku, dengan kata lain bahwa CPU saya menerima NO interupsi? Saya memeriksa / proc / menyela tetapi beberapa angka meningkat di sana.
EDIT2: Sekarang saya mem-boot mesin saya dengan IRQBALANCE_BANNED_CPUS = 3e jadi hanya CPU 0 yang TIDAK DILARANG dari gangguan. Jadi saya harus berharap untuk melihat CPU menerima banyak interupsi dan CPU lainnya tidak menerima interupsi, kan? Inilah saya / proc / interupsi. Garis dalam huruf tebal berubah untuk SEMUA CPU. Baris 22, 24, 35 dan LOC berubah.
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: Sepertinya opsi IRQBALANCE_BANNED_CPUS sepenuhnya di-IGNORED di Ubuntu . Saya mencoba me-reboot mesin saya dengan 1, 3e dan mendapat gangguan di seluruh. Tepat ketika saya menonaktifkan irqbalance dengan menetapkan ENABLED = 0 sehingga saya mendapatkan clean / proc / interupsi hanya pada cpu0 dan tidak ada cpu lainnya.
sumber
bug irqbalance mencegah IRQBALANCE_BANNED_CPUS dari mengerjakan NUMA machinges: http://code.google.com/p/irqbalance/issues/detail?id=43
Sampai sekarang, 1.0.5 adalah rilis irqbalance terbaru dan belum diperbaiki.
sumber
Anda harus menggunakan 3c sesuai di atas untuk membuatnya berfungsi. Versi yang lebih baru melakukan ini secara otomatis (setidaknya dengan v 1.9 pada debian / sid)
sumber
Menambah saran di atas tentang pemecahan masalah masalah irqbalance - Perintah yang berguna untuk melihat afinitas interupsi yang dihasilkan dari proses irqbalance:
sumber