ボトルネックはどこにありますか: RAM、CPU、それともディスク?

ボトルネックはどこにありますか: RAM、CPU、それともディスク?

32 コア、64 スレッド、128 GB RAM、内蔵 SSD を搭載したシステムがあります。

64 のデータ マイニング/シミュレーション ジョブを並行して実行しています。各ジョブはディスクから 1 GB をロードし、約 5 ~ 10 分間実行されます。

CPU、ディスク、RAM のどれがボトルネックになっているのかを知りたいです。atop/htop/iotop の出力はここにありますが、それを正しく解釈する方法がわかりません。ボトルネックになっている場所についてアドバイスをいただけませんか?

ディスクによってボトルネックになっているとは思いません (これは iotop の素人の読み方です) が、atop/htop を読み取って、ボトルネックになっているのが RAM (帯域幅、レイテンシのチャネル数など) なのか CPU なのかを判断する方法がわかりません。

出力の上部:https://i.stack.imgur.com/5fv35.jpg

htop出力:https://i.stack.imgur.com/kmLgC.jpg

iotop 出力:https://i.stack.imgur.com/o6Ezk.jpg

注: クロスポストhttps://www.reddit.com/r/linuxquestions/comments/eo4s71/interpreting_atophtopiotop_output/

答え1

RAM 使用率は約 73% で、スワップ領域はほとんど使用されていません。また、すべてのコアが最大限に使用されているようです。したがって、RAM のサイズと速度は適切であり、ボトルネックとなっているのは間違いなく CPU です。

タスクの説明から判断すると、ディスク速度は CPU や RAM のように常に使用されているわけではないので、必ずしもボトルネックになるわけではありません。iotopディスク速度は 14 MB/秒と表示されていますが、SSD を使用しているので、特に読み取り時にはそれよりもはるかに高速になるはずです。スクリーンショットはディスク使用量がピークのときに撮影されたものではないと思います。そうでなければ、その点を調べたほうがよいかもしれません。

関連情報