2017-03-18 8 views
0

以下はipython-python(マルチプロセッシング)のベンチマーク中にCPU時間を分析する方法は?

シングルスレッドで%の時間を使用してプロファイリングした後の結果である: CPU時間:ユーザー6m44s SYS 1.78s総6m46s 壁時間:5m19s

4スレッド: CPU時間:ユーザー10m12s sys 2.83s合計10m15s ウォールタイム:4m14s

マルチスレッドコードでCPU時間を短くするべきですか? また、壁の時間は合計経過時間であるため、CPU時間は壁の時間より長くなる可能性があります。これらの用語を明確にしてください。

答えて

1

CPU時間は、すべてのCPUがタスクに費やす時間ではありません。したがって、cpu1がタスクに2分を費やし、cpu2が同じタスクで3分を費やした場合、CPU時間は1 + 3 = 4になります。

したがって、マルチスレッドプログラムでは、CPU時間は通常壁時間。

これで、シングルスレッドプログラムで同じ保留がなぜ発生するのかという質問をすることがあります。その答えはおそらく、たとえあなたのコードが明示的に並列処理を使用していなくても、おそらく使用するライブラリがあります。

関連する問題