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.
Created attachment 2714 [details] Initial patch to implement this feature
(Just fixing up a few status flags.)
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
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.
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.