<div dir="ltr"><div dir="ltr"><div>Slurm accounting is based on the notion of "associations".  An association is a set of cluster, partition, allocation account, and user.  I think most sites do the accounting so that it is a single limit applied to all partitions, etc. but you can use sacctmgr to apply limits at any association level.  Normally you would set GrpTRESmin at the required level.  The GrpTRESmin values apply at the association you set them and on all child associations.</div><div><br></div><div>So while most sites would do something like e.g. <br></div><div>    set GrpTRESmin=cpu=N for allocation acct Acct1</div><div>thereby allowing members of Acct1 to use (as a group) N cpu-minutes combined across all partitions, you could also do something like</div><div>    set GrpTRESmin=cpu=N for allocation Acct1 and</div><div>    set GrpTRESmin=cpu=A for allocation Acct1 and partitionA</div><div>    set GrpTRESmin=cpu=B for allocation Acct1 and partitionB</div><div>In this scenario, users of Acct1 can use at most A cpu-min on partitionA and B on paritionB, subject to combined usage on all partitions (A, B, and anything else) does not exceed N.  <br></div><div><br></div><div>Underneath the covers, Slurm and PBS accounting behave a bit differently --- IIRC in PBS you assign "credits" to accounts which then get debited as jobs run.  In Slurm, each association tracks usage as jobs run, and you can configure limits on the usage at various levels.  <br></div><div><br></div><div>The tools for reporting usage of allocation accounts in Slurm leave something to be desired; sshare is the underlying tool but not very user friendly, and I find sbank leaves a lot to be desired.</div><div>I have some Perl libraries interfacing with sshare, etc. on CPAN (ihttps://<a href="http://metacpan.org/pod/Slurm::Sshare">metacpan.org/pod/Slurm::Sshare</a>) which include a basic sbalance command script.  You would likely need to modify the script for your situation (it assumes a situation more like the first example above), but that should not be too bad.<br></div><div>   <br></div><div><br></div></div></div><br><div class="gmail_quote"><div dir="ltr">On Wed, Dec 12, 2018 at 1:58 PM Merritt, Todd R - (tmerritt) <<a href="mailto:tmerritt@email.arizona.edu">tmerritt@email.arizona.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="m_7003798870539065299WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt">Hi all,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">                I'm new to slurm. I've used PBS extensively and have set up an accounting system that gives groups/account a fixed number of hours per month on a per queue/partition basis. It decrements that
 time allocation with every job run and then resets it to the original value at the start of the next month. I had hoped that slurm would do this natively but it doesn't seem like it does. I came across sbank which sounds like it would implement this but it
 also seems like it would span partitions and not allow separate limits per partition. Is this something that has already been implemented or could be done in an easier way than what I'm trying?<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Thanks,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Todd<u></u><u></u></span></p>
</div>
</div>

</blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr">Tom Payerle <br>DIT-ACIGS/Mid-Atlantic Crossroads        <a href="mailto:payerle@umd.edu" target="_blank">payerle@umd.edu</a><br></div><div>5825 University Research Park               (301) 405-6135<br></div><div dir="ltr">University of Maryland<br>College Park, MD 20740-3831<br></div></div></div></div></div></div>