Measuring Job Efficiency
45 Minutes
Objectives
- Compare the resources a job requested with what it used, using
sacctandseff. - Profile a job to see how its CPU, memory and I/O use change over time.
- Run commands as job steps, to measure each part of a job separately.
Prerequisite
- You can write and submit a batch script, and check on it with
squeueandsacct. These are covered in the Introduction to HPC tutorials.
Set up¶
Check a finished job¶
What would you request next time?
Solution
#
Reading seff
seff reports Avg CPU Utilisation: 26% for a job that requested 4 CPUs. What does that mean?
See resource use over time¶
What stands out?
Solution
Run commands as job steps¶
#
Job steps
Inside a batch script, what does putting srun in front of a command do?
What the profile tells us¶
Keypoints
sacctandseffcompare what a job requested with what it used, but only as totals and averages.- Profiling shows how use changes over time, and job steps split it by command.
- Different parts of a job can need different resources.
What next
- Next lesson: Loops and Variables.
- For reference: checking job efficiency and Slurm Native Profiling.