[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

load distribution per CPU



Всем привет,

Имеется ящик с процессором "Intel(R) Core(TM)2 Quad CPU    Q6600  @ 2.40GHz"
Инсталляция Etch amd64 с ядром 2.6.26-core2-amd64 (backport)

Проблема в том, что нагрузка не распределяется равномерно между ядрами. В то время как первое ядро загружено на 100%, остальные отдыхают на 87 примерно.
Характер нагрузки -- терминация пппое сессий (>1000) + mysql.

Прерывания не распределяются между ядрами !

server:/# cat /proc/interrupts
          CPU0       CPU1       CPU2       CPU3
 0:         36          0          0          0   IO-APIC-edge      timer
 1:          8          0          0          0   IO-APIC-edge      i8042
 8:          1          0          0          0   IO-APIC-edge      rtc0
 9:          0          0          0          0   IO-APIC-fasteoi   acpi
16: 0 0 0 0 IO-APIC-fasteoi uhci_hcd:usb4, ahci 17: 76 0 0 0 IO-APIC-fasteoi ide0, ide1 18: 0 0 0 0 IO-APIC-fasteoi uhci_hcd:usb3 19: 44641518 0 0 0 IO-APIC-fasteoi uhci_hcd:usb2, ata_piix, ata_piix, eth1
21:   46246974        422          0          0   IO-APIC-fasteoi   eth3
22: 193 0 0 0 IO-APIC-fasteoi HDA Intel 23: 0 0 0 0 IO-APIC-fasteoi uhci_hcd:usb1, ehci_hcd:usb5
1273: 2290156220          0          0          0   PCI-MSI-edge      eth0
1274:  532003458          0          0          0   PCI-MSI-edge      eth2
NMI:          0          0          0          0   Non-maskable interrupts
LOC: 3499690657  101451884   83962573   76629102   Local timer interrupts
RES:   16526462   16022276   16402552   16051127   Rescheduling interrupts
CAL:      43627      42308      35745      38946   function call interrupts
TLB:    3551429    3244464    2094809    2700859   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
server:/#


Имеется еще один ящик с железом поновее. На нем и нагрузка и прерывания распределяются равномерно:

server:/# ssh user@server2 'cat /proc/interrupts'
          CPU0       CPU1       CPU2       CPU3
 0:       1997       1973       1976       1987   IO-APIC-edge      timer
 1:          1          0          1          0   IO-APIC-edge      i8042
 8:          0          1          0          0   IO-APIC-edge      rtc0
 9:          0          0          0          0   IO-APIC-fasteoi   acpi
12:          2          0          0          2   IO-APIC-edge      i8042
16: 0 0 0 0 IO-APIC-fasteoi uhci_hcd:usb1 18: 0 0 0 0 IO-APIC-fasteoi uhci_hcd:usb3, ehci_hcd:usb5, uhci_hcd:usb7 19: 0 0 0 0 IO-APIC-fasteoi uhci_hcd:usb6, ide0, ide1 21: 0 0 0 0 IO-APIC-fasteoi uhci_hcd:usb2 23: 0 0 0 0 IO-APIC-fasteoi uhci_hcd:usb4, ehci_hcd:usb8
1272:  160723401  160486121  160786676  160502068   PCI-MSI-edge      eth2
1273:  635355568  636393198  635203303  636454623   PCI-MSI-edge      eth1
1274:  290877702  290021095  290952980  289980421   PCI-MSI-edge      eth0
1275:   19917870   19824531   19928985   19818790   PCI-MSI-edge      ahci
NMI:          0          0          0          0   Non-maskable interrupts
LOC:  597673455  593601582  581710941  578993322   Local timer interrupts
RES:    2040904    1956861    2363243    2485440   Rescheduling interrupts
CAL:      81397      78067      75621      76000   function call interrupts
TLB:    1874481    3039812    1712694    2825544   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
server:/#



Как побороть проблему с первым ящиком ? Пробовал говорить каждому прерыванию сетевой карты, что мол все 4 ядра могут его обслуживать -- безрезультатно.

мать на первом ящике:
       Manufacturer: ASUSTeK Computer INC.
       Product Name: P5B-Premium
       Version: Rev 1.xx
       Serial Number: MB-1234567890

показания TOPa на первом ящике:

Cpu0 : 1.0%us, 0.3%sy, 0.0%ni, 80.7%id, 0.0%wa, 2.7%hi, 15.3%si, 0.0%st Cpu1 : 0.3%us, 1.3%sy, 0.0%ni, 98.4%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Cpu2 : 0.6%us, 0.6%sy, 0.0%ni, 98.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Cpu3 : 1.6%us, 0.6%sy, 0.0%ni, 97.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

iostat:

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          2,98    0,00    6,93    0,28    0,00   89,80

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda              32,16        18,14       690,07   10957688  416916080
sda1             32,16        18,14       690,07   10957296  416916080
sdb              32,14        18,62       690,07   11250527  416916080
sdb1             32,14        18,62       690,07   11250135  416916080
md0              32,48        36,76       649,86   22206119  392618256
dm-0              0,10         0,96         8,28     579816    5003558
dm-1              0,68         0,47         4,95     281608    2989136
dm-2             31,70        35,33       636,63   21343583  384625562


Кто-нибудь боролся с подобными проблемами ?
Заранее благодарен.


Reply to: