ネットワークファイルコピー中にWindows Server 2008 カーネルが高負荷(調査編)で以下のように書いた。
今回は原因追求まではいかなかったが、Networkドライバの問題ではないかと考えられた。
最新のドライバを探したがなさそうであったので、今回はここまでとする。なお、このマシンは、メインマシンからサブマシンに降格よていであるので、積極的に原因追求には至らないと思う。
しかし、その後、twitter で「ドライババージョンを」と指摘をいただきましたので、その後について書いてみる。
ドライバ更新
以前は、デバイスプロパティタブでドライバ更新を押し、最新がないことを確認したが、よくバージョンをみると数年前のドライバであった。
そこで、NIC 及び SATA のドライバを最新のものに入れ替え、念の為再起動もしておいた。
確認
先日同様に ファイルコピーを行って負荷を確認したところ、やはりCPU負荷が100%近くまで立ち上がる現象が確認できた。
以前と同様に、KernRateを用いプロファイルを行う事にする。
プロファイル
プロファイルを行うといかのような結果となった。
ProfileTime 4222 hits, 65536 events per hit -------- Module Hits msec %Total Events/Sec NTOSKRNL 1427 10765 33 % 8687401 TCPIP 598 10765 14 % 3640550 INTELPPM 585 10765 13 % 3561408 E1E6032E 463 10765 10 % 2818687 WIN32K 226 10765 5 % 1375860 VID 135 10765 3 % 821863 ----- Zoomed module NTOSKRNL.EXE (Bucket size = 16 bytes, Rounding Down) ------- - Percentage in the following table is based on the Total Hits for this Zoom Modul e ProfileTime 1427 hits, 65536 events per hit -------- Module Hits msec %Total Events/Sec ExpInterlockedPopEntrySList 161 10765 11 % 980148 KeReleaseSpinLockFromDpcLevel 125 10765 8 % 760984 KeSynchronizeExecution 113 10765 7 % 687930 PsGetCurrentProcessSessionId 99 10765 6 % 602699 IoAcquireRemoveLockEx 67 10765 4 % 407887 KeAcquireSpinLockAtDpcLevel 60 10765 4 % 365272 ExpInterlockedPushEntrySList 51 10765 3 % 310481 NtQueryInformationThread 50 10765 3 % 304393 ExAllocatePoolWithTag 47 10765 3 % 286130 KeSetEvent 40 10765 2 % 243515 KeRemoveQueueEx 35 10765 2 % 213075 ObReferenceObjectByHandle 31 10765 2 % 188724 memset 28 10765 1 % 170460
やはり NTOSKRNL が高く、排他/同期系のAPIが高く観測されている。
KernRate
ついでに KernRate について調べてみると、KrView - Kernrate Viewerのページに「注: Kernrate は廃止予定で、Windows の今後のリリースから削除されます。代わりに、Windows パフォーマンス解析ツールを使用してください。」と記述があった。今後は「Xpref」を推奨しているとのこと。
最後に
やはり、ドライバのつくりなどの問題であろうか。 今後も低優先度で現象改善について調査していきたいと思う。


コメントする