GNU/Linux >> Tutoriels Linux >  >> Linux

Existe-t-il dans Slurm une commande rapide pour déterminer le nombre total de jobs (en attente et actifs) à un instant donné ?

Si vous souhaitez simplement résumer la sortie de squeue , que diriez-vous :

squeue -u <username> | awk '
BEGIN {
    abbrev["R"]="(Running)"
    abbrev["PD"]="(Pending)"
    abbrev["CG"]="(Completing)"
    abbrev["F"]="(Failed)"
}
NR>1 {a[$5]++}
END {
    for (i in a) {
        printf "%-2s %-12s %d\n", i, abbrev[i], a[i]
    }
}'

qui donne quelque chose comme :

R  (Running)    1
PD (Pending)    4

Explications :

  • Le job state est supposé être dans le 5ème champ selon le format par défaut de squeue .
  • Ensuite, le script compte l'apparence de chaque code d'état de tâche, à l'exception de la 1ère ligne qui inclut l'en-tête.
  • Enfin, il indique le nombre de chaque code d'état de tâche.

Afin de le rendre pratique, ajoutez les lignes suivantes à votre .bash_aliases ou .bashrc (le nom du fichier peut dépendre du système) :

function summary() {
    squeue "[email protected]" | awk '
    BEGIN {
        abbrev["R"]="(Running)"
        abbrev["PD"]="(Pending)"
        abbrev["CG"]="(Completing)"
        abbrev["F"]="(Failed)"
    }
    NR>1 {a[$5]++}
    END {
        for (i in a) {
            printf "%-2s %-12s %d\n", i, abbrev[i], a[i]
        }
    }'
}

Ensuite, vous pouvez invoquer la commande simplement avec summary [option] , où [option] accepte les options de squeue si nécessaire (la plupart du temps inutile).

J'espère que cela vous aidera.


J'interpréterais la "commande rapide" différemment. De plus, j'ajouterais -r pour les cas où vous utilisez des tableaux de tâches :

squeue -u <username> -h -t pending,running -r | wc -l

l'option -h supprime l'en-tête "wc -l" (nombre de mots) compte la ligne de la sortie. Finalement, je l'utilise avec watch

watch 'squeue -u <username> -h -t pending,running -r | wc -l'

Linux
  1. Comment trouver le nombre de fichiers dans un répertoire et des sous-répertoires

  2. Affichage de la liste de tous les jobs ‘at’ et de leurs commandes respectives

  3. Redirection Io et commande principale ?

  4. Meilleur moyen d'annuler tous les travaux Slurm à partir de la sortie de la commande Shell ?

  5. Existe-t-il une commande Linux pour déterminer les ID de fenêtre associés à un ID de processus donné ?

Comment utiliser Sudo et le fichier Sudoers

Commandes Linux :jobs, bg et fg

MySQL la ligne de commande et les pagers

Existe-t-il une commande sous Linux pour connaître le numéro de processeur dans lequel un processus est chargé ?

Ouvrir un fichier donné par le résultat d'une commande dans vim

Vérifiez le nombre de connexions actives sur le port 80 ?