LINUX.ORG.RU

прерывания и как с ними быть? если система тормозит.

 , , ,


0

1
% cat /proc/interrupts                                                                                                                                                              :(
           CPU0       CPU1       CPU2       CPU3       CPU4       CPU5       CPU6       CPU7       
  0:         20          0          0          0          0          0          0          0   IO-APIC-edge      timer
  1:       8143          0          0          0          0          0          0          0   IO-APIC-edge      i8042
  8:          1          0          0          0          0          0          0          0   IO-APIC-edge      rtc0
  9:       5863          0          0          0          0          0          0          0   IO-APIC-fasteoi   acpi
 12:    1394287          0          0          0          0          0          0          0   IO-APIC-edge      i8042
 16:        489          0          0          0          0          0          0          0   IO-APIC-fasteoi   ehci_hcd:usb3
 17:     200053          0          0          0          0          0          0          0   IO-APIC-fasteoi   mmc0, ath9k
 23:      48071          0          0          0          0          0          0          0   IO-APIC-fasteoi   ehci_hcd:usb4
 41:          1          0          0          0          0          0          0          0   PCI-MSI-edge      xhci_hcd
 42:          0          0          0          0          0          0          0          0   PCI-MSI-edge      xhci_hcd
 43:          0          0          0          0          0          0          0          0   PCI-MSI-edge      xhci_hcd
 44:          0          0          0          0          0          0          0          0   PCI-MSI-edge      xhci_hcd
 45:          0          0          0          0          0          0          0          0   PCI-MSI-edge      xhci_hcd
 46:          0          0          0          0          0          0          0          0   PCI-MSI-edge      xhci_hcd
 47:          0          0          0          0          0          0          0          0   PCI-MSI-edge      xhci_hcd
 48:          0          0          0          0          0          0          0          0   PCI-MSI-edge      xhci_hcd
 49:     172592          0          0          0          0          0          0          0   PCI-MSI-edge      ahci
 50:         14          0          0          0          0          0          0          0   PCI-MSI-edge      mei_me
 51:     101646          0          0          0          0          0          0          0   PCI-MSI-edge      snd_hda_intel
 52:     941654          0          0          0          0          0          0          0   PCI-MSI-edge      i915
 53:     322367          0          0          0          0          0          0          0   PCI-MSI-edge      enp2s0f0-0
 54:     260250          0          0          0          0          0          0          0   PCI-MSI-edge      enp2s0f0-1
 55:     170247          0          0          0          0          0          0          0   PCI-MSI-edge      enp2s0f0-2
 56:      55479          0          0          0          0          0          0          0   PCI-MSI-edge      enp2s0f0-3
 57:      56330          0          0          0          0          0          0          0   PCI-MSI-edge      enp2s0f0-4
NMI:         90         49         98         72         91         48         83         45   Non-maskable interrupts
LOC:     694091     232040     637250     289138     707524     230728     764332     247071   Local timer interrupts
SPU:          0          0          0          0          0          0          0          0   Spurious interrupts
PMI:         90         49         98         72         91         48         83         45   Performance monitoring interrupts
IWI:      12571       2524      13347       2907       5667       2510       4850       2391   IRQ work interrupts
RTR:          6          0          0          0          0          0          0          0   APIC ICR read retries
RES:     237362      61922      81446      51884      92845      34214      70944      57496   Rescheduling interrupts
CAL:         81        179        161        180        148        155        185        182   Function call interrupts
TLB:      27558      34629      49771      23992      30947      23593      21878      28158   TLB shootdowns
TRM:          0          0          0          0          0          0          0          0   Thermal event interrupts
THR:          0          0          0          0          0          0          0          0   Threshold APIC interrupts
MCE:          0          0          0          0          0          0          0          0   Machine check exceptions
MCP:         29         29         29         29         29         29         29         29   Machine check polls
ERR:          0
MIS:          0

top
top - 23:52:16 up  2:25,  4 users,  load average: 0,70, 0,65, 0,72
Tasks: 200 total,   1 running, 199 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0,5 us,  9,3 sy,  0,0 ni, 89,2 id,  1,0 wa,  0,0 hi,  0,0 si,  0,0 st
KiB Mem:   5966500 total,  4486164 used,  1480336 free,   240772 buffers
KiB Swap:        0 total,        0 used,        0 free.  1892576 cached Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                            
 5411 root      20   0       0      0      0 S  70,4  0,0  11:39.03 kworker/u16:3                                                                      
   18 root      rt   0       0      0      0 S   6,6  0,0   0:44.82 migration/2                                                                        
 4157 ivn       20   0 2753572 997,7m  75088 S   4,0 17,1  29:38.19 firefox                                                                            
 2184 root      20   0   55840   4376   2728 S   0,7  0,1   0:04.78 syslog-ng                                                                          
 2348 root      20   0  581220 171720 144992 S   0,3  2,9   5:35.73 X                                                                                  
 2521 tor       20   0   44244  23712   6548 S   0,3  0,4   0:04.73 tor                                                                                
 3195 ivn       20   0 3385876 134676  71900 S   0,3  2,3   1:05.18 krunner                                                                            
 3556 ivn       20   0  438252  35704  25692 S   0,3  0,6   0:07.85 yakuake                                                                            
 3951 ivn       20   0  122888  17852   4912 S   0,3  0,3   1:41.67 compton                                                                            
 6698 ivn       20   0   16600   1596   1096 R   0,3  0,0   0:00.02 top                                                                                
    1 root      20   0   25936   3548   1856 S   0,0  0,1   0:00.85 systemd                                                                            
    2 root      20   0       0      0      0 S   0,0  0,0   0:00.00 kthreadd                                                                           
    3 root      20   0       0      0      0 S   0,0  0,0   0:01.53 ksoftirqd/0                                                                        
    5 root       0 -20       0      0      0 S   0,0  0,0   0:00.00 kworker/0:0H                                                                       
    7 root      rt   0       0      0      0 S   0,0  0,0   0:10.88 migration/0                                                                        
    8 root      20   0       0      0      0 S   0,0  0,0   0:06.82 rcu_preempt                                                                        
    9 root      20   0       0      0      0 S   0,0  0,0   0:00.00 rcu_bh                                                                             
   10 root      20   0       0      0      0 S   0,0  0,0   0:00.00 rcu_sched                                                                          
   11 root      rt   0       0      0      0 S   0,0  0,0   0:00.05 watchdog/0                                                                         
   12 root      rt   0       0      0      0 S   0,0  0,0   0:00.04 watchdog/1                                                                         
   13 root      rt   0       0      0      0 S   0,0  0,0   0:02.36 migration/1                                                                        
   14 root      20   0       0      0      0 S   0,0  0,0   0:00.11 ksoftirqd/1                                                                        
   15 root      20   0       0      0      0 S   0,0  0,0   0:00.00 kworker/1:0                                                                        
   16 root       0 -20       0      0      0 S   0,0  0,0   0:00.00 kworker/1:0H                                                                       
   17 root      rt   0       0      0      0 S   0,0  0,0   0:00.03 watchdog/2                                                                         
   19 root      20   0       0      0      0 S   0,0  0,0   0:00.45 ksoftirqd/2           

иногда система подтормаживает. начинает загружать систему один или несколько процессов kworker. нагуглил, что мою многоядерную систему не оптимально использую. Подскажите как мне можно безболезненно поэксперементировать со всем этим?

★★★

Я бы сказал, что тормозит твою систему браузер.

tailgunner ★★★★★ ()
Ответ на: комментарий от post-factum

ok, спасибо, слеп как муха. истории успеха есть? оно просто работает?

LiBer ★★★ ()
Ответ на: комментарий от tailgunner

4,0%cpu 17,1%mem 29:38.19 firefox
серьезно?
памяти иногда до 1.5 гига выжирает, но мне не жалко, если быстро работает. проц вроде не сильно грузит.

LiBer ★★★ ()
Ответ на: комментарий от LiBer

Должно бы просто работать. Только вот твой kworker — это что-то не то, о чём ты думаешь.

post-factum ★★★★★ ()
Ответ на: комментарий от LiBer

серьезно?

Да.

11:39.03 kworker/u16:3                                                                      
29:38.19 firefox 

если добавить к этому расходы X-сервера, получим в 3 раза больше, чем расходы kworker.

А если хочешь узнать, обработка каких прерываний съедает время... боюсь, придется изучать ftrace. Навскидку - как-то много прерываний от Ethernet.

tailgunner ★★★★★ ()

Как правило, проблема с прерываниями - это проблема с сетевыми интерфейсами (кто работал в провайдерской сфере с софт-роутерами самосборными подтвердят). Редко бывает, что грузит что-то другое, но бывает. Решением проблемы может быть обновление драйвера с поддержкой NAPI и/или замена сетевой карты, которая это поддерживает (там генерируется одно прерывание на несколько пакетов, а не на каждый пакет, то есть у сетевушки должен быть собственный буфер или умение самостоятельно заполнять несколько DMA объёмов под некоторое количество пакетов). Ну и irqbalance, естественно. Хотя, мне он редко помогал или я не научился его готовить - в итоге написал свой скрипт, распределяющий прерывания по ядрам.

nickleiten ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.