For each cluster:
Savings = Avoidable Idle Time ร Hourly Cost
Where:
- Avoidable Idle Time (minutes) = estimated minutes the cluster kept running after it became idle, beyond the recommended termination window.
- Hourly Cost = DBU cost + (optional) cloud compute cost per hour.
Most environments donโt have a clean โidle_startedโ event, so a robust method is:
Identify job activity or command activity windows
Find gaps between activity windows while the cluster was still running
Any gap longer than recommended auto-termination implies waste beyond the recommended threshold
Example definition
For each โrunning sessionโ of a cluster:
If there is a gap between last activity and next activity (or shutdown) of G minutes
Then the avoidable portion is:
avoidable minutes=maxโก(0,โ
โGโrecommended_autoterm_minutes)\text{avoidable minutes} = \max(0,\; G - \text{recommended\_autoterm\_minutes})avoidable minutes=max(0,Gโrecommended_autoterm_minutes)