どのIRQがCPU使用率を高めるかはどうすればわかりますか?

どのIRQがCPU使用率を高めるかはどうすればわかりますか?

ディスクコントローラの障害により、サーバーをあるマザーボードから別のマザーボードに移動しました。

それ以来、コアの1つの25%が常にIRQを受けていることがわかりましたが、どのIRQがこの問題を引き起こしているかを知る方法はありません。

カーネルは Linux 2.6.18-194.3.1.el5(CentOS) です。mpstat -P ALL示す:

18:20:33     CPU   %user   %nice    %sys %iowait    %irq   %soft  %steal   %idle    intr/s
18:20:33     all    0,23    0,00    0,08    0,11    6,41    0,02    0,00   93,16   2149,29
18:20:33       0    0,25    0,00    0,12    0,07    0,01    0,05    0,00   99,49    127,08
18:20:33       1    0,14    0,00    0,03    0,04    0,00    0,00    0,00   99,78      0,00
18:20:33       2    0,23    0,00    0,02    0,03    0,00    0,00    0,00   99,72      0,02
18:20:33       3    0,28    0,00    0,15    0,28   25,63    0,03    0,00   73,64   2022,19

これは /proc/interrupt です

cat /proc/interrupts 
           CPU0       CPU1       CPU2       CPU3       
  0:        245          0          0    7134094    IO-APIC-edge  timer
  8:          0          0         49          0    IO-APIC-edge  rtc
  9:          0          0          0          0   IO-APIC-level  acpi
 66:         67          0          0          0   IO-APIC-level  ehci_hcd:usb2
 74:     902214          0          0          0         PCI-MSI  eth0
169:          0          0         79          0   IO-APIC-level  ehci_hcd:usb1
177:          0          0          0    7170885   IO-APIC-level  ata_piix, b4xxp
185:          0          0          0      59375   IO-APIC-level  ata_piix
NMI:          0          0          0          0 
LOC:    7104234    7104239    7104243    7104218 
ERR:          0
MIS:          0

高いCPU使用率を引き起こすIRQを確認するには?

編集する:

出力は以下から来ます。dmesg | grep -i b4xxp

wcb4xxp 0000:30:00.0: probe called for b4xx...
wcb4xxp 0000:30:00.0: Identified Wildcard B410P (controller rev 1) at 00012000, IRQ 177
wcb4xxp 0000:30:00.0: VPM 0/1 init: chip ver 33
wcb4xxp 0000:30:00.0: VPM 1/1 init: chip ver 33
wcb4xxp 0000:30:00.0: Hardware echo cancellation enabled.
wcb4xxp 0000:30:00.0: Port 1: TE mode
wcb4xxp 0000:30:00.0: Port 2: TE mode
wcb4xxp 0000:30:00.0: Port 3: TE mode
wcb4xxp 0000:30:00.0: Port 4: TE mode
wcb4xxp 0000:30:00.0: Did not do the highestorder stuff
wcb4xxp 0000:30:00.0: new card sync source: port 3

ベストアンサー1

さて、あなたはどのIRQがその数を担当するのかを具体的に知る方法を尋ねているので、数はmpstatかなり同じであるため、ローカル割り込みタイマー(LOC)ではないと仮定することができますが、mpstatこれらのCPUの一部はゼロであるとマークされます。 %割り込み。

残っているのはIRQ 0(システムタイマーでは何もできません)とIRQ 177(b4xxpドライバに関連)です。

私の考えでは、IRQ 177が原因のようです。

これにより問題が発生し、表示される動作を変更するには、次の手順を試してください。

  1. カードを使用するソフトウェアを無効にし、邪魔にならないようにしてください。

  2. システムからカードを取り外し、ドライバーを取り外して改善があるかどうかを確認します。

  3. カードを別のスロットに移動して、役に立つことを確認してください。

  4. ソフトウェアの更新されたドライバまたはパッチを確認してください。

これが問題ではなく、ただ好奇心に過ぎない場合は続けてください。 :)

おすすめ記事