`qsub` hinterlässt "NotQueued" in "blockierten Jobs"

`qsub` hinterlässt "NotQueued" in "blockierten Jobs"

Ich arbeite an einem Remote-Cluster (Westgrid > Bugaboo), auf dem ich Prozesse über eine .pbsDatei einreiche. Meine .pbssieht so aus

#!/bin/bash
#PBS -l procs=1
#PBS -l walltime=100:00:00
#PBS -N SimulationName
#PBS -m ea
#PBS -M [email protected]
#PBS -l pmem=3000mb
#PBS -t 1-100

echo "Starting run at: `date`"

R --vanilla --args ${PBS_ARRAYID} < /Path/To/code.R

echo "Job finished with exit code $? at: `date`"

, wobei PBS_ARRAYIDdie Werte 1 bis 100 für jeden spezifischen Job übernommen werden. /Path/To/code.Rist ein R-Wrapper für eine in geschriebene Binärdatei C. Wenn ich den Job absende

$ qsub mypbs.pbs

alles scheint gut zu funktionieren. Die Simulationen laufen wie erwartet und ich habe die Ergebnisse erhalten. Das Problem ist, dass ich irgendwann, während die Simulationen laufen, oft seltsame Jobs in den „blockierten Jobs“ sehe.

$ showq -u myName

active jobs------------------------
JOBID              USERNAME      STATE PROCS   REMAINING            STARTTIME


0 active jobs            0 of 4516 processors in use by local jobs (0.00%)
                        428 of 436 nodes active      (98.17%)

eligible jobs----------------------
JOBID              USERNAME      STATE PROCS     WCLIMIT            QUEUETIME


0 eligible jobs   

blocked jobs-----------------------
JOBID              USERNAME      STATE PROCS     WCLIMIT            QUEUETIME

30004048[]          matthey  NotQueued     1  2:02:00:00  Wed Mar 23 12:56:27
30156104[]          matthey  NotQueued     1  2:02:00:00  Mon Mar 28 01:14:16

2 blocked jobs   

Total jobs:  2

Die Job-IDs sind zwar die gleichen wie die, die laufen (oder vorher gelaufen sind), aber diese beiden blockierten Jobs haben keine PBS_ARRAYIDzwischen den eckigen Klammern. Diese Jobs bleiben lange dort und ich kann sie nicht löschen

$ qdel 30004048[]

qdel: nonexistent job id: 30004048[]

Außerdem kann ich keinen neuen Job einreichen (was das Hauptproblem ist), da ich die Meldung erhalte

$ qsub mypbs.pbs

qsub: submit error (Maximum number of jobs already in queue MSG=Job 30893576.b0 violates the global server limit of 500 jobs queued per user)

obwohl ich dieses Serverlimit NICHT verletze. Letztendlich verschwinden diese „NotQueued“-Jobs, aber erst nach relativ langer Zeit.

Dieses Problem ist mir in der Vergangenheit schon mehrmals passiert und von allen Benutzern dieses Clusters scheine ich der einzige zu sein, der dieses Problem hat. Wenn ich den Support kontaktiere, werden die beiden Jobs normalerweise irgendwie gelöscht, aber bisher habe ich keine langfristige Lösung für dieses Problem erhalten.

  • Haben Sie eine Ahnung, was los ist?
  • Kann ich diese beiden seltsamen Jobs löschen?
  • Wie kann ich verhindern, dass so etwas noch einmal passiert?

Antwort1

„Diese Jobs bleiben für lange Zeit dort“ – ich vermute/hoffe, dass sie nach zwei Jahren abgeschlossen sind. Jedenfalls bin ich über dieselbe Frage gestolpert („Kann ich diese (…) seltsamen [Array]-Jobs löschen?“) und die Verwendung von (Schreibmaschinen-)Anführungszeichen (einfach oder doppelt) hat das Problem gelöst:

qdel "job_identifier[]"

um das gesamte Array zu löschen. Zusätzlich können Sie $PBS_ARRAYIDmit der -tOption

verwandte Informationen