= Allocation-based job prioritization = This document is for projects with [MultiUser multiple job submitters] who use quotas to allocate resources among submitters. If you use [RemoteJobs remote job submission], read no further; those mechanisms automatically prioritize jobs based on quotas. Otherwise, you'll need to modify your job submission scripts or work generators to set job priorities. When you create jobs, set the priority of the jobs as follows: * Compute the total FLOP estimate (workunit.rsc_fpops_est) of the set of jobs. * Run '''adjust_user_priority''' to update and return the priority of the submitter: {{{ adjust_user_priority --user userID --flops X --app appname }}} For example, in PHP: {{{ $cmd = "cd ../../bin; ./adjust_user_priority --user $user->id --flops $flops --app $app->name"; $x = system($cmd); if (!is_numeric($x) || (double)$x == 0) { ... handle error } $priority = (double)$x; }}} * Set job priorities to this value. For example, use the '''--priority''' option to '''create_work'''.