I/Oバウンド、CPUバウンド、メモリバウンド
プログラムの実行速度が、どこが制約になるかという感じ
〇〇バウンドといったときは、〇〇がプログラムの実行速度のボトルネックになっているということ
I/O(Input/Output、入出力)が原因で制約を受ける
ストレージの読み書き速度
ファイルの読み書き
ネットワーク通信の読み書き
etc
CPUの処理速度が制約となる
メモリの容量やアクセス速度によって制限を受ける
I/Oバウンドの場合の改善方法
複数のIO処理を1回にまとめるようなバッチ処理でIOを削減 SSDなどの高速なストレージを使用する
CPUバウンドの場合の改善方法
より計算量が少ないアルゴリズムを選択するとか、よりよいデータ構造を選択するとか 性能の良いCPUに変える
メモリバウンドの場合の改善方法
メモリ使用量を最適化
データ構造の見直し
不要なデータを早めに破棄
メモリの増設、高性能なメモリに変える
確認用
Q. ○○バウンドとは
Q. IOバウンドとは
Q. CPUバウンドとは
Q. メモリバウンドとは
関連
参考
メモ