いくつかのコマンドラインプログラムは、PCでは少し遅いようです。どうすればトラブルシューティングできますか?たとえば、このPCでは、git status
の実行に0.5秒以上かかります。
PS> for (;;) { Measure-Command { git status } | findstr TotalSeconds }
TotalSeconds : 0.7119173
TotalSeconds : 0.6040415
TotalSeconds : 0.6117674
TotalSeconds : 0.5779911
TotalSeconds : 0.6069439
...
(別のPCでは、上記は0.05秒で実行されます。)私が気付いた他のいくつかのコマンドも、少し時間がかかりすぎます。
PS> for (;;) { Measure-Command { node --version } | findstr TotalSeconds }
TotalSeconds : 0.4630501
TotalSeconds : 0.3144418
TotalSeconds : 0.2842615
TotalSeconds : 0.2808537
(他のPCは0.02秒でそれを実行します。)
良い尺度のためにもう1つ:
PS> for (;;) { Measure-Command { npm --version } | findstr TotalSeconds }
TotalSeconds : 3.4839123
TotalSeconds : 3.1501913
TotalSeconds : 2.9817682
TotalSeconds : 3.0423125
これらのプログラムを実行すると、CPUの4つのコアの1/4をペギングしているように、CPU使用率が急上昇します。 CPU使用率は、他のプロセスではなく、自分自身を呼び出したプロセス(Git.exeまたはNode.exeなど)でのみ上昇します。
PCがほとんど何もできないようになるまで、できるだけ多くのWindowsサービスを無効にしようとしましたが、それでも上記と同様のタイミングが得られます。ウイルス対策、ファイアウォール、およびBeyondTrustが無効になっていることを確認しましたが、問題は解決しません。 ATIグラフィックスを持っていません(Intel HD 520のみ)。
Powershell、cmd.exe、bashのいずれから呼び出しても、タイミングは同じです。
セーフモードで問題は解決します。
正常に起動した後、不要なプロセスをすべて停止しようとしました。遅さは持続します。必須ではないすべてのWindowsサービスを無効にしてみました。遅さは持続します。デバイスマネージャで必須ではないハードウェアをすべて無効にしてみました。遅さは持続します。
誰かが次のトラブルシューティング手順を提案できますか?これらの問題の原因が他のアプリの速度も低下させているのではないかと心配しています。
結局、それは確かにSymantec EndpointProtectionでした。サービスを無効にしても問題は解決しないようですが、次のようになります。これを実行して、問題が終了することを確認します。
"%ProgramFiles(x86)%\Symantec\Symantec Endpoint Protection\smc.exe" -stop
ただし、これにより、Symantec EndpointProtectionがなくなります。
ノートンライフロックで特定のプログラムをホワイトリストに登録する方法があるかもしれませんが、それが何であるかはわかりません。
編集:その後、実際の遅延は、SEPの大部分ではなく、アプリケーションとデバイスの制御によるものであることがわかりました。これは、下部にある[設定]> [クライアント管理]> [一般]で無効にできます。
(さらに深く、アプリケーションとデバイス制御の一部にのみ実験的な機能があり、プロセスの開始ごとに遅延が発生するようです。それが何であるかはわかりません。)