Memory Pressure - CI/CD用語集の定義
memory pressureとは、利用可能なRAMが不足し、カーネルがページを積極的に回収(cacheの破棄、スワップ)せざるを得ず、それでも追いつかない場合にout-of-memory killerを呼び出す状態のことです。OOM killに先立って発生し、page-faultと回収アクティビティの増加として現れます。
CIにおいて
memory pressureは、buildを終わらせるよりずっと前に遅くします。依存関係を保持していたpage cacheが追い出され、次のファイル読み取りがディスクにヒットするからです。Linuxでは、/proc/pressure/memoryのPSIメトリクスで監視できます。最終段階はOOM killで、exit code 137を生成します。runnerを適切なサイズにするか、並列度を下げることで、pressureが軽減されます。
関連ガイド
OOM (Out of Memory) - CI/CD Glossary DefinitionOOM (Out of Memory): **OOM** is when a process exceeds available memory and the kernel kills it. On CI runner…
CPU Throttling - CI/CD Glossary DefinitionCPU Throttling: CPU throttling is when the kernel (via cgroups CFS quota) caps a container or process to its…
SIGKILL - CI/CD Glossary DefinitionSIGKILL: **SIGKILL** (signal 9) force-terminates a process immediately and cannot be caught. In CI it usually…