Miguel, It looks like you have already found the slurm_load_jobs() function in api/job_info.c that squeue uses.
Don From: Miguel Méndez [mailto:[email protected]] Sent: Wednesday, July 25, 2012 2:06 AM To: slurm-dev Subject: [slurm-dev] Re: slurm-dev Simple multifactor priority manager I'm completing my own message again. My question is maybe too generic, and here I give some info about my attempts: I'm studying squeue's code to get the info I want. I guess there are other ways to do this, but this is the first one that has come to my mind. Regards, Miguel On Wed, Jul 25, 2012 at 10:23 AM, Miguel Méndez <[email protected]<mailto:[email protected]>> wrote: Hi, Thank you Don. I'm opting for the first feature you mentioned: setting the priority of pending jobs in the queue. I understand I can only do this writting a simple Priority plugin. So now I have a different question: what's the simplest way to read nodes in use and jobs running by a specific user? Miguel Méndez On Mon, Jul 23, 2012 at 5:30 PM, Lipari, Don <[email protected]<mailto:[email protected]>> wrote: Miguel, There are two separate features which might help meet your requirements below. The first setting the priority of pending jobs in the queue. The second is imposing limits on running jobs. Both require you to enable the accounting_storage/slurmdbd plugin. When you enable and configure the priority/multifactor plugin, jobs will be prioritized in the queue based on 5 factors: fair-share, age, QOS, partition, and job size. If you want to prioritize jobs based on other factors, you will need to modify the code. However, you can use the sacctmgr to define limits on the jobs once they start running (or how many can be running at any given time). Some of these limits are in your list below. For example MaxJobs will limit the number of jobs a user can run out of a given account and partition. The sacctmgr man page has all the details. Don From: Miguel Méndez [mailto:[email protected]<mailto:[email protected]>] Sent: Monday, July 23, 2012 6:06 AM To: slurm-dev Subject: [slurm-dev] Re: slurm-dev Simple multifactor priority manager I'm going to complete the information given before. I know I have two more options: - Installing Maui scheduler. - Writting my own Priority Plugin. My thoughts are that these two options seem too complicated for what I want. If I had to choose, I would write my own plugin. I'm reading right know src/plugins/priority/basic/priority_basic.c and src/plugins/priority/multifactor/priority_multifactor.c. Would this be a good option? (given I have no idea right know of how to make it work). Cheers, Miguel On Mon, Jul 23, 2012 at 12:11 PM, Miguel Méndez <[email protected]<mailto:[email protected]>> wrote: Hi everybody, I would like to set up a very simple scheduler (or priority manager) that considers these elements for each job: - Age (time the job has been waiting in the queue). - Number of nodes/processors requested by the job. - Number of running jobs by the user. - Number of nodes/processors in use by the user. - Walltime specified by the job (I would combine this with backfill). (Apart from that, I will be setting a Maximun Global walltime and enforcing the user to set walltime in his submissions). I've read everything in Slurm's documentation about Multifactor priority, fairshare, QOS, etc, but I can't get to a simple solution. I know multifactor take into account Age and Job Size, but not the other elements (at least directly). What I would really like is some kind of simple personalized multifactor with the abovementioned elements. I was going through the wrong path because I thought it would do with a job submission lua wrapper. I've quickly realized that this wrapper wouldn't manipulate priorities in real time. So, ¿any ideas? Thanks in advance, Miguel Méndez Error! Filename not specified. Error! Filename not specified. Error! Filename not specified.
<<inline: image001.jpg>>
