
t0mmy
2020年12月30日に参加
学習履歴詳細
Linux の仕組み 増量改訂版 3章 読了
やったこと
- Linux の仕組み 増量改訂版 3章を読了
学んだこと
- sar で取得できる %nice の値は、「ユーザモードでの処理時間の内、nice値を変更した処理時間の割合」という意味
- 経過時間(real) = 何もしていない時間(sleepなど) + ユーザモードでの実行時間(user) + システムコールによるカーネルの実行時間(sys)
- 論理CPUをたくさん積んでいるマシンを使用する場合、十分な数のプロセスを実行して初めて、スループットが向上する
- この時、むやみにプロセスを増やしても、スループットは向上しない
- 論理CPU数は、workerthread パターンの worker 数を決める際の参考値になりそう
- あるプロセスのターンアラウンドタイム(処理開始から終了までの時間)が低い場合、「別プロセスが稼働していて、コンテキストスイッチが発生している」という可能性も疑うこと
メモ
time コマンドで採取できる経過時間
経過時間(real) = 何もしていない時間(sleepなど) + ユーザモードでの実行時間(user) + システムコールによるカーネルの実行時間(sys)
コンテキストスイッチ
CPU 切り替えのこと。
あるプロセスのターンアラウンドタイム(処理開始から終了までの時間)が低い場合、「別プロセスが稼働していて、コンテキストスイッチが発生している」という可能性も疑うこと。
nice 値
nice 値を変更すると、確かにプロセスの実行順序が変化する。
sar で取得できる %nice の値は、「ユーザモードでの処理時間の内、nice値を変更した処理時間の割合」という意味。
論理CPUを複数使用した並列処理
論理CPUをたくさん積んでいるマシンを使用する場合、十分な数のプロセスを実行して初めて、スループットが向上する。
この時、むやみにプロセスを増やしても、スループットは向上しない。
- 論理CPU 4つに対して4プロセス が最高性能
- これ以上プロセス増やしても、スループットは向上しない
- 増やしたプロセスはCPU待ち状態になるだけ
Linux
2023年03月12日(日)
2.0時間