Linux Interrompe Questão

3

Existe uma maneira simples de determinar se as interrupções são um problema de desempenho? Eu tenho o seguinte de cat / proc / interrupts mas realmente não tenho um histórico deste servidor, então eu não sei se isso poderia estar causando problemas. Eu encontrei a definição de cada coluna no link mas don ' t parecem encontrar quaisquer orientações sobre se os resultados são aceitáveis ou não.

       CPU0       CPU1       CPU2       CPU3       CPU4       CPU5       CPU6       CPU7
 0: 1408788887          0          0          0          0          0          0          0    IO-APIC-edge  timer
 1:          3          0          0          0          0          0          0          0    IO-APIC-edge  i8042
 8:          1          0          0          0          0          0          0          0    IO-APIC-edge  rtc
 9:          0          0          0          0          0          0          0          0   IO-APIC-level  acpi
12:          4          0          0          0          0          0          0          0    IO-APIC-edge  i8042
14:        476   92736034  560949599   89233642          0          0          0          0    IO-APIC-edge  ide0
66:         81          0          0          0          0          0          0          0   IO-APIC-level  ehci_hcd:usb1, uhci_hcd:usb2, uhci_hcd:usb4
74:        153   62468419  147960075   25257462          0          0          0          0   IO-APIC-level  uhci_hcd:usb3, uhci_hcd:usb5
82: 1054378386          0          0          0          0          0          0          0         PCI-MSI  eth0
169:       8343 1516025027  954152248    6501060          0  757271678 1872714173    2565826   IO-APIC-level  megasas
NMI:   28336831   18526902   35866900   13915052   25165724   26928152   21827791   19303613
LOC: 1408788527 1408756844 1408788059 1408788084 1408788124 1408787843 1408787972 1408787711
ERR:          0
MIS:          0
    
por user739866 12.01.2012 / 19:14

3 respostas

1

A maior contagem de interrupções que você ainda tem em média para:

1872714173 interrupts / 83014987.85 seconds = 23 intr/s

que não é de todo assustador. Do jeito que estão, essas estatísticas são perfeitamente aceitáveis. Um pico de 7500 intr / s também é aceitável em um sistema ocupado.

O que quer que tenha levado você a concluir que as interrupções são uma métrica relevante, eu daria um passo atrás e reconsideraria. Estes são mais frequentemente um efeito de um problema (problema completamente diferente) do que uma única causa de problema. A única situação que vem à mente seria algum dispositivo fraudulento em um ônibus.

Se você tiver sar reports, procure alguma outra métrica que tenha um pico no momento de baixo desempenho (execute fila? paginação? disk I / O?) e reinicie sua análise a partir daí.

    
por 12.01.2012 / 20:19
1

O problema de interrupção é uma das causas do alto uso da CPU do sistema; se você não parecer alto em valores% irq na saída do mpstat, tudo bem.

Se você tem a preocupação de que as interrupções sejam distribuídas de forma desequilibrada entre as CPUs, você precisa ativar o daemon irqbalance ou ajustá-lo manualmente por / proc / irq / * / smp_affinity

Mais em: link link

    
por 12.01.2012 / 23:34
0

Você deve ativar o daemon irqbalance para ajudar a distribuir as interrupções do temporizador sobre as CPUs disponíveis no servidor. Execute /sbin/service irqbalance start e verifique o sistema um pouco mais tarde.

    
por 12.01.2012 / 20:21