Delegar maior prioridade no Condor.
Description
Uma parte do serviço é fazer com que o condor jobmanager atribua, baseado no nome do usuário, grupos a certos jobs.
Antes do comentário
Create script for condor submission
vim $VDT_LOCATION/globus/lib/perl/Globus/GRAM/JobManager/condor.pm
map {
if ($_->[0] eq "LOGNAME") {$logname = $_->[1]; }
} @environment;
if ($logname =~ m/uscms./) { $AccountingGroup = "group_cms." . $logname; }
e dentro da parte que ele cria o script para o condor:
print SCRIPT_FILE "+AccountingGroup = \"$AccountingGroup\"\n";
A segunda parte é definir na configuração do condor os grupos e quotas correspondentes, na máquina que é o
condor_negotiator
vim /scratch/condor/condor_config.local
GROUP_NAMES = group_cms
GROUP_QUOTA_group_cms = 50
GROUP_AUTOREGROUP_group_cms = True
condor_reconfig
Digamos que a farm tem 200 job slots. 50 job slots foram dedicados para o grupo CMS e os outros 150 estão livres para qualquer grupo.
Supondo que você adicione linhas correspondentes para, por exemplo, o usuário de produção do CMS,
cmsprd
. Entram na sua farm 75 jobs do CMS, 25 do cmsprd e 200 do samgrid. Qualquer que seja a prioridade do grupo CMS, ele terá no mínimo seus 50 job slots, cmsprd terá garantidos seus 25 jobs e os restantes 125 job slots terão de ser disputados entre samgrid e CMS, baseado na sua prioridade do condor.
É possível dentro desse mesmo esquema adicionar prioridades especiais:
GROUP_PRIO_FACTOR_group_cms = 10
DEFAULT_PRIO = 100
REMOTE_PRIO_FACTOR = 1000