`qsub`는 "차단된 작업"에 "NotQueued"를 남깁니다.

`qsub`는 "차단된 작업"에 "NotQueued"를 남깁니다.

원격 클러스터에서 작업 중입니다(웨스트그리드 > 부가부) 파일을 통해 프로세스를 제출합니다 .pbs. 내 .pbs모습은 이렇다

#!/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`"

, 여기서 PBS_ARRAYID각 특정 작업에 대해 1~100의 값을 사용합니다. /Path/To/code.R로 작성된 일부 바이너리 파일에 대한 R 래퍼입니다 C. 작업을 제출할 때

$ qsub mypbs.pbs

모든 것이 잘 작동하는 것 같습니다. 시뮬레이션은 예상대로 실행되었으며 결과를 얻었습니다. 문제는 어느 시점에서 시뮬레이션이 실행되는 동안 "차단된 작업"에서 이상한 작업을 자주 본다는 것입니다.

$ 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

PBS_ARRAYID작업 ID는 실제로 실행한(또는 이전에 실행한) 작업 ID와 동일하지만 차단된 두 작업에는 대괄호 사이에 아무 것도 없습니다 . 이 작업은 오랫동안 거기에 있으므로 삭제할 수 없습니다.

$ qdel 30004048[]

qdel: nonexistent job id: 30004048[]

또한 메시지를 받으면 새 작업을 제출할 수 없습니다(이것이 가장 큰 문제임).

$ 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)

이 서버 제한을 ​​위반하지 않더라도. 결국 이러한 "NotQueued" 작업은 사라지지만 비교적 오랜 시간이 지난 후에야 사라집니다.

이 문제는 과거에 여러 번 발생했으며 이 클러스터의 모든 사용자 중에서 이 문제가 발생한 유일한 사용자인 것 같습니다. 지원팀에 문의하면 보통 어떻게든 두 작업을 삭제하게 되지만 지금까지 이 문제에 대한 장기적인 해결책을 얻지 못했습니다.

  • 무슨 일이 일어나고 있는지 아시나요?
  • 이 이상한 작업 두 개를 삭제할 수 있나요?
  • 이런 일이 다시 발생하지 않도록 하려면 어떻게 해야 합니까?

답변1

“이 직업은 오랫동안 그곳에 머물게 됩니다.” 2년 후에는 확정될 것으로 추측/희망합니다. 어쨌든, 나는 우연히 같은 질문("이 (...) 이상한 [배열] 작업을 삭제할 수 있습니까?")을 발견했고 (타자기) 따옴표(단일 또는 이중)를 사용하여 문제를 해결했습니다.

qdel "job_identifier[]"

전체 배열을 삭제합니다. 또한 옵션 을 사용하여 특정 $PBS_ARRAYID(또는 범위)을 지정할 수 있습니다.-t

관련 정보