[Sysadmins] ksoftirq 99% cpu load.
=?iso-8859-1?q?ahtoh_=CE=C1_pulnet=2Eru?=
=?iso-8859-1?q?ahtoh_=CE=C1_pulnet=2Eru?=
Вт Окт 14 16:21:28 UTC 2008
В сообщении от 14 октября 2008 Konstantin A. Lepikhov написал(a):
> 14.10.2008 18:13, ahtoh на pulnet.ru пишет:
> > irqbalance может распределяет прерывания например
> > от eth0 на CPU0, а от eth1 на CPU1 итд.
> > А здесь сразу по всем ядрам, что конечно лучше.
> > _______________________________________________
> > Sysadmins mailing list
> > Sysadmins на lists.altlinux.org
> > https://lists.altlinux.org/mailman/listinfo/sysadmins
>
> Вы это сами только что придумали?
> _______________________________________________
> Sysadmins mailing list
> Sysadmins на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/sysadmins
Вот /proc/interrupts c запущенным irqbalance ядро 2.6.18
CPU0 CPU1 CPU2 CPU3
0: 14736893 0 253682 4383039 IO-APIC-edge timer
1: 2393 0 0 0 IO-APIC-edge i8042
6: 3 0 0 0 IO-APIC-edge floppy
8: 1 0 0 0 IO-APIC-edge rtc
9: 1 0 0 0 IO-APIC-level acpi
14: 61 0 0 0 IO-APIC-edge ide0
58: 339791237 110911999 0 0 PCI-MSI eth0
66: 437172012 0 0 0 PCI-MSI eth1
169: 175988 0 1648 2087386 IO-APIC-level ioc0
NMI: 35854 9985 453 541
LOC: 19374644 19375064 19375160 19374988
ERR: 0
MIS: 0
Как видно прерывания от определенных системных устройств
распределены строго по определённым ядрам.
А вот 2.6.24-std-smp-def
CPU0 CPU1 CPU2 CPU3
0: 29 0 0 0 IO-APIC-edge timer
1: 1 0 1 0 IO-APIC-edge i8042
8: 0 1 0 0 IO-APIC-edge rtc
9: 0 0 0 1 IO-APIC-fasteoi acpi
12: 0 1 1 2 IO-APIC-edge i8042
17: 0 0 0 0 IO-APIC-fasteoi
uhci_hcd:usb3, ehci_hcd:usb4
18: 0 0 0 0 IO-APIC-fasteoi libata,
uhci_hcd:usb1, uhci_hcd:usb7
19: 0 0 0 0 IO-APIC-fasteoi
uhci_hcd:usb6
21: 88026 87808 88783 89463 IO-APIC-fasteoi libata,
libata, uhci_hcd:usb2
23: 0 0 0 0 IO-APIC-fasteoi
uhci_hcd:usb5, ehci_hcd:usb8
2298: 1602881384 1602881600 1602880626 1602879945 PCI-MSI-edge eth0
NMI: 0 0 0 0 Non-maskable interrupts
LOC: 35594469 15987382 18652239 9478400 Local timer interrupts
RES: 666 1473 745 1531 Rescheduling interrupts
CAL: 1425 1446 1447 191 function call interrupts
TLB: 1421 1537 1471 1578 TLB shootdowns
TRM: 0 0 0 0 Thermal event interrupts
THR: 0 0 0 0 Threshold APIC interrupts
SPU: 0 0 0 0 Spurious interrupts
ERR: 0
Видно, что все ядра поочередно учавствуют в обработке прерываний от одного
устройства.
Или я не прав?
Подробная информация о списке рассылки Sysadmins