CPU使用量は決して100%にすることはできません。

CPU使用量は決して100%にすることはできません。

6つのHandbrakeインスタンスでビデオをエンコードしましたが、CPU使用率は85%を超えませんでした。問題を診断する理由/方法は何ですか?

ベストアンサー1

すべての非対話型コンピューティングタスクは、最終的に一部のリソースが100%利用され、他のリソースが完全に利用されないボトルネックを発見します。

ここに関連する一般的なリソースは、CPU、バス帯域幅、メモリ帯域幅、およびディスク帯域幅です。システムがより複雑な場合は、より多くのものがある可能性があります(GPU使用率、GPU帯域幅など)。さらに、バス帯域幅とメモリ帯域幅は同じであり得る。

さらに、ディスクI / OとCPU使用率は相互に依存する可能性があるため、ディスクからデータがロードされるまでCPUは​​操作を開始できず、CPUが新しいデータコンピューティングを完了するまでディスク書き込みは開始されません。この場合、アプリケーションの助けを借りて、将来の読み取りを予測し、データを事前バッファリングするか、データが完全に書き込まれる前に新しい計算を開始すると、パフォーマンスの向上に役立ちます。または、互いに依存しない複数のインスタンスを実行すると、あるインスタンスがCPUを使用し、別のインスタンスがディスクI / Oを実行できます。

CPU使用率が85%にすぎない場合は、ディスク帯域幅を完全に活用したり、ディスクバッファリングが不足してCPUが動作しなくなる可能性があります。 Linuxでは、atopディスク帯域幅の確認などのツールを使用できます。まだ100%でない場合は、別のインスタンスを追加して、別のインスタンスでCPUとディスクを並列に使用して違いを補うことができることを願っています。しかし、おそらくそうではないでしょう、そしておそらく状況はより速くなりません。

おすすめ記事