Ticket 2432

Summary: Adding MaxResvJobs
Product: Slurm Reporter: Gary Skouson <gskouson>
Component: LimitsAssignee: Unassigned Developer <dev-unassigned>
Status: OPEN --- QA Contact:
Severity: 5 - Enhancement    
Priority: ---    
Version: 16.05.x   
Hardware: Linux   
OS: Linux   
Site: -Other- Alineos Sites: ---
Atos/Eviden Sites: --- Confidential Site: ---
Coreweave sites: --- Cray Sites: ---
DS9 clusters: --- HPCnow Sites: ---
HPE Sites: --- IBM Sites: ---
NOAA SIte: --- NoveTech Sites: ---
Nvidia HWinf-CS Sites: --- OCF Sites: ---
Recursion Pharma Sites: --- SFW Sites: ---
SNIC sites: --- Tzag Elita Sites: ---
Linux Distro: --- Machine Name:
CLE Version: Version Fixed:
Target Release: --- DevPrio: ---
Emory-Cloud Sites: ---
Attachments: Initial patch to implement this feature
Second patch to clean some minor issues.
Fix a couple of places I'd missed before
Add max_resv_jobs_pu and max_resv_jobs_pa stuff to qos

Description Gary Skouson 2016-02-09 09:16:23 MST
I'd like to have an attribute like MaxResvJobs to allow a limit of the number of jobs that can be running before we stop reserving slots in the backfill map for the remaining pending jobs.

This would provide functionality similar to the soft job limit provided by Moab.
Comment 1 Gary Skouson 2016-02-09 09:18:26 MST
Created attachment 2714 [details]
Initial patch to implement this feature
Comment 2 Tim Wickberg 2016-02-09 09:22:13 MST
(Just fixing up a few status flags.)
Comment 3 Gary Skouson 2016-02-10 01:30:46 MST
Created attachment 2717 [details]
Second patch to clean some minor issues.

This patch moves the new value in the enum from slurm.h.in to the end of the list.  It also fixes the long lines in sacctmgr.c
Comment 4 Gary Skouson 2016-02-11 01:14:31 MST
Created attachment 2725 [details]
Fix a couple of places I'd missed before

This should add a fix to a couple of functions that were dealing with associations and I had left out stuff to deal with max_resv_jobs.

I did a quick search through the code for other places where max_jobs was dealt with to see if I also needed to add code for max_resv_jobs, but didn't notice anything else.
Comment 5 Gary Skouson 2016-02-22 02:11:42 MST
Created attachment 2754 [details]
Add max_resv_jobs_pu and max_resv_jobs_pa stuff to qos

I put in code changes to include a max_resv_jobs_pu and max_resv_jobs_pa parameter in the QOS code.

Seems to mostly work.  I'm not sure I got the logic right for which things should override others, but I tried to follow the logic from the max_jobs_pu and max_jobs_pa stuff, so I think it's mostly the same as those.