질문은 기사와 관련이 있습니다프린스턴 연구 컴퓨팅, SLURM 출시.
예를 들어,
#SBATCH --job-name=slurm-test # create a short name for your job
SBATCH
첫 번째 이후에는 #
실행되고 create
두 번째 이후에는 #
주석으로 처리됩니다. 두 번째에 공백이 있기 때문인가요 #
? 나는 보통 이것을 #
주석으로 취급합니다. 그러나 어떤 경우에는 시행되기도 합니다.
답변1
SLURM 을 사용하여 SLURM 작업을 제출할 때 sbatch
정확한 문자열로 시작하는 작업 스크립트의 모든 줄은 #SBATCH
작업 스케줄러에 의해 특수 처리 지시문으로 처리됩니다.
이 문자열은 #SBATCH
"마법 쿠키"라고 하며 줄의 첫 번째 항목으로 나타나야 하며 #
와 사이에 공백이 없어야 합니다 SBATCH
.
bash
다른 일반적인 POSIX 셸에서 실행되는 경우 이 줄은 주석으로 처리되어 완전히 무시됩니다.
이것으로는 확실하지 않습니다sbatch
문서하나더 멀리 #
이 줄에서는 일반적으로 현재 줄에 주석을 달기 위한 방법으로 지원됩니다 #SBATCH
. #SBATCH
라인에 주석이 필요한 경우 , 일반적인 관행은 아래와 같이 라인 위에 일반 주석을 제공하는 것입니다.
### Job name
#SBATCH --job-name=MYJOB
(세 단어는 ###
주석을 더 눈에 띄게 만드는 것 외에는 특별한 의미가 없습니다.)
또한보십시오:
답변2
#
은 bash의 주석이므로 or 와 my_job.slurm
함께 실행하면 안 됩니다. 그 이후의 모든 내용은 무시되기 때문입니다../my_job.slurm
bash ./my_job.slurm
#
하지만 로 실행하면 sbatch
SBATCH로 시작하는 주석을 매개변수로 인식합니다.
커밋 스크립트는 Bash 스크립트와 같은 쉘 스크립트입니다.논평, 그렇다면SBATCH 접두어, Slurm에서는 리소스 요청 및 기타 제출 옵션을 설명하는 매개변수로 이해합니다.