2016-11-11 7 views
1

특히, Cray는 qsub 요청에 포함 된 특수 명령 (aprun)을 사용하여 배치 노드에서 작업을 실행해야합니다 (Cray의 기본값은 aprun 구문없이 로그인/계산 노드에서 실행 됨). 크레이 리눅스 슈퍼 컴퓨터에 qsub 요청을 손으로 키 입력 할 때, 감독 구문은 다음과 같습니다Linux를 실행하는 Cray 시스템에서, 자동화 된 BASH 스크립트에서 aprun을 사용하여 여러 qsub 요청을 제출할 수 있습니까?

사용자가 -V합니다 ( qsub 문에서 매개 변수를 나타내는 통과) 후 '리턴'을 제공
qsub <qsub parameters> -V 
aprun -n #CPUS /executable.exe param1 param2 ... 
Ctrl-D 

및 실행/매개 변수 후 세트. Ctrl-D은 입력을 종료하고 qsub/aprun 명령을 실행합니다.

이 문제는하는 BASH 스크립트에서 Ctrl-D을 (단순히 EOF을 의미) 입력을위한 그물에 설명 다양한 방법이 있지만 qsubaprun 명령을 - 임베디드 그들 중 누구도 맥락에서 작동하지 않습니다.

단일 스크립트에서 여러 qsub/aprun 명령에 대해이 동일한 구문을 실행하면됩니다. BASH에서 이것을 어떻게 코딩합니까?

답변

1

용액 구문은 다음

qsub <qsub parameters> -V <<EOF 
cd 
aprun -n #CPUS /executable.exe param1 param2 ... 
EOF 

qsub <qsub parameters> -V <<EOF 
cd 
aprun -n #CPUS /executable.exe param1 param2 ... 
EOF 

주 (< < 및 EOF 사이에 공간)을 <<EOF의 위치는 cd 새로운 라인에 있고 aprun 구문과 함께 바꿈 뒤에 최종 EOF은 행의 선두에 <<이 없으며 그 뒤에 개행 문자가옵니다.

이 구문은 각 qsub/aprun 명령을 새 배치 노드 작업 제출에 실행합니다. 스크립트의 출력은 요청 된 일련의 작업 ID입니다.