ロック競合によるCPU高負荷
複数のスレッドが共有リソースを奪い合うと、システムは有用な処理ではなく調整のためにCPUを消費してしまいます。
Common symptoms
- CPUは高いがスループットが低い
- 並列度を上げると状況が悪化する
- レイテンシのスパイクが予測不能
Likely causes
- ミューテックスまたはロック競合
- 高負荷下での共有データ構造
- クリティカルセクションが広すぎる
Evidence to look for
perf がスピンまたは待機関数を示している
コンテキストスイッチがレイテンシと相関している
スレッド数を減らすとスループットが改善する
What it usually means
システムが生産的な処理ではなくロックの奪い合いに追われている状態です。
What to do next
- 1クリティカルセクションを狭める
- 2共有状態へのアクセスを減らす
- 3ホットパスにロックフリーデータ構造の使用を検討する
See what's causing your CPU
cpum.ai turns CPU, process, disk, and memory signals into plain-English explanations with evidence.
Open cpum.ai