efficiency¶
Analyze job resource efficiency (inspired by Slurm's seff).
Usage¶
Arguments¶
| Argument | Description |
|---|---|
JOB_ID |
Slurm job ID to analyze |
Examples¶
Basic usage¶
Output:
╭──────────────── Job Efficiency Report ────────────────╮
│ │
│ Job ID: 12345678 │
│ Job Name: train_model │
│ User: alice │
│ Account: research │
│ State: COMPLETED │
│ │
│ CPU Efficiency: 78.5% ████████░░ │
│ Memory Efficiency: 45.2% █████░░░░░ ! Low │
│ │
│ Cores requested: 32 │
│ CPU time used: 12h 30m (of 16h allocated) │
│ │
│ Memory requested: 128GB │
│ Memory used: 58GB (peak) │
│ │
╰───────────────────────────────────────────────────────╯
Efficiency thresholds¶
| Metric | Good | Warning | Low |
|---|---|---|---|
| CPU | ≥50% | 30-50% | <30% |
| Memory | ≥30% | 20-30% | <20% |
Use cases¶
- Debugging - Why did my job fail (OOM)?
- Optimization - Am I requesting too many resources?
- Education - Help users right-size their jobs
Tips for improving efficiency¶
CPU efficiency low?¶
- Your job may be I/O bound
- Consider fewer cores with faster storage
- Check for serial bottlenecks in your code
Memory efficiency low?¶
- Request less memory in your submission
- Use
--mem-per-cpuinstead of--mem - Profile your application's memory usage