Open-sourcing oomd, a new approach to handling OOMs

This post introduces oomd, a new userspace Out-Of-Memory (OOM) killer designed to be a more reliable and flexible replacement for the traditional Linux kernel OOM killer. Oomd leverages Pressure Stall Information (PSI) and cgroup2 to monitor system resource usage and proactively take corrective actions before a system-wide OOM occurs. It features pre-OOM hooks for early visibility and a custom plugin system to allow workload-specific handling policies, including a configurable 'kill list' for prioritizing process termination based on memory pressure and consumption. The post details synthetic test results demonstrating oomd's effectiveness in preventing livelocks and degraded performance in various OOM scenarios, and announces its open-sourcing.
More from the Site Reliability and Outage Management trail
- Lights Out, Systems On: Validating Instant Power Loss Readiness
- DrP: Meta’s Root Cause Analysis Platform at Scale
- Zoomer: Powering AI Performance at Meta’s Scale Through Intelligent Debugging and Optimization
- Diff Risk Score: AI-driven risk-aware software development
- How Meta keeps its AI hardware reliable