English프랑스어스페인어

온웍스 파비콘

srun - 클라우드에서의 온라인

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터를 통해 OnWorks 무료 호스팅 제공업체에서 srun을 실행하세요.

이것은 Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공업체에서 실행할 수 있는 srun 명령입니다.

프로그램:

이름


srun - 병렬 작업 실행

개요


서두르다 [옵션...] 실행 파일 [인수...]

기술


Slurm이 관리하는 클러스터에서 병렬 작업을 실행합니다. 필요한 경우 srun은 먼저
병렬 작업을 실행할 리소스 할당.

다음 문서는 할당에 대한 다양한 옵션의 영향을 설명합니다.
cpus를 작업 및 태스크로.
http://slurm.schedmd.com/cpu_management.html

옵션


--가속 바인딩=<옵션>
작업이 GPU, 마이크 및 NIC 유형의 일반 리소스에 바인딩되는 방식을 제어합니다.
여러 옵션을 지정할 수 있습니다. 지원되는 옵션은 다음과 같습니다.

g 할당된 CPU에 가장 가까운 GPU에 각 작업을 바인딩합니다.

m 할당된 CPU에 가장 가까운 MIC에 각 작업을 바인딩합니다.

n 할당된 CPU에 가장 가까운 NIC에 각 작업을 바인딩합니다.

v 상세 모드. 작업이 GPU 및 NIC 장치에 바인딩되는 방식을 기록합니다.

-A, --계정=<계정>
이 작업에서 사용하는 리소스를 지정된 계정에 청구합니다. 그만큼 계정 는 Teledyne LeCroy 오실로스코프 및 LSA-XNUMX 시리즈 임베디드 신호 분석기가
임의 문자열. 계정 이름은 작업 제출 후 다음을 사용하여 변경할 수 있습니다.
제어 명령.

--acctg-주파수
작업 계정 및 프로파일링 샘플링 간격을 정의합니다. 이것은 다음에 사용할 수 있습니다
재정의 JobAcctGatherFrequency Slurm 구성 파일의 매개변수,
slurm.conf. 지원되는 형식은 다음과 같습니다.

--acctg-주파수==
어디에 = 작업 샘플링 간격을 지정합니다.
jobacct_gather 플러그인 또는 프로파일링 유형의 샘플링 간격
acct_gather_profile 플러그인에 의해. 다중, 쉼표로 구분
= 간격을 지정할 수 있습니다. 지원되는 데이터 유형
다음과 같습니다 :

작업=
어디에 에 대한 작업 샘플링 간격(초)입니다.
jobacct_gather 플러그인과
acct_gather_profile 플러그인. 참고: 이 주파수는 다음과 같은 용도로 사용됩니다.
메모리 사용량을 모니터링합니다. 메모리 제한이 가장 높은 경우
사용자가 요청할 수 있는 빈도는
slurm.conf 파일. 끌 수도 없습니다(=0).

에너지=
어디에 에너지에 대한 샘플링 간격(초)
acct_gather_energy 플러그인을 사용한 프로파일링

네트워크=
어디에 에 대한 샘플링 간격(초)
acct_gather_infiniband 플러그인을 사용한 infiniband 프로파일링.

파일 시스템=
어디에 에 대한 샘플링 간격(초)
acct_gather_filesystem 플러그인을 사용한 파일 시스템 프로파일링.

작업 샘플링 간격의 기본값
다른 모든 간격의 기본값은 30입니다. 간격이 0이면 비활성화됩니다.
지정된 유형의 샘플링. 작업 샘플링 간격이 0이면 회계
정보는 작업 종료 시에만 수집됩니다(Slurm 간섭 감소
작업).
작은(XNUMX이 아닌) 값은 작업 성능에 더 큰 영향을 주지만 값은
30초 미만인 애플리케이션의 경우 눈에 띄지 않을 수 있습니다.
10,000개의 작업.

-B --추가 노드 정보=<소켓[:코어[:스레드]]>
수 및 유형에 대한 세부 정보와 함께 리소스의 특정 할당을 요청합니다.
클러스터 내의 계산 리소스 수: 소켓 수(또는 물리적
프로세서), 소켓당 코어, 코어당 스레드. 총액
요청되는 자원은 모든 용어의 산물입니다. 지정된 각 값
최소로 간주됩니다. 별표(*)는 다음을 나타내는 자리 표시자로 사용할 수 있습니다.
해당 유형의 사용 가능한 모든 리소스를 활용해야 합니다. 노드와 마찬가지로
원하는 경우 개별 수준을 별도의 옵션으로 지정할 수도 있습니다.
--노드당 소켓=<소켓>
--소켓당 코어 수=<코어>
--코어당 스레드 수=<스레드>
작업/친화성 플러그인이 활성화된 경우 이 방식으로 할당을 지정합니다.
또한 기본값을 설정합니다. --cpu_bind 의 옵션 스레드 경우 -B 옵션은 다음을 지정합니다.
스레드 수, 그렇지 않으면 다음 옵션 코어 코어 수가 지정된 경우, 그렇지 않은 경우
옵션 소켓. SelectType이 select/cons_res로 구성된 경우 다음이 있어야 합니다.
이에 대한 CR_Core, CR_Core_Memory, CR_Socket 또는 CR_Socket_Memory의 매개변수
존중받을 수 있는 옵션. 이 옵션은 BlueGene 시스템에서는 지원되지 않습니다.
(select/bluegene 플러그인이 구성됨) 지정하지 않으면 scontrol show 작업
'ReqS:C:T=*:*:*'가 표시됩니다.

--bb=<투기>
버스트 버퍼 사양. 사양의 형식은 시스템에 따라 다릅니다.
참조 --bbf.

--bbf=<파일 이름>
버스트 버퍼 사양이 포함된 파일의 경로입니다. 사양의 형태
시스템에 따라 다릅니다. 또한 참조하십시오 --bb.

--bcast[=목적지_경로>]
할당된 컴퓨팅 노드에 실행 파일을 복사합니다. 파일 이름이 지정된 경우 복사
지정된 대상 파일 경로에 대한 실행 파일입니다. 경로가 지정되지 않은 경우,
파일을 "slurm_bcast_"라는 파일에 복사합니다. . "현재
일하고 있는. 예를 들어, "srun --bcast=/tmp/mine -N3 a.out"은 파일을 복사합니다.
현재 디렉터리에서 세 디렉터리 각각의 "/tmp/mine" 파일로 "a.out"
컴퓨팅 노드를 할당하고 해당 파일을 실행합니다.

--시작하다=<시간>
지정된 시간까지 이 작업의 시작을 연기합니다. 그것은 다음의 시간을 받아들인다.
형태 HH : MM : SS 하루 중 특정 시간에 작업을 실행합니다(초는 선택 사항). (만약에
해당 시간은 이미 지났으므로 다음 날로 간주됩니다.) 또한 다음 날을 지정할 수도 있습니다.
한밤중, 정오, 피카 (오후 3시) 또는 차 시간 (오후 4시) 그리고 당신은 하루 중 시간을 가질 수 있습니다
접미사 AM or PM 아침이나 저녁에 달리기 위해. 당신은 또한 말할 수 있습니다
형식의 날짜를 지정하여 작업이 실행될 요일 MMDDYY or 월/일/연도
YYYY-MM-DD. 다음 형식을 사용하여 날짜와 시간을 결합합니다.
YYYY-MM-DD[THH:MM[:SS]]. 다음과 같은 시간을 줄 수도 있습니다. 지금 + 계산 시간 단위어디로
시간 단위는 (기본값), , 시간, 당신은 할 수 있습니다
키워드로 오늘 작업을 실행하도록 Slurm에 지시 오늘 그리고 내일 일을 실행하기 위해
키워드로 내일. 작업 제출 후 다음을 사용하여 값을 변경할 수 있습니다.
제어 명령. 예를 들어:
--시작=16:00
--시작=지금+1시간
--begin=now+60(기본값은 초)
--begin=2010-01-20T12:34:00

날짜/시간 지정에 대한 참고 사항:
- HH:MM:SS 시간 지정의 '초' 필드는 다음에 의해 허용되지만
Slurm 스케줄러의 폴링 시간은 정확하지 않습니다.
정확한 시간에 작업 파견을 보장합니다. 직업은 자격이 될 것입니다
지정된 시간 이후의 다음 투표에서 시작합니다. 정확한 폴링 간격
Slurm 스케줄러에 따라 다릅니다(예: 기본 sched/builtin의 경우 60초).
- 시간(HH:MM:SS)을 지정하지 않은 경우 기본값은 (00:00:00)입니다.
- 연도 없이 날짜를 지정한 경우(예: MM/DD) 현재 연도는
MM/DD 및 HH:MM:SS 조합이 이미 통과하지 않은 경우 가정
이 경우 다음 연도가 사용됩니다.

--검문소=<시간>
작업 단계의 검사점 생성 간격을 지정합니다. 기본적으로,
작업 단계에는 검사점이 생성되지 않습니다. 허용되는 시간 형식은 다음과 같습니다.
"분", "분:초", "시:분:초", "일-시",
"일-시:분" 및 "일-시:분:초".

--체크포인트 디렉터리=<예배 규칙서>
작업 또는 작업 단계의 체크포인트가 있어야 하는 디렉터리를 지정합니다.
작성되었습니다(checkpoint/blcr 및 checkpoint/xlch 플러그인에서만 사용됨). 그만큼
기본값은 현재 작업 디렉터리입니다. 체크포인트 파일은
형태 " 작업의 경우 .ckpt" 및 " . 작업 단계의 경우 .ckpt"입니다.

--논평=<>
임의의 의견입니다.

-C, --강제=<명부>
노드는 가질 수 있습니다 풍모 Slurm 관리자가 할당했습니다. 사용자는
이 중 어느 것을 지정 풍모 제약 조건을 사용하는 작업에 필요합니다.
옵션. 작업 제약 조건과 일치하는 기능이 있는 노드만 다음 작업에 사용됩니다.
요청을 만족시키십시오. AND, OR, 일치하는 여러 제약 조건을 지정할 수 있습니다.
OR, 리소스 수 등. 지원되는 제약 조건 옵션은 다음과 같습니다.

하나의 성함
지정된 기능이 있는 노드만 사용됩니다. 예를 들어,
--constraint="인텔"

노드 카운트
요청은 일부 기능에 필요한 노드 수를 다음과 같이 지정할 수 있습니다.
기능 이름 뒤에 별표와 개수를 추가합니다. 예를 들어
"--노드=16 --constraint=그래픽*4 ... " 작업에 16이 필요함을 나타냅니다.
노드 중 최소 XNUMX개 노드에 해당 기능이 있어야 합니다.
"제도법."

지정된 모든 기능이 있는 노드만 사용되는 경우. 앰퍼샌드는
AND 연산자에 사용됩니다. 예를 들어, --constraint="인텔&GPU"

OR 지정된 기능 중 하나 이상이 있는 노드만 사용되는 경우. 그만큼
세로 막대는 OR 연산자에 사용됩니다. 예를 들어,
--constraint="인텔|AMD"

매칭 OR
할당된 모든 옵션에 대해 가능한 옵션 집합 중 하나만 사용해야 하는 경우
그런 다음 OR 연산자를 사용하고 사각형 안에 옵션을 묶습니다.
괄호. 예를 들어: "--constraint=[랙1|랙2|랙3|랙4]" 수 있습니다
모든 노드가 서버의 단일 랙에 할당되어야 함을 지정하는 데 사용됩니다.
XNUMX개의 랙 중 아무거나 사용할 수 있습니다.

배수 카운트
AND를 사용하여 여러 리소스의 특정 수를 지정할 수 있습니다.
연산자를 사용하고 옵션을 대괄호로 묶습니다. 예를 들어:
"--constraint=[랙1*2&랙2*4]" 두 개의 노드를 지정하는 데 사용할 수 있습니다.
"rack1" 기능이 있는 노드에서 할당해야 하며 XNUMX개의 노드는
"rack2" 기능이 있는 노드에서 할당되어야 합니다.

경고: srun이 salloc이나 sbatch 내에서 실행될 때,
제약 조건 값에는 단일 기능 이름만 포함될 수 있습니다. 다른 누구도
연산자는 현재 작업 단계에 지원됩니다.

--인접
설정된 경우 할당된 노드는 연속 집합을 형성해야 합니다. 존경받지 못함
토폴로지/트리 or 토폴로지/3d_torus 둘 다 노드를 수정할 수 있는 플러그인
주문. 작업 단계 할당이 인정되지 않습니다.

--소켓당 코어 수=<코어>
최소 코어 수가 지정된 노드로 노드 선택을 제한합니다.
소켓. 아래에서 추가 정보를 참조하십시오. -B 작업/친화성 플러그인인 경우 위의 옵션
사용 가능합니다.

--cpu_bind=[{조용하고 장황한},]유형
작업을 CPU에 바인딩합니다. 작업/친화성 또는 작업/cgroup 플러그인이 다음과 같은 경우에만 사용됩니다.
활성화되었습니다. 구성 매개변수 TaskPluginParam 이러한 옵션을 재정의할 수 있습니다.
예를 들어, TaskPluginParam 코어에 바인딩하도록 구성되어 있으면 작업이 수행되지 않습니다.
작업을 소켓에 바인딩할 수 있습니다. 참고: Slurm이 항상 다음 사항에 대해 보고하도록 하려면
쉘에서 실행되는 모든 명령에 대해 선택된 CPU 바인딩을 사용하면 자세한 정보를 활성화할 수 있습니다.
SLURM_CPU_BIND 환경 변수 값을 "verbose"로 설정하여 모드를 설정하세요.

다음 정보 환경 변수는 다음과 같은 경우에 설정됩니다. --cpu_bind
용도:
SLURM_CPU_BIND_VERBOSE
SLURM_CPU_BIND_TYPE
SLURM_CPU_BIND_LIST

을 참조 환경 변수 섹션에 대한 자세한 설명은
개별 SLURM_CPU_BIND 변수. 이 변수는 다음과 같은 경우에만 사용할 수 있습니다.
작업/친화성 플러그인이 구성되었습니다.

사용시 --작업당 cpus 다중 스레드 작업을 실행하려면 CPU 바인딩이
프로세스의 부모로부터 상속됩니다. 이는 다중 스레드 작업을 의미합니다.
모든 스레드를 방지하려면 CPU 바인딩 자체를 지정하거나 지워야 합니다.
다중 스레드 작업은 상위 작업과 동일한 마스크/CPU를 사용합니다. 대안으로는 지방
마스크(허용되는 CPU를 두 개 이상 지정하는 마스크)를 작업에 사용할 수 있습니다.
다중 스레드 작업에 여러 CPU를 제공하기 위해.

기본적으로 작업 단계는 작업에 할당된 모든 CPU에 액세스할 수 있습니다. 보장하기 위해
각 작업 단계에 고유한 CPU가 할당되도록 하려면 --독점적 인 옵션을 선택합니다.

작업 단계에는 각 노드에 서로 다른 수의 CPU가 할당될 수 있습니다.
할당된 CPU가 위치 XNUMX에서 시작하지 않습니다. 따라서 옵션 중 하나는
작업 바인딩을 자동으로 생성하는 것이 좋습니다. 명시적으로 지정된 마스크
또는 바인딩은 사용 가능한 모든 작업 단계가 할당된 경우에만 적용됩니다.
노드의 CPU입니다.

작업을 NUMA 지역 도메인에 바인딩한다는 것은 작업을 CPU 세트에 바인딩한다는 의미입니다.
NUMA 지역 도메인 또는 "NUMA 노드"에 속하는 것입니다. NUMA 지역 도메인인 경우
NUMA를 지원하지 않는 시스템에서 옵션이 사용된 경우 각 소켓은
지역 도메인.

자동차 구속력이있는
작업/친화력이 활성화된 경우에만 적용됩니다. 작업 단계 할당의 경우
다음과 같은 수의 소켓, 코어 또는 스레드가 포함된 할당이 포함됩니다.
작업 수에 작업당 CPU를 곱하면 작업은 기본적으로 다음과 같습니다.
적절한 리소스에 바인딩됩니다(자동 바인딩). 이 모드를 비활성화합니다
"--cpu_bind=none"을 명시적으로 설정하여 작업합니다. 사용
TaskPluginParam=autobind=[threads|cores|sockets] - 기본 CPU 설정
"자동 바인딩"이 일치하는 항목을 찾지 못하는 경우 바인딩.

지원되는 옵션은 다음과 같습니다.

조용한]
작업 실행 전 자동 바인딩(기본값)

말 수가 많은]
작업이 실행되기 전에 바인딩을 자세히 보고합니다.

없음] 작업을 CPU에 바인딩하지 않음(자동 바인딩이 적용되지 않는 한 기본값)

순위 작업 순위에 따라 자동으로 바인딩됩니다. 각 항목에서 가장 낮은 번호의 작업
노드가 소켓(또는 코어 또는 스레드) XNUMX에 바인딩되어 있습니다. 지원되지 않습니다.
전체 노드가 작업에 할당되지 않는 한.

map_cpu:
CPU ID를 지정된 작업에 매핑하여 바인딩합니다. ~이다
, ,... . 매핑은 노드에 대해 지정됩니다.
모든 노드의 작업에 동일한 매핑이 적용됩니다(예:
각 노드의 가장 낮은 작업 ID는 지정된 첫 번째 CPU ID에 매핑됩니다.
목록 등에서). CPU ID는 다음을 제외하고 XNUMX진수 값으로 해석됩니다.
앞에 '0x'가 붙는 경우 다음과 같이 해석됩니다.
XNUMX진수 값. 전체 노드가 그렇지 않으면 지원되지 않습니다.
작업에 할당됩니다.

마스크_cpu:
지정된 대로 작업에 CPU 마스크를 설정하여 바인딩합니다. ~이다
, ,... . 매핑은 노드에 대해 지정되며
모든 노드의 작업에 동일한 매핑이 적용됩니다(즉,
각 노드의 가장 낮은 작업 ID는 지정된 첫 번째 마스크에 매핑됩니다.
목록 등). CPU 마스크는 항상 XNUMX진수로 해석됨
값이지만 앞에 선택적 '0x'가 올 수 있습니다. 지원되지 않음
전체 노드가 작업에 할당되지 않는 한.

순위_ldom
순위별로 NUMA 지역 도메인에 바인딩합니다. 다음을 제외하면 지원되지 않습니다.
전체 노드가 작업에 할당됩니다.

map_ldom:
NUMA 지역 도메인 ID를 지정된 작업에 매핑하여 바인딩합니다.
~이다 , ,... . 지역 도메인 ID는 다음과 같습니다.
'0x'가 앞에 오지 않는 한 XNUMX진수 값으로 해석됩니다.
이 경우 XNUMX진수 값으로 해석됩니다. 지원되지 않음
전체 노드가 작업에 할당되지 않는 한.

마스크_ldom:
지정된 대로 작업에 NUMA 지역 도메인 마스크를 설정하여 바인딩
어디 ~이다 , ,... . NUMA 지역 도메인
마스크는 항상 XNUMX진수 값으로 해석되지만
선택적 '0x'가 앞에 붙습니다. 전체 노드가 아니면 지원되지 않습니다.
업무에 배정됩니다.

소켓
소켓에 대한 마스크 바인딩 작업을 자동으로 생성합니다. CPU만
작업에 할당된 소켓이 사용됩니다. 만약에
작업 수가 할당된 소켓 수와 다릅니다.
최적이 아닌 바인딩이 발생할 수 있습니다.

코어 코어에 대한 마스크 바인딩 작업을 자동으로 생성합니다. 번호가
작업 수가 할당된 코어 수와 다를 수 있습니다.
최적이 아닌 바인딩에 있습니다.

스레드
스레드에 대한 마스크 바인딩 작업을 자동으로 생성합니다. 번호가
작업 수가 할당된 스레드 수와 다를 수 있습니다.
최적이 아닌 바인딩에 있습니다.

왕국 NUMA 지역 도메인에 대한 마스크 바인딩 작업을 자동으로 생성합니다.
작업 수가 할당된 지역 수와 다른 경우
도메인에서는 차선책 바인딩이 발생할 수 있습니다.

보드 보드에 대한 마스크 바인딩 작업을 자동으로 생성합니다. 번호가
작업 수가 할당된 보드 수와 다를 수 있습니다.
최적이 아닌 바인딩에 있습니다. 이 옵션은 작업/cgroup에서 지원됩니다.
플러그인만.

도움 cpu_bind에 대한 도움말 메시지 표시

--cpu-주파수 =<p1[-p2[:p3]]>

이 srun 명령으로 시작된 작업 단계가 일부 요청 시 실행되도록 요청합니다.
가능한 경우 컴퓨팅 노드의 단계에 대해 선택된 CPU의 빈도입니다.

p1 [#### | 낮은 | 매체 | 높은 | highm1] 주파수를 설정합니다
scaling_speed를 해당 값으로 설정하고 주파수 scaling_governor를 다음으로 설정합니다.
UserSpace. 값의 정의는 아래를 참조하십시오.

p1 [보수적 | 주문형 | 실적 | PowerSave]는
scaling_governor를 해당 값으로. 거버너는 목록 세트에 있어야 합니다.
slurm.conf 옵션 CpuFreqGovernors에 의해.

인셀덤 공식 판매점인 p2 가 있으면 p1은 최소 스케일링 주파수이고 p2는
최대 스케일링 주파수.

p2 [#### | 매체 | 높은 | highm1] p2는 p1보다 커야 합니다.

p3 [보수적 | 주문형 | 실적 | 절전 | 사용자 공간] 어느
거버너를 해당 값으로 설정합니다.

If p3 UserSpace인 경우 주파수 scaling_speed는 전력 또는 에너지에 의해 설정됩니다.
p1과 p2 사이의 값에 대한 인식 스케줄링 전략
사이트의 전원 목표. p1이 다음 주파수보다 높으면 작업이 지연될 수 있습니다.
목표와 함께 작업을 실행할 수 있습니다.

현재 주파수가 < min이면 min으로 설정됩니다. 마찬가지로 현재의 경우
주파수가 > 최대인 경우 최대로 설정됩니다.

현재 허용되는 값은 다음과 같습니다.

#### 킬로헤르츠 단위의 주파수

낮은 사용 가능한 최저 주파수

높은 사용 가능한 가장 높은 주파수

하이M1 (높은 빼기 XNUMX) 다음으로 사용 가능한 가장 높은 주파수를 선택합니다.

중급 사용 가능한 범위의 중간에 주파수를 설정하려고 시도합니다.

보수적 인 보수적 CPU 거버너 사용 시도

주문형 OnDemand CPU 거버너 사용 시도(기본값)

퍼포먼스 성능 CPU 거버너 사용 시도

절전 PowerSave CPU 거버너 사용 시도

사용자 공간 UserSpace CPU 거버너 사용 시도

다음 정보 환경 변수는 작업에 설정됩니다.
때 단계 --cpu-주파수 옵션이 요청됩니다.
SLURM_CPU_FREQ_REQ

이 환경 변수는 CPU에 대한 값을 제공하는 데에도 사용할 수 있습니다.
'srun' 명령이 실행될 때 설정된 경우 주파수 요청입니다. 그만큼 --cpu-주파수
명령줄에서 환경 변수 값을 재정의합니다. 에 있는 양식
환경 변수는 명령줄과 동일합니다. 참조 환경
변수 SLURM_CPU_FREQ_REQ 변수에 대한 설명 섹션.

주의사항: 이 매개변수는 요구 사항이 아닌 요청으로 처리됩니다. 작업 단계의 경우
노드가 CPU 주파수 설정을 지원하지 않거나 요청된 값이 외부에 있습니다.
유효한 빈도의 범위를 벗어나면 오류가 기록되지만 작업 단계는 다음과 같습니다.
계속할 수 있습니다.

주의사항: 작업 단계의 CPU에 대해서만 빈도를 설정한다는 것은
작업은 해당 CPU로 제한됩니다. 작업 제한(즉,
TaskPlugin=task/affinity 또는 TaskPlugin=task/cgroup("ConstrainCores" 포함)
옵션)이 구성되지 않은 경우 이 매개변수는 무시됩니다.

주의사항: 단계가 완료되면 선택한 각 CPU의 주파수와 거버너가
구성된 상태로 재설정 CPUFreqDef OnDemand CPU의 기본값이 있는 값
지사.

주의사항: 작업을 제출할 때 --cpu-주파수 linuxproc이 있는 옵션
ProctrackType으로 인해 Accounting이 폴링하기 전에 작업이 너무 빨리 실행될 수 있습니다.
직업 정보를 위해. 결과적으로 모든 회계 정보가 제공되지는 않습니다.

-c, --작업당 cpus=<NCPU>
요청 NCPU 배정되다 방법. 직업이 다음과 같은 경우에 유용할 수 있습니다.
멀티스레드이며 최적의 성능을 위해서는 작업당 하나 ​​이상의 CPU가 필요합니다. 그만큼
기본값은 프로세스당 하나의 CPU입니다. 만약에 -c 없이 지정 -n, 많은 작업이
을 만족하면서 가능한 한 노드별로 할당 -c 제한. 예를 들어
노드당 8개의 CPU가 있는 클러스터에서 작업당 4개의 노드와 3개의 CPU에 대한 작업 요청
노드당 3개 또는 6개의 CPU(노드당 1개 또는 2개의 작업)가 할당될 수 있습니다.
다른 작업에 의한 자원 소비. 이러한 작업은 다음 이상을 실행할 수 없습니다.
총 4개의 작업. 이 옵션은 할당하지 않고 작업을 생성하는 데에도 유용할 수 있습니다.
여러 작업 단계를 실행할 때 작업 할당에서 작업 단계로의 리소스
와 더불어 --독점적 인 옵션을 선택합니다.

경고: 직업과 직업에 따라 다르게 해석되는 구성과 옵션이 있습니다.
이 옵션에 대한 불일치가 발생할 수 있는 작업 단계 요청입니다. 예를 들어
서두르다 -C2 --코어당 스레드 수=1 음식물 작업에 두 개의 코어를 할당할 수 있지만 각각의 경우
해당 코어 중 XNUMX개의 스레드가 포함되어 있으면 작업 할당에는 XNUMX개의 CPU가 포함됩니다. 그만큼
그런 다음 작업 단계 할당은 총 XNUMX개의 작업에 대해 CPU당 XNUMX개의 스레드를 시작합니다.

경고: srun이 salloc이나 sbatch 내에서 실행될 때,
-c에 일관되지 않은 할당이 발생할 수 있는 구성 및 옵션
salloc 또는 sbatch에서 -c보다 큰 값.

-d, --의존=<의존성 목록>
지정된 종속성이 충족될 때까지 이 작업의 시작을 연기합니다.
완전한. 이 옵션은 작업 단계(작업 내에서 srun 실행)에는 적용되지 않습니다.
기존 salloc 또는 sbatch 할당) 작업 할당에만 적용됩니다.의존성 목록>
형태이다유형:작업 ID[:작업 ID][,유형:작업 ID[:작업 ID]]> 또는
<유형:작업 ID[:작업 ID][?유형:작업 ID[:작업 ID]]>. 모든 종속성을 충족해야 합니다.
"," 구분자가 사용된 경우. "?" 분리 기호
사용. 많은 작업이 동일한 종속성을 공유할 수 있으며 이러한 작업은
다른 사용자. scontrol을 사용하여 작업 제출 후 값이 변경될 수 있습니다.
명령. 이전 작업의 종료 상태로 인해 작업 종속성이 실패하면
이전 작업이 다시 대기열에 추가되고
후속 실행에서 다른 종료 상태를 갖습니다.

이후:작업_ID[:작업ID...]
이 작업은 지정된 작업이 실행을 시작한 후에 실행을 시작할 수 있습니다.

afterany:작업_ID[:작업 ID...]
이 작업은 지정된 작업이 종료된 후 실행을 시작할 수 있습니다.

afternotok:작업_ID[:작업 ID...]
이 작업은 지정된 작업이 종료된 후에 실행을 시작할 수 있습니다.
일부 실패한 상태(XNUMX이 아닌 종료 코드, 노드 오류, 시간 초과 등).

afterok:작업 ID[:작업 ID...]
이 작업은 지정된 작업이 성공적으로 수행된 후 실행을 시작할 수 있습니다.
실행됨(종료 코드 XNUMX으로 완료될 때까지 실행됨).

펼치기:job_id
이 작업에 할당된 리소스는 지정된 작업을 확장하는 데 사용해야 합니다.
확장할 작업은 동일한 QOS(Quality of Service)를 공유해야 하며
분할. 파티션에 있는 리소스의 갱 스케줄링도
지원.

싱글
이 작업은 이전에 시작된 작업이 공유된 후에 실행을 시작할 수 있습니다.
동일한 작업 이름과 사용자가 종료되었습니다.

-D, --chdir=<통로>
원격 프로세스가 chdir을 수행하도록 하십시오. 통로 실행을 시작하기 전에. 그만큼
기본값은 현재 작업 디렉터리에 대한 chdir입니다. 서두르다 프로세스. 경로
명령이 실행되는 디렉터리에 대한 전체 경로 또는 상대 경로로 지정할 수 있습니다.
실행됩니다.

-e, --오류=<모드>
stderr를 리디렉션하는 방법을 지정합니다. 기본적으로 대화형 모드에서는 서두르다
지정된 경우 stderr를 stdout과 동일한 파일로 리디렉션합니다. 그만큼 --오류
stdout 및 stderr을 다른 경로로 리디렉션할 수 있도록 옵션이 제공됩니다.
위치. 보다 IO 리디렉션 더 많은 옵션을 보려면 아래를 참조하세요. 지정된 파일인 경우
이미 존재하는 경우 덮어씁니다.

-E, --preserve-env
환경 변수 SLURM_NNODES 및 SLURM_NTASKS의 현재 값을 전달합니다.
~에 실행 파일, 명령줄 매개변수에서 계산하는 대신.

--발문=<실행 파일>
서두르다 달릴거야 실행 파일 작업 단계가 완료된 직후입니다. 명령줄
에 대한 주장 실행 파일 작업 단계의 명령 및 인수가 됩니다. 만약에
실행 파일 "none"이면 srun 에필로그가 실행되지 않습니다. 이 매개변수는
slurm.conf의 SrunEpilog 매개변수. 이 매개변수는 다음과 완전히 독립적입니다.
slurm.conf의 Epilog 매개변수.

--독점[=사용자]
이 옵션은 작업 및 작업 단계 할당에 대해 두 가지 의미가 약간 다릅니다.
작업을 시작하는 데 사용되는 경우 작업 할당은 다른 노드와 노드를 공유할 수 없습니다.
작업 실행(또는 "=user" 옵션이 있는 다른 사용자) 기본값
공유/독점 동작은 시스템 구성과 파티션의 상태에 따라 다릅니다.
공유 옵션은 작업 옵션보다 우선합니다.

이 옵션은 하나 이상의 작업 단계를 시작할 때도 사용할 수 있습니다.
별도의 프로세서를 전용으로 사용하려는 기존 리소스 할당
각 작업 단계. 작업 단계를 시작하는 데 충분한 프로세서를 사용할 수 없는 경우
연기될 것입니다. 이는 자원에 대한 메커니즘을 제공하는 것으로 생각할 수 있습니다.
할당 내에서 작업을 관리합니다.

CPU의 배타적 할당은 명시적으로 호출된 작업 단계에만 적용됩니다.
전에, --독점적 인 옵션. 예를 들어 작업에는 XNUMX개의 노드가 포함된 하나의 노드가 할당될 수 있습니다.
할당된 노드에서 호출되는 CPU 및 원격 셸입니다. 해당 쉘이 호출되지 않은 경우
와 더불어 --독점적 인 옵션을 사용하면 다음을 사용하여 XNUMX개의 작업이 포함된 작업 단계를 생성할 수 있습니다.
전에, --독점적 인 옵션이며 원격 셸의 리소스와 충돌하지 않습니다.
배당. 사용 --독점적 인 구별을 보장하기 위해 모든 작업 단계를 호출하는 옵션
각 단계에 대한 리소스.

작업에 할당된 모든 CPU는 다음을 제외하면 각 작업 단계에서 사용할 수 있습니다.
--독점적 인 옵션이 사용되며 작업 선호도가 구성됩니다. 자원 이후
관리는 프로세서에 의해 제공됩니다. --ntasks 옵션을 지정해야 하지만
다음 옵션은 지정하면 안 됩니다. --상대적인, --분포=임의.
아래.

--내 보내다=<환경 변수 | 없음>
실행된 애플리케이션에 전파되는 환경 변수를 식별합니다.
여러 환경 변수 이름은 쉼표로 구분해야 합니다. 환경
해당 변수의 현재 값을 전파하기 위해 변수 이름을 지정할 수 있습니다.
(예: "--export=EDITOR") 또는 변수의 특정 값을 내보낼 수 있습니다.
(예: "--export=EDITOR=/bin/vi")
그렇지 않으면 설정됩니다. 기본적으로 모든 환경 변수가 전파됩니다.

--gid=<그룹>
If 서두르다 루트로 실행되며 --gid 옵션을 사용하는 경우 다음을 사용하여 작업을 제출합니다. 그룹's
그룹 액세스 권한. 그룹 그룹 이름 또는 숫자 그룹 ID일 수 있습니다.

--gres=<명부>
일반 소비 가능 자원의 쉼표로 구분된 목록을 지정합니다. 의 형식
목록의 각 항목은 "name[[:type]:count]"입니다. 그 이름은
소모성 자원. 개수는 기본값이 있는 리소스의 수입니다.
값 1. 지정된 자원이 각 노드의 작업에 할당됩니다.
사용 가능한 일반 소비 가능 리소스는 시스템에서 구성할 수 있습니다.
관리자. 사용 가능한 일반 소모성 리소스 목록이 인쇄됩니다.
옵션 인수가 "help"이면 명령이 종료됩니다. 사용 예
"--gres=gpu:2,mic=1", "--gres=gpu:kepler:2" 및 "--gres=help"를 포함합니다. 참고: 작성자
기본적으로 작업 단계에는 할당된 모든 일반 리소스가 할당됩니다.
직업에. 각 작업 단계에 일반 항목이 할당되지 않도록 동작을 변경하려면
리소스의 경우 --gres 값을 명시적으로 설정하여 각각에 대해 XNUMX 개수를 지정합니다.
일반 리소스 OR "--gres=none" 설정 OR SLURM_STEP_GRES 환경 설정
변수를 "없음"으로 설정합니다.

-시간, --잡고있다
작업이 보류 상태(우선순위 XNUMX)로 제출되도록 지정합니다. 보류 작업
이제 우선순위를 재설정하기 위해 scontrol을 사용하여 해제할 수 있습니다(예: "제어 공개
").

-h, --도움
도움말 정보를 표시하고 종료합니다.

--힌트=<유형>
응용 프로그램 힌트에 따라 작업을 바인딩합니다.

계산_바운드
컴퓨팅 바인딩된 애플리케이션에 대한 설정 선택: 각각의 모든 코어 사용
소켓, 코어당 하나의 스레드.

메모리 바운드
메모리 바운드 애플리케이션에 대한 설정 선택: 각각에 하나의 코어만 사용
소켓, 코어당 하나의 스레드.

[아니오]멀티스레드
이점을 얻을 수 있는 인코어 멀티스레딩과 함께 추가 스레드를 사용하지 마십시오.
커뮤니케이션 집약적 애플리케이션. 작업/친화도에서만 지원됨
플러그인.

도움 이 도움말 메시지 표시

-I, --즉각적인[=>]
지정된 기간 내에 자원을 사용할 수 없으면 종료하십시오. 아니오인 경우
인수가 주어지면 요청에 대해 리소스를 즉시 사용할 수 있어야 합니다.
성공하다. 기본적으로, --즉각적인 꺼지고 명령은 다음까지 차단됩니다.
리소스를 사용할 수 있게 됩니다. 이 옵션의 인수는 선택적이므로 적절한
단일 문자 옵션을 구문 분석할 때는 바로 뒤에 값이 와야 합니다.
그들 사이에 공백을 포함하지 마십시오. 예를 들어 "-I 60"이 아니라 "-I60"입니다.

-i, --입력=<모드>
stdin이 리디렉션되는 방법을 지정합니다. 기본적으로, 서두르다 stdin을 다음에서 리디렉션합니다.
모든 작업을 종료합니다. 보다 IO 리디렉션 더 많은 옵션을 보려면 아래를 참조하세요. OS X의 경우,
poll() 함수는 stdin을 지원하지 않으므로 터미널에서 입력이 불가능하다.

-J, --직업 이름=<직업 이름>
작업 이름을 지정합니다. 지정된 이름이 작업 ID와 함께 표시됩니다.
시스템에서 실행 중인 작업을 쿼리할 때 번호입니다. 기본값은 제공된 것입니다.
실행 파일 프로그램 이름. 참고: 이 정보는 다음 위치에 기록될 수 있습니다.
slurm_jobacct.log 파일. 이 파일은 공백으로 구분되어 있으므로 공백을 사용하는 경우
직업 이름 이름을 지정하면 내용을 제대로 표시하는 데 문제가 발생합니다.
slurm_jobacct.log 파일 주머니 명령이 사용됩니다.

--작업 비드=<조이드>
작업 ID를 사용하여 이미 할당된 작업에서 작업 단계를 시작합니다. id. 이것을 사용하여
옵션으로 인해 서두르다 SLURM_JOB_ID 환경처럼 정확하게 동작합니다.
변수가 설정되었습니다.

-K, --잘못된 종료 시 종료[=0|1]
XNUMX이 아닌 종료로 태스크가 종료되는 경우 작업을 종료할지 여부를 제어합니다.
암호. 이 옵션을 지정하지 않으면 기본 작업은 다음을 기반으로 합니다.
Slurm 구성 매개변수 KillOnBadExit. 이 옵션을 지정하면
보다 우선시됩니다 KillOnBadExit. 옵션 인수가 XNUMX이면
작업을 종료합니다. XNUMX이 아닌 인수 또는 인수가 없으면 작업이 종료됩니다.
참고: 이 옵션은 다음 옵션보다 우선합니다. -W, --기다리다 작업을 종료하는 옵션
작업이 XNUMX이 아닌 종료 코드로 종료되면 즉시 발생합니다. 이 옵션은
인수는 선택 사항입니다. 올바른 구문 분석을 위해서는 단일 문자 옵션을 따라야 합니다.
값을 즉시 사용하고 값 사이에 공백을 포함하지 않습니다. 예를 들어 "-K1"
"-K 1"이 아닙니다.

-k, --살인 금지
노드 중 하나가 할당된 경우 자동으로 작업을 종료하지 마십시오.
실패합니다. 이 옵션은 제출 시가 아닌 작업 할당 시에만 인식됩니다.
개별 작업 단계의 해당 직무는 다음에 대한 모든 책임을 집니다.
결함 허용. 이 옵션을 사용하여 시작한 작업은 종료된 것으로 간주되지 않습니다.
(예 : -K, --잘못된 종료 시 종료 and -W, --기다리다 옵션은 다음 사항에 영향을 미치지 않습니다.
작업 단계). 활성 작업 단계(MPI 작업)에는 치명적인 오류가 발생할 가능성이 있지만
이 옵션을 지정하면 후속 작업 단계가 실행될 수 있습니다. 기본 동작은 다음과 같습니다.
노드 실패 시 작업을 종료합니다.

--실행-cmd
Slurm을 통해 정상적으로 작업을 실행하는 대신 외부 실행 명령을 인쇄합니다. 이것
옵션은 해당 옵션이 아닌 다른 것을 사용하는 경우에만 유효합니다. 발사/슬럼프 플러그인.

--런처 옵션=<옵션>
이외의 다른 것을 사용하는 경우 외부 실행 프로그램에 대한 옵션 발사/슬럼프
플러그인.

-l, --상표
stdout/err 줄 앞에 작업 번호를 추가합니다. 그만큼 --상표 옵션은 줄 앞에 추가됩니다
원격 작업 ID로 출력됩니다.

-L, --라이선스=<라이센스>
라이센스 사양(또는 서버의 모든 노드에서 사용 가능한 기타 리소스)
클러스터)를 이 작업에 할당해야 합니다. 라이선스 이름 뒤에는
콜론 및 개수(기본 개수는 XNUMX)입니다. 여러 라이선스 이름은 쉼표여야 합니다.
구분됩니다(예: "--licenses=foo:4,bar").

-m, --분포=
*|블록|순환기의|임의|비행기= [:*|블록|순환기의|순환[:*|블록|
순환기의|순환]][,|포장 안함]

원격 프로세스에 대한 대체 배포 방법을 지정합니다. 이 옵션은 제어합니다
리소스가 할당된 노드에 작업을 분배합니다.
바인딩을 위해 해당 리소스를 작업에 배포합니다(작업 선호도). 첫번째
배포 방법(첫 번째 ":" 이전)은 작업 배포를 제어합니다.
노드. 두 번째 배포 방법(첫 번째 ":" 이후)은
작업 바인딩을 위해 소켓 전체에 할당된 CPU를 배포합니다. 세 번째
분배 방법(두 번째 ":" 이후)은 할당된 분배를 제어합니다.
작업 바인딩을 위한 코어 전체의 CPU. 두 번째 및 세 번째 분포가 적용됩니다.
작업 선호도가 활성화된 경우에만. 세 번째 배포는 다음과 같은 경우에만 지원됩니다.
작업/cgroup 플러그인이 구성되었습니다. 각 분포 유형의 기본값은 다음과 같습니다.
*로 지정됩니다.

select/cons_res를 사용하면 각 소켓에 할당된 CPU 수와
노드는 다를 수 있습니다. 인용하다 http://slurm.schedmd.com/mc_support.html 자세한
자원 할당, 노드에 대한 작업 분배 및 바인딩에 대한 정보
CPU에 대한 작업.
첫 번째 배포 방법(노드 간 작업 배포):

* 노드(블록)에 작업을 배포하는 데 기본 방법을 사용합니다.

블록 블록 분배 방법은 다음과 같이 작업을 노드에 분배합니다.
연속 작업은 노드를 공유합니다. 예를 들어, XNUMX개의 할당을 고려하십시오.
각각 두 개의 cpus가 있는 노드. XNUMX가지 작업 블록 배포 요청은
첫 번째에 작업 XNUMX과 XNUMX가 있는 노드에 해당 작업을 배포합니다.
노드, 두 번째 노드의 작업 XNUMX, 세 번째 노드의 작업 XNUMX. 차단하다
작업 수가 다음을 초과하는 경우 배포는 기본 동작입니다.
할당된 노드 수.

순환기의 순환 분배 방법은 다음과 같이 작업을 노드에 분배합니다.
연속 작업은 연속 노드에 분산됩니다(라운드 로빈 방식).
패션). 예를 들어, 각각 XNUMX개가 있는 XNUMX개의 노드 할당을 고려하십시오.
cpus. XNUMX가지 작업 순환 배포 요청은 해당 작업을 다음에 배포합니다.
첫 번째 노드에 작업 XNUMX과 XNUMX가 있는 노드, 두 번째 노드에 작업 XNUMX가 있는 노드
노드 및 세 번째 노드의 작업 XNUMX. SelectType이
select/cons_res, 동일한 수의 CPU가 각 노드에 할당되지 않을 수 있습니다.
작업 분배는 아직 CPU가 없는 모든 노드 간에 라운드 로빈 방식으로 이루어집니다.
작업에 할당됩니다. 순환 분포는 다음과 같은 경우 기본 동작입니다.
작업 수는 할당된 노드 수보다 크지 않습니다.

평면 작업은 지정된 크기의 블록으로 분산됩니다. 옵션
작업 블록의 크기를 나타내는 숫자를 포함합니다. 이것은 다음과 같습니다
블록 내 작업 분배 체계의 선택적 사양에 의해
작업과 작업 블록 사이. 배포된 작업 수
각 노드에 대한 순환 분배와 동일하지만 태스크 ID는
각 노드에 할당되는 것은 평면 크기에 따라 다릅니다. 자세한 내용은 (포함
예제 및 다이어그램)을 참조하십시오.
http://slurm.schedmd.com/mc_support.html
and
http://slurm.schedmd.com/dist_plane.html

임의
임의의 배포 방법은 다음과 같이 프로세스를 순서대로 할당합니다.
환경 변수 SLURM_HOSTFILE로 지정된 파일에 나열됩니다. 만약에
이 변수가 나열되면 지정된 다른 방법을 무시합니다. 만약에
설정하지 않으면 메서드가 기본적으로 차단됩니다. 호스트 파일 내부에는 다음이 포함되어야 합니다.
최소한 요청된 호스트 수이며 한 줄 또는 쉼표당 하나여야 합니다.
분리. 작업 수를 지정하는 경우(-n, --ntasks=<번호>), 귀하의 작업
파일의 순서대로 노드에 배치됩니다.
알림: 작업 할당에 대한 임의 배포 옵션은 제어만 수행합니다.
CPU 할당이 아니라 작업에 할당될 노드
노드. 이 옵션은 기본적으로 작업 단계의 작업 레이아웃을 제어하기 위한 것입니다.
srun 명령에 대한 기존 작업 할당.

두 번째 배포 방법(바인딩을 위해 소켓 전체에 CPU 배포):

* 소켓 전체에 CPU를 배포하는 기본 방법(순환)을 사용합니다.

블록 블록 분배 방식은 할당된 CPU를 연속적으로 분배합니다.
다음 연속을 사용하기 전에 작업에 바인딩하기 위해 동일한 소켓에서
소켓.

순환기의 순환 분배 방법은 바인딩을 위해 할당된 CPU를 분배합니다.
동일한 소켓과 다음 소켓에서 연속적으로 주어진 작업
라운드 로빈 방식으로 다음 작업을 위한 연속 소켓
소켓.

순환
FCyclic 배포 방법은 바인딩을 위해 할당된 CPU를 배포합니다.
라운드 로빈 방식으로 연속 소켓에서 작업을 수행합니다.
소켓.

세 번째 배포 방법(바인딩을 위해 코어 전체에 CPU 배포):

* 코어 전체에 CPU를 배포하는 기본 방법을 사용합니다(다음에서 상속됨).
두 번째 배포 방법).

블록 블록 분배 방식은 할당된 CPU를 연속적으로 분배합니다.
다음 연속을 사용하기 전에 작업에 바인딩하기 위해 동일한 코어에서
핵심.

순환기의 순환 분배 방법은 바인딩을 위해 할당된 CPU를 분배합니다.
동일한 코어와 다음 연속 코어에서 연속적으로 주어진 작업
코어 전체에 걸쳐 라운드 로빈 방식으로 다음 작업을 위한 코어입니다.

순환
FCyclic 배포 방법은 바인딩을 위해 할당된 CPU를 배포합니다.
코어 전반에 걸쳐 라운드 로빈 방식으로 연속 코어에서 작업을 수행합니다.

노드에 대한 작업 분배를 위한 선택적 제어:

작업 단계의 작업을 전체 단계에 균등하게 분배하는 대신
할당된 노드를 노드에 최대한 단단히 묶습니다.

포장 안함 작업 단계의 작업을 노드에 최대한 촘촘하게 압축하는 대신,
균등하게 분배하십시오. 이 사용자 옵션은
SelectTypeParameters CR_Pack_Nodes 구성 매개변수입니다.

--메일 유형=<유형>
특정 이벤트 유형이 발생하면 이메일로 사용자에게 알립니다. 유효한 유형 값은 NONE,
BEGIN, END, FAIL, REQUEUE, ALL(BEGIN, END, FAIL, REQUEUE 및
STAGE_OUT), STAGE_OUT(버스트 버퍼 스테이지 아웃 완료), TIME_LIMIT, TIME_LIMIT_90
(제한 시간의 90% 도달), TIME_LIMIT_80(제한 시간의 80% 도달)
제한) 및 TIME_LIMIT_50(시간 제한의 50% 도달). 다수의 유형
쉼표로 구분된 목록으로 지정할 수 있습니다. 알림을 받을 사용자가 표시됩니다.
--메일 사용자.

--메일 사용자=<사용자>
에 의해 정의된 대로 상태 변경에 대한 이메일 알림을 수신하는 사용자 --메일 유형. 그만큼
기본값은 제출하는 사용자입니다.

--멤=<MB>
메가바이트 단위로 노드당 필요한 실제 메모리를 지정합니다. 기본값은
DefMemPerNode 최대 값은 MaxMemPerNode. 구성된 경우 둘 다
파라미터는 다음을 사용하여 볼 수 있습니다. 제어 표시 설정 명령. 이 매개변수
전체 노드가 작업에 할당된 경우 일반적으로 사용됩니다.
(SelectType=선택/선형). 작업 단계에 대해 메모리 제한을 XNUMX으로 지정하면
작업 단계를 작업에 할당된 메모리 양으로 제한하지만 제거하지는 않습니다.
작업의 메모리 할당을 다른 작업 단계에서 사용할 수 없도록 합니다. 또한
참조 --cpu당 메모리. --멤 and --cpu당 메모리 상호 배타적입니다. 참고: 추억
크기 지정은 특별한 경우로 처리되며 모든 항목에 대한 작업 액세스 권한을 부여합니다.
각 노드의 메모리. 참고: 현재 메모리 제한 적용은 다음 사항에 따라 달라집니다.
task/cgroup 플러그인 또는 계정 활성화(메모리 사용량 샘플링)
주기적으로(데이터를 저장할 필요가 없고 수집만 함) 두 경우 모두 메모리 사용
작업의 RSS(Resident Set Size)를 기반으로 합니다. 작업이 메모리 제한을 초과할 수 있습니다.
다음 정기 회계 샘플까지.

--cpu당 메모리=<MB>
할당된 CPU당 필요한 최소 메모리(메가바이트)입니다. 기본값은
DefMemPerCPU 최대 값은 MaxMemPerCPU (아래 예외 참조). 만약에
두 매개변수는 다음을 사용하여 볼 수 있습니다. 제어 표시 설정 명령.
작업의 경우 --cpu당 메모리 값이 구성된 값을 초과합니다. MaxMemPerCPU,
그런 다음 사용자의 제한은 작업당 메모리 제한으로 처리됩니다. --cpu당 메모리
보다 크지 않은 값으로 감소됩니다. MaxMemPerCPU; --작업당 cpus 설정됩니다
가치 --작업당 cpus 곱하기 새로운 --cpu당 메모리 가치는
원본과 동일 --cpu당 메모리 사용자가 지정한 값. 이 매개변수는
일반적으로 개별 프로세서가 작업에 할당된 경우 사용됩니다.
(SelectType=선택/cons_res). 리소스가 코어, 소켓 또는
전체 노드; 작업에 할당된 CPU 수가 작업보다 높을 수 있음
개수와 값 --cpu당 메모리 그에 따라 조정되어야합니다. 지정
작업 단계에 대한 메모리 제한이 XNUMX이면 작업 단계가 다음 양으로 제한됩니다.
작업에 메모리가 할당되지만 작업에서 할당된 메모리는 제거되지 않습니다.
다른 작업 단계에서 사용할 수 있습니다. 또한 참조하십시오 --멤. --멤 and --cpu당 메모리 are
상호 배타적.

--mem_bind=[{조용하고 장황한},]유형
작업을 메모리에 바인딩합니다. 작업/친화도 플러그인이 활성화되고
NUMA 메모리 기능을 사용할 수 있습니다. 주의 사항 전에, 분해능 of CPU and 기억
제본 5월 다르다 on 일부 아키텍처. 예를 들어, CPU 바인딩이 수행될 수 있습니다.
메모리 바인딩이 수행되는 동안 프로세서 내의 코어 수준에서
노드 수준에서 "노드"의 정의는 시스템마다 다를 수 있습니다.
시스템. 이 어플리케이션에는 XNUMXµm 및 XNUMXµm 파장에서 최대 XNUMXW의 평균 출력을 제공하는 사용 of 어떤 유형 other 보다 "없음" or "현지의" is 지원 좋습니다. If
더 많은 제어를 원하면 옵션을 사용하여 간단한 테스트 코드를 실행해 보십시오.
"--cpu_bind=verbose,none --mem_bind=verbose,none"을 사용하여 특정 내용을 확인합니다.
구성.

참고: Slurm이 모든 명령에 대해 선택한 메모리 바인딩을 항상 보고하도록 하려면
셸에서 실행되면 SLURM_MEM_BIND를 설정하여 자세한 정보 표시 모드를 활성화할 수 있습니다.
환경 변수 값을 "verbose"로 변경합니다.

다음 정보 환경 변수는 다음과 같은 경우에 설정됩니다. --mem_bind
용도:

SLURM_MEM_BIND_VERBOSE
SLURM_MEM_BIND_TYPE
SLURM_MEM_BIND_LIST

을 참조 환경 변수 섹션에 대한 자세한 설명은
개별 SLURM_MEM_BIND* 변수.

지원되는 옵션은 다음과 같습니다.

조용한]
작업이 실행되기 전에 조용히 바인드(기본값)

말 수가 많은]
작업이 실행되기 전에 자세한 보고서 바인딩

없음] 작업을 메모리에 바인딩하지 않음(기본값)

순위 작업 순위로 바인드(권장하지 않음)

지방의 사용 중인 프로세서에 로컬인 메모리 사용

map_mem:
노드의 메모리를 지정된 작업에 매핑하여 바인딩합니다. 여기서 ~이다
, ,... . CPU ID는 십진수 값으로 해석됩니다.
'0x'가 선행되지 않는 한 다음과 같이 해석됩니다.
XNUMX진수 값(권장하지 않음)

mask_mem:
지정된 대로 태스크에 메모리 마스크를 설정하여 바인드합니다. ~이다
, ,... . 메모리 마스크는 항상 로 해석
0진수 값. 마스크가 다음과 같은 경우 앞에 'XNUMXx'가 와야 합니다.
srun에 의해 숫자 값으로 표시되도록 [0-9]로 시작하지 마십시오.

도움 이 도움말 메시지 표시

--mincpus=<n>
노드당 논리적 CPU/프로세서의 최소 수를 지정합니다.

--msg-시간 초과=<>
작업 시작 메시지 시간 초과를 수정합니다. 기본값은 다음과 같습니다. 메시지 시간 초과 인간을
Slurm 구성 파일 slurm.conf. 이에 대한 변경은 일반적으로
권장되지만 문제를 진단하는 데 유용할 수 있습니다.

--mpi=<mpi_type>
사용할 MPI 유형을 식별합니다. 고유한 시작 절차가 발생할 수 있습니다.

명부 선택할 수 있는 mpi 유형을 나열합니다.

도주 노드당 하나의 'lamd' 프로세스를 시작하고 필요한 환경을 구축합니다.
LAM/MPI용 변수.

mpich1_shmem
노드당 하나의 프로세스를 시작하고 필요한 환경을 구축합니다.
mpich1 공유 메모리 모델에 대한 변수입니다. 이것은 내장된 mvapich에서도 작동합니다.
공유 메모리용.

mpichgm
Myrinet과 함께 사용됩니다.

음바피치
Infiniband와 함께 사용합니다.

오픈엠피
OpenMPI와 함께 사용됩니다.

pmi2 PMI2 지원을 활성화합니다. Slurm의 PMI2 지원은 MPI가
구현은 이를 지원합니다. 즉, MPI에 PMI2 인터페이스가 있는 경우
구현되었습니다. --mpi=pmi2는 lib/slurm/mpi_pmi2.so 라이브러리를 로드합니다.
이는 서버 측 기능을 제공하지만 클라이언트 측에서는
PMI2_Init() 및 기타 인터페이스 호출을 구현하십시오.

없음 특별한 MPI 처리가 없습니다. 이것이 기본값이며 다른 많은 것들과 함께 작동합니다.
MPI 버전.

--다중 프로그램
각 작업에 대해 다양한 프로그램과 다양한 인수를 사용하여 작업을 실행합니다. 이에
이 경우 지정된 실행 프로그램은 실제로 다음을 지정하는 구성 파일입니다.
각 작업에 대한 실행 파일 및 인수. 보다 배수 프로그램 구성
구성 파일 내용에 대한 자세한 내용은 아래를 참조하세요.

-N, --노드=<미노드[-최대 노드]>
최소 미노드 노드가 이 작업에 할당됩니다. 최대 노드
카운트는 다음과 같이 지정할 수도 있습니다. 최대 노드. 하나의 숫자만 지정된 경우 이
최소 및 최대 노드 수로 모두 사용됩니다. 파티션의 노드 제한
직업을 대체합니다. 작업의 노드 제한이 범위를 벗어난 경우
연결된 파티션에 대해 허용되는 경우 작업은 PENDING 상태로 유지됩니다.
이렇게 하면 파티션 제한이 있을 때 나중에 실행할 수 있습니다.
변경되었습니다. 작업 노드 제한이 작업 노드에 구성된 노드 수를 초과하는 경우
작업이 거부됩니다. 참고로 환경변수
SLURM_JOB_NUM_NODES (그리고 SLURM_NNODES 이전 버전과의 호환성을 위해)는 다음으로 설정됩니다.
작업에 실제로 할당된 노드 수입니다. 참조 환경 변수
자세한 내용은 섹션을 참조하십시오. 만약에 -N 지정되지 않은 경우 기본 동작은 다음과 같습니다.
요구 사항을 충족하기에 충분한 노드를 할당합니다. -n and -c 옵션. NS
작업은 지정된 범위 내에서 가능한 한 많은 노드를 할당하고
작업 시작을 지연하지 않고. 노드 수 사양은 다음과 같습니다.
숫자 값과 접미사 "k"를 포함합니다(숫자 값에 다음을 곱함).
1,024) 또는 "m"(숫자 값에 1,048,576을 곱함).

-n, --ntasks=<번호>
실행할 작업 수를 지정합니다. 요청하세요 서두르다 자원을 할당하다 n태스크
작업. 기본값은 노드당 하나의 작업이지만 --작업당 cpus option
이 기본값이 변경됩니다.

--회로망=<유형>
스위치 또는 네트워크와 관련된 정보를 지정합니다. 의 해석
유형 시스템에 따라 다릅니다. 이 옵션은 Cray에서 Slurm을 실행할 때 지원됩니다.
기본적으로. 네트워크 성능 카운터를 사용하여 요청하는 데 사용됩니다. 단 하나의 값
요청당 유효합니다. 모든 옵션은 대소문자를 구분합니다. 이 구성에서
지원되는 값은 다음과 같습니다.

체계
시스템 전체 네트워크 성능 카운터를 사용합니다. 요청된 노드만
작업 할당에 사용 중으로 표시됩니다. 작업이 채워지지 않으면
전체 시스템 나머지 노드는 다른 작업에서 사용할 수 없습니다.
NPC를 사용하여 유휴 상태인 경우 상태가 PerfCnts로 표시됩니다. 이러한 노드는
NPC를 사용하지 않는 다른 작업은 계속 사용할 수 있습니다.

블레이드 블레이드 네트워크 성능 카운터를 사용합니다. 요청된 노드만
작업 할당에 사용 중으로 표시됩니다. 작업이 전체를 채우지 않는 경우
작업에 할당된 블레이드는 다른 사용자가 사용할 수 없습니다.
NPC를 사용하는 작업이 유휴 상태이면 상태가 PerfCnts로 표시됩니다. 이러한 노드는
NPC를 사용하지 않는 다른 작업은 계속 사용할 수 있습니다.

모든 경우에 작업 또는 단계 할당 요청 절대로 필요한 것 지정하다 전에,
--독점 옵션. 그렇지 않으면 요청이 거부됩니다.

또한 이러한 옵션 단계에서는 블레이드 공유가 허용되지 않으므로 리소스
블레이드에서 실행 중인 단계가 수행되지 않는 경우 할당 내에서 유휴 상태로 유지됩니다.
블레이드의 모든 노드를 올립니다.

이 어플리케이션에는 XNUMXµm 및 XNUMXµm 파장에서 최대 XNUMXW의 평균 출력을 제공하는 네트워크 옵션은 IBM의 병렬 환경이 있는 시스템에서도 지원됩니다.
(체육). 키워드에 대한 IBM의 LoadLeveler 작업 명령 키워드 문서를 참조하십시오.
자세한 내용은 "네트워크"를 참조하십시오. 여러 값을 쉼표로 지정할 수 있습니다.
분리된 목록. 모든 옵션은 대소문자를 구분합니다. 지원되는 값은 다음과 같습니다.

BULK_XFER[=자원>]
RDMA(Remote Direct-Memory Access)를 사용하여 데이터 대량 전송을 활성화합니다.
선택적 자원 사양은 다음을 가질 수 있는 숫자 값입니다.
킬로바이트, 메가바이트 또는
기가바이트. 참고: 자원 사양은 에서 지원하지 않습니다.
Parallel Environment 버전 2.2의 기본 IBM 인프라
현재로서는 값을 지정하면 안 됩니다. 할당된 장치
작업에 대한 유형은 모두 동일해야 합니다. 기본값은 다음에 따라 다릅니다.
사용 가능한 하드웨어와 기본 설정 순서에 따라 다릅니다.
IPONLY(사용자 공간 모드에서는 고려되지 않음), HFI, IB, HPCE 및
KMUX.

CAU=<계산> 필요한 CAU(Collective Acceleration Unit) 수. 적용됩니다
IBM Power7-IH 프로세서. 기본값은 XNUMX입니다. 독립 CAU
각 프로그래밍 인터페이스(MPI, LAPI 등)에 할당됩니다.

개발자 이름=<name>
통신에 사용할 장치 이름을 지정하십시오(예: "eth0" 또는
"mlx4_0").

개발 유형=<유형>
통신에 사용할 장치 유형을 지정합니다. 지원되는
~의 가치 유형 "IB"(InfiniBand), "HFI"(P7 호스트 패브릭)
인터페이스), "IPONLY"(IP 전용 인터페이스), "HPCE"(HPC 이더넷) 및
"KMUX"(HPCE의 커널 에뮬레이션). 작업에 할당된 장치는
모두 같은 유형이어야 합니다. 기본값은 다음에 따라 다릅니다.
사용 가능한 하드웨어는 기본 설정 순서대로 IPONLY(
사용자 공간 모드에서는 고려되지 않음), HFI, IB, HPCE 및 KMUX.

즉시 =<계산>
필요한 창당 즉시 전송 슬롯 수입니다. 에만 적용
IBM Power7-IH 프로세서. 기본값은 XNUMX입니다.

인스턴스 =<계산>
각 네트워크의 각 작업에 대한 네트워크 연결 수 지정
연결. 기본 인스턴스 수는 1입니다.

IPV4 인터넷 프로토콜(IP) 버전 4 통신(기본값)을 사용합니다.

IPV6 인터넷 프로토콜(IP) 버전 6 통신을 사용합니다.

라피 LAPI 프로그래밍 인터페이스를 사용합니다.

MPI MPI 프로그래밍 인터페이스를 사용하십시오. MPI는 기본 인터페이스입니다.

파미 PAMI 프로그래밍 인터페이스를 사용합니다.

SHEMEM OpenSHMEM 프로그래밍 인터페이스를 사용합니다.

SN_ALL 사용 가능한 모든 스위치 네트워크를 사용합니다(기본값).

SN_싱글 사용 가능한 하나의 스위치 네트워크를 사용합니다.

UPC UPC 프로그래밍 인터페이스를 사용하십시오.

US 사용자 공간 통신을 사용합니다.

네트워크 사양의 몇 가지 예:

인스턴스=2,US,MPI,SN_ALL
모든 시스템에서 MPI 통신을 위한 두 개의 사용자 공간 연결을 만듭니다.
각 작업에 대해 네트워크를 전환합니다.

US,MPI,인스턴스=3,Devtype=IB
모든 시스템에서 MPI 통신을 위한 XNUMX개의 사용자 공간 연결 생성
각 작업에 대한 InfiniBand 네트워크.

IPV4,LAPI,SN_싱글
하나의 스위치에서 LAPI 통신을 위한 IP 버전 4 연결 생성
각 작업에 대한 네트워크.

인스턴스=2,US,LAPI,MPI
LAPI 및 MPI 통신을 위해 각각 두 개의 사용자 공간 연결 생성
각 작업에 대한 모든 스위치 네트워크에서. SN_ALL은 기본값입니다.
옵션이 있으므로 모든 스위치 네트워크가 사용됩니다. 또한 Instances=2
각 프로토콜(LAPI
및 MPI) 및 각 작업. XNUMX개의 네트워크와 XNUMX개의 작업이 있는 경우
그러면 노드에서 총 32개의 연결이 설정됩니다(인스턴스 2개 x
프로토콜 2개 x 네트워크 2개 x 작업 4개).

--멋진[=조정]
Slurm 내에서 조정된 일정 우선 순위로 작업을 실행합니다. 조정 없음
일정 우선 순위가 100씩 감소합니다. 조정 범위는 다음과 같습니다.
-10000(가장 높은 우선순위) ~ 10000(가장 낮은 우선순위). 권한이 있는 사용자만 가능
마이너스 조정을 지정합니다. 참고: 이 옵션은 다음과 같은 경우 현재 무시됩니다.
스케줄러 유형=sched/wiki or 스케줄러 유형=sched/wiki2.

--n코어당 작업=<n태스크>
최대 요청 n태스크 각 코어에서 호출됩니다. 이 옵션은 작업에 적용됩니다.
할당하지만 단계 할당에는 적용되지 않습니다. 와 함께 사용됨을 의미합니다. --ntasks
옵션. 와 연관되다 --n노드당 작업 노드 대신 코어 레벨을 제외하고
수준. 작업을 특정 코어에 바인딩하기 위해 마스크가 자동으로 생성됩니다.
...을 제외하면 --cpu_bind=없음 지정됩니다. 참고: 이 옵션은 다음을 제외하고는 지원되지 않습니다.
SelectTypeParameters=CR_Core or SelectTypeParameters=CR_Core_Memory 구성됩니다.

--n노드당 작업=<n태스크>
요청 n태스크 각 노드에서 호출됩니다. 와 함께 사용하는 경우 --ntasks 옵션,
--ntasks 옵션이 우선하며 --n노드당 작업 로 취급됩니다
최고 노드당 작업 수. 와 함께 사용하는 의미 --노드 선택권. 이
~와 연관되어있는 --작업당 cpus=NCPU, 그러나 실제 지식이 필요하지 않습니다.
각 노드의 CPU 수. 어떤 경우에는 할 수 있는 것이 더 편리합니다.
각 노드에서 특정 수의 태스크만 호출하도록 요청합니다.
이에 대한 예로는 하나의 MPI만 있는 하이브리드 MPI/OpenMP 앱 제출이 포함됩니다.
"task/rank"는 각 노드에 할당되어야 하며 OpenMP 부분은
노드에 있는 모든 병렬 처리를 활용하거나 단일
기존 할당의 각 노드에 대한 설정/정리/모니터링 작업을 한 단계로
더 큰 작업 스크립트에서.

--소켓당 태스크=<n태스크>
최대 요청 n태스크 각 소켓에서 호출됩니다. 이 옵션은 다음에 적용됩니다.
작업 할당은 있지만 단계 할당은 아닙니다. 와 함께 사용됨을 의미합니다. --ntasks
옵션. 와 연관되다 --n노드당 작업 대신 소켓 수준을 제외하고
노드 수준. 작업을 특정 작업에 바인딩하기 위해 마스크가 자동으로 생성됩니다.
소켓이 아닌 경우 --cpu_bind=없음 지정됩니다. 참고: 이 옵션은 지원되지 않습니다.
...을 제외하면 SelectTypeParameters=CR_Socket or SelectTypeParameters=CR_Socket_Memory is
구성되었습니다.

-O, --오버커밋
리소스를 오버커밋합니다. 작업 할당에 적용하면 하나의 CPU만 할당됩니다.
노드당 작업 및 노드, 소켓당 작업 수를 지정하는 데 사용되는 옵션,
코어 등은 무시됩니다. 작업 단계 할당에 적용될 때( 서두르다 명령
기존 작업 할당 내에서 실행될 때) 이 옵션을 사용하여 시작할 수 있습니다.
CPU 당 하나 이상의 작업. 보통, 서두르다 둘 이상의 프로세스를 할당하지 않습니다
CPU당. 지정하여 --오버커밋 명시적으로 둘 이상을 허용하고 있습니다.
CPU당 프로세스. 그러나 MAX_TASKS_PER_NODE 작업이 허용됩니다
노드별로 실행합니다. 메모: MAX_TASKS_PER_NODE 파일에 정의되어 있습니다. slurm.h 이고
변수가 아니라 Slurm 빌드 시간에 설정됩니다.

-o, --산출=<모드>
stdout 리디렉션 모드를 지정합니다. 기본적으로 대화형 모드에서는 서두르다
모든 작업에서 stdout을 수집하고 이 출력을 TCP/IP를 통해 첨부된 작업으로 보냅니다.
단말기. 와 함께 --산출 stdout은 파일, 작업당 하나의 파일로 리디렉션될 수 있습니다.
또는 /dev/null로. 섹션을 참조하세요 IO 리디렉션 아래에서는 다양한 형태의 모드.
지정한 파일이 이미 존재하는 경우 덮어쓰게 됩니다.

If --오류 명령줄에도 지정되지 않은 경우 stdout과 stderr 모두
다음에 의해 지정된 파일로 이동됩니다. --산출.

--개방 모드=<추가|자르기>
지정된 대로 추가 또는 자르기 모드를 사용하여 출력 및 오류 파일을 엽니다. 그만큼
기본값은 시스템 구성 매개변수에 의해 지정됩니다. 작업파일추가.

-p, --분할=<파티션 이름>
리소스 할당을 위해 특정 파티션을 요청합니다. 지정하지 않으면,
기본 동작은 slurm 컨트롤러가 기본 파티션을 선택하도록 허용하는 것입니다.
시스템 관리자가 지정한 대로. 작업이 둘 이상을 사용할 수 있는 경우
파티션, 쉼표로 구분된 목록에 이름을 지정하고 하나의 오퍼링
파티션 이름에 관계없이 가장 빠른 초기화가 사용됩니다.
순서 지정(우선 순위가 높은 파티션이 먼저 고려되지만). 때
작업이 시작되면 사용된 파티션의 이름이 작업의 첫 번째 위치에 놓입니다.
레코드 파티션 문자열.

--힘=<플래그>
쉼표로 구분된 전원 관리 플러그인 옵션 목록입니다. 현재 사용 가능한 플래그
포함: 레벨(작업에 할당된 모든 노드는 동일한 전원 캡을 가져야 합니다.
Slurm 구성 옵션 PowerParameters=job_no_level에 의해 비활성화될 수 있습니다.

--우선 순위=
특정 작업 우선 순위를 요청합니다. 특정 구성에 따라 달라질 수 있습니다.
제약. Slurm 운영자와 관리자만 우선 순위를 설정할 수 있습니다.
일.

--프로필=
acct_gather_profile 플러그인에 의한 상세한 데이터 수집을 가능하게 합니다. 상세 데이터
일반적으로 작업에 대한 HDF5 파일에 저장되는 시계열입니다.

All 모든 데이터 유형이 수집됩니다. (다른 값과 결합할 수 없습니다.)

없음 데이터 유형이 수집되지 않습니다. 이것이 기본값입니다.
(다른 값과 결합할 수 없습니다.)

에너지 에너지 데이터가 수집됩니다.

태스크 작업(I/O, 메모리, ...) 데이터가 수집됩니다.

파일 시스템
파일 시스템 데이터가 수집됩니다.

네트워크 네트워크(InfiniBand) 데이터가 수집됩니다.

--프롤로그=<실행 파일>
서두르다 달릴거야 실행 파일 작업 단계를 시작하기 직전. 명령줄
에 대한 주장 실행 파일 작업 단계의 명령 및 인수가 됩니다. 만약에
실행 파일 "none"이면 srun 프롤로그가 실행되지 않습니다. 이 매개변수는
slurm.conf의 SrunProlog 매개변수. 이 매개변수는 다음과 완전히 독립적입니다.
slurm.conf의 Prolog 매개변수.

--전파[=한계]
사용자가 전파할 수정 가능한(소프트) 리소스 제한을 지정할 수 있습니다.
컴퓨팅 노드에 적용하고 해당 작업에 적용합니다. 만약에 한계 지정되지 않은 경우
모든 리소스 제한이 전파됩니다. 다음 rlimit 이름이 지원됩니다.
Slurm 제공(일부 시스템에서는 일부 옵션이 지원되지 않을 수 있음):

공통 아래 나열된 모든 한도

AS 프로세스의 최대 주소 공간

CORE 코어 파일의 최대 크기

CPU 최대 CPU 시간

데이터 프로세스 데이터 세그먼트의 최대 크기

FSIZE 생성되는 파일의 최대 크기입니다. 사용자가 FSIZE를 다음으로 설정하면
slurmd.log의 현재 크기보다 작으면 작업 시작이 실패합니다.
'파일 크기 제한을 초과했습니다' 오류.

멤락 메모리에 잠글 수 있는 최대 크기

파일 없음 최대 열린 파일 수

NPROC 사용 가능한 최대 프로세스 수

RSS 최대 상주 세트 크기

스택 최대 스택 크기

--pty 의사 터미널 모드에서 태스크 XNUMX을 실행합니다. 암시적으로 설정 --완충되지 않은.
암시적으로 설정 --오류 and --산출 작업 XNUMX을 제외한 모든 작업에 대해 /dev/null로,
해당 작업이 즉시 종료될 수 있습니다(예: 쉘은 일반적으로 종료됩니다).
그 상황에서는 즉시). 현재 AIX 플랫폼에서는 지원되지 않습니다.

-Q, --조용한
srun에서 정보 메시지를 표시하지 않습니다. 오류는 계속 표시됩니다.

-q, --인터럽트 시 종료
단일 SIGINT(Ctrl-C)에서 즉시 종료합니다. 이 옵션을 사용하면 상태가 비활성화됩니다.
일반적으로 다음과 같은 경우에 사용할 수 있는 기능 서두르다 단일 Ctrl-C를 수신하고 원인 서두르다
대신 실행 중인 작업을 즉시 종료하십시오.

--qos=<qos>
작업에 대한 서비스 품질을 요청합니다. 각각에 대해 QOS 값을 정의할 수 있습니다.
Slurm 데이터베이스의 사용자/클러스터/계정 연결. 사용자는 다음으로 제한됩니다.
Slurm 구성 매개변수,
AccountingStorageEnforce는 정의에 "qos"를 포함합니다.

-r, --상대적인=<n>
노드를 기준으로 작업 단계 실행 n 현재 할당의 이 옵션은
현재 작업의 노드 간에 여러 작업 단계를 분산하는 데 사용됩니다. 만약에 -r is
사용하면 현재 작업 단계가 노드에서 시작됩니다. n 할당된 노드 목록 중
첫 번째 노드는 노드 0으로 간주됩니다. -r 옵션은 허용되지 않습니다 -w or -x
옵션이며 이전 할당 내에서 실행되지 않으면 치명적인 오류가 발생합니다.
(즉, SLURM_JOB_ID가 설정되지 않은 경우) 기본값은 n 0입니다.
--노드 식별된 노드 수를 초과합니다. --상대적인 옵션, a
경고 메시지가 인쇄되고 --상대적인 옵션이 우선 적용됩니다.

--재부팅
작업을 시작하기 전에 할당된 노드를 강제로 재부팅합니다. 이것은 단지
일부 시스템 구성에서 지원되며 그렇지 않으면 자동으로 무시됩니다.

--resv-포트
이 작업을 위해 통신 포트를 예약하세요. 사용자는 포트 번호를 지정할 수 있습니다.
예약하고 싶습니다. 매개변수 MpiParams=ports=12000-12999를 다음 위치에 지정해야 합니다.
slurm.conf. 지정하지 않은 경우 기본 예비 포트 수는
작업 수. 예약된 포트 수가 XNUMX이면 예약된 포트가 없습니다.
OpenMPI에 사용됩니다.

--예약=<name>
명명된 예약에서 작업에 대한 리소스를 할당합니다.

--restart-디렉터리=<예배 규칙서>
작업 또는 작업 단계의 체크포인트를 읽어야 하는 디렉터리를 지정합니다.
(checkpoint/blcrm 및 checkpoint/xlch 플러그인에서만 사용됨)

-s, --공유하다
작업 할당은 실행 중인 다른 작업과 리소스를 공유할 수 있습니다. 리소스
공유 대상은 노드, 소켓, 코어 또는 하이퍼스레드가 될 수 있습니다.
구성. 기본 공유 동작은 시스템 구성 및
파티션의 공유 옵션이 작업의 옵션보다 우선합니다. 이 옵션은
--share 옵션이 지정되지 않은 경우보다 더 빨리 할당이 부여됩니다.
더 높은 시스템 활용도를 설정하고 허용하지만 애플리케이션 성능은
자원 경쟁으로 인해 어려움을 겪습니다. --exclusive 옵션도 참조하십시오.

-S, --코어-사양=<NUM>
시스템 작업을 위해 작업에서 예약한 노드당 특수 코어 수 및
응용 프로그램에서 사용하지 않습니다. 애플리케이션은 이러한 코어를 사용하지 않지만
그들의 할당에 대해 청구됩니다. 기본값은 노드의
CoreSpecCount 값을 구성했습니다. XNUMX의 값이 지정되고 Slurm이
구성 옵션 AllowSpecResourcesUsage가 활성화되어 있으면 작업이 허용됩니다.
CoreSpecCount를 재정의하고 할당된 노드에서 특수 리소스를 사용합니다.
이 옵션은 --스레드 사양 옵션을 선택합니다.

--sip 다른 클러스터에 제출된 작업이 종속될 수 있는 작업으로 작업을 식별합니다.

--신호=<서명번호>[@시그타임>]
이내일 때 시그타임 종료 시간의 초, 신호를 보냅니다. 서명번호.
Slurm에 의한 이벤트 처리의 해상도로 인해 신호가 최대 60개까지 전송될 수 있습니다.
지정된 것보다 초 빠릅니다. 서명번호 신호 번호 또는 이름일 수 있습니다.
(예: "10" 또는 "USR1"). 시그타임 0에서 65535 사이의 정수 값을 가져야 합니다.
기본적으로 작업 종료 시간 전에는 신호가 전송되지 않습니다. 만약 서명번호 지정됨
어떤없이 시그타임, 기본 시간은 60초입니다.

--slurmd-디버그=<수평>
다음에 대한 디버그 수준을 지정합니다. 슬럼드(8). 그만큼 수평 정수로 지정될 수 있습니다.
0[조용함, 오류만 표시됨]과 4[자세한 작업] 사이의 값 또는
Slurmd디버그 태그.

조용한 아무것도 기록하지 않음

치명적인 치명적인 오류만 기록

오류 오류만 기록

정보 오류 및 일반 정보 메시지 기록

말 수가 많은 오류 및 자세한 정보 메시지 기록

slurmd 디버그 정보는 다음의 stderr에 복사됩니다.
작업. 기본적으로 오류만 표시됩니다.

--노드당 소켓=<소켓>
최소한 지정된 수의 소켓이 있는 노드로 노드 선택을 제한합니다.
아래에서 추가 정보를 참조하십시오. -B 작업/친화도 플러그인이 있는 경우 위의 옵션
사용하도록 설정되었습니다.

--스위치=<계산>[@최대 시간>]
트리 토폴로지를 사용하는 경우 원하는 최대 스위치 수를 정의합니다.
작업 할당 및 선택적으로 해당 작업 수를 기다리는 최대 시간
스위치. Slurm이 개수보다 더 많은 스위치를 포함하는 할당을 찾은 경우
지정된 경우 작업은 원하는 할당을 찾을 때까지 보류 상태로 유지됩니다.
스위치 카운트 또는 시간 제한이 만료됩니다. 스위치 수 제한이 없습니다.
작업 시작이 지연되지 않습니다. 허용되는 시간 형식에는 "분",
"분:초", "시:분:초", "일-시", "일-시:분" 및
"일-시간:분:초". 작업의 최대 시간 지연은 다음에 의해 제한될 수 있습니다.
사용하는 시스템 관리자 스케줄러 매개변수 구성 매개변수
최대_스위치_대기 매개변수 옵션. 기본 최대 시간은 max_switch_wait입니다.
스케줄러 매개변수.

-T, --스레드=<n스레드>
작업 요청을 보내는 데 사용되는 동시 스레드 수를 제한할 수 있습니다.
srun 프로세스를 할당된 노드의 slurmd 프로세스로 전환합니다. 기본값은 사용하는 것입니다.
할당된 노드당 하나의 스레드, 최대 60개의 동시 스레드. 지정
이 옵션은 동시 스레드 수를 다음으로 제한합니다. n스레드 (작거나 같음
60). 이는 매우 낮은 스레드 수를 테스트하기 위해 설정하는 데에만 사용해야 합니다.
소형 메모리 컴퓨터.

-t, --시각=<시간>
작업 할당의 총 실행 시간에 대한 제한을 설정합니다. 요청한 시간이면
제한이 파티션의 시간 제한을 초과하면 작업이 PENDING 상태로 유지됩니다.
(아마도 무기한). 기본 시간 제한은 파티션의 기본 시간입니다.
한계. 시간 제한에 도달하면 각 작업 단계의 각 태스크가 SIGTERM으로 전송됩니다.
다음은 SIGKILL입니다. 신호 사이의 간격은 Slurm에 의해 지정됩니다.
구성 매개 변수 킬웨이트. 그만큼 초과 시간 제한 구성 매개변수는
작업이 예약된 것보다 더 오래 실행되도록 허용합니다. 시간 해상도는 XNUMX분이며
초 값은 다음 분으로 반올림됩니다.

시간 제한이 없는 제로 요청의 시간 제한. 허용 시간
형식에는 "분", "분:초", "시:분:초",
"일-시", "일-시:분" 및 "일-시:분:초".

--작업-에필로그=<실행 파일>
이 어플리케이션에는 XNUMXµm 및 XNUMXµm 파장에서 최대 XNUMXW의 평균 출력을 제공하는 슬럼 스텝 데몬이 실행됩니다 실행 파일 각 작업이 종료된 직후. 이것
slurm.conf의 TaskEpilog 매개변수가 실행되기 전에 실행됩니다. 이것은
매우 짧은 프로그램을 의미했습니다. 몇 시간 내에 종료되지 않는 경우
초 후에는 모든 하위 프로세스와 함께 종료됩니다.

--작업 프롤로그=<실행 파일>
이 어플리케이션에는 XNUMXµm 및 XNUMXµm 파장에서 최대 XNUMXW의 평균 출력을 제공하는 슬럼 스텝 데몬이 실행됩니다 실행 파일 각 작업을 시작하기 직전에. 이것
slurm.conf의 TaskProlog 매개변수가 실행된 후에 실행됩니다. 게다가
일반 환경 변수에는 SLURM_TASK_PID를 사용하여 식별할 수 있습니다.
시작되는 작업의 프로세스 ID입니다. 이 프로그램의 표준 출력
"export NAME=value" 형식은 작업에 대한 환경 변수를 설정하는 데 사용됩니다.
산란되는 중.

--테스트 전용
현재 작업에 따라 작업 실행이 예정된 예상 시간을 반환합니다.
대기열 및 기타 모든 서두르다 작업을 지정하는 인수입니다. 이 제한 스런의
단지 정보를 반환하는 행동; 실제로 제출된 작업은 없습니다. 예외: 켜기
기존 작업 할당 내에서 실행될 때 Bluegene/Q 시스템이 켜져 있으면 비활성화됩니다.
작업을 시작하기 위해 "runjob"을 사용합니다. 프로그램은 직접 실행됩니다.
slurmd 데몬.

--스레드 사양=<NUM>
시스템 작업을 위해 작업에서 예약한 노드당 특수 스레드 수 및
응용 프로그램에서 사용하지 않습니다. 애플리케이션은 이러한 스레드를 사용하지 않지만
그들의 할당에 대해 청구됩니다. 이 옵션은 --코어-사양
옵션을 선택합니다.

--코어당 스레드 수=<스레드>
노드 당 최소한 지정된 수의 스레드가 있는 노드로 노드 선택을 제한합니다.
핵심. 참고: "스레드"는 각 코어의 처리 장치 수를 의미합니다.
코어당 실행할 애플리케이션 작업 수보다 많습니다. 추가 보기
아래의 정보 -B 작업/친화성 플러그인이 활성화된 경우 위의 옵션.

--시간-분=<시간>
작업 할당에 대한 최소 시간 제한을 설정합니다. 지정된 경우 작업에 다음이 있을 수 있습니다.
그건 --시각 보다 낮지 않은 값으로 제한 --시간-분 허용하는 경우
다른 경우보다 더 일찍 실행을 시작하는 작업. 작업의 시간 제한
작업에 리소스가 할당된 후에는 변경되지 않습니다. 이것은 a에 의해 수행됩니다.
그렇지 않으면 더 높은 용도로 예약된 리소스를 할당하는 백필 스케줄링 알고리즘
우선순위 작업. 허용되는 시간 형식에는 "분", "분:초",
"시:분:초", "일-시", "일-시:분" 및
"일-시간:분:초".

--tmp=<MB>
최소 임시 디스크 공간을 지정합니다.

-u, --완충되지 않은
기본적으로 slurmstepd와 사용자가 시작한 애플리케이션 간의 연결은 다음과 같습니다.
파이프 위에. 애플리케이션이 작성한 stdio 출력은 glibc에 의해 버퍼링됩니다.
플러시되거나 출력이 버퍼링되지 않은 것으로 설정될 때까지. 보다 Setbuf(삼). 이 경우
옵션이 지정되면 작업은 의사 터미널로 실행되므로
애플리케이션 출력은 버퍼링되지 않습니다.

--용법
간단한 도움말 메시지를 표시하고 종료합니다.

--유체=<사용자>
다음으로 작업 제출 및/또는 실행 시도 사용자 호출하는 사용자 ID 대신. 그만큼
사용자 자격 증명 호출은 대상에 대한 액세스 권한을 확인하는 데 사용됩니다.
분할. 사용자 루트는 이 옵션을 사용하여 RootOnly에서 일반 사용자로 작업을 실행할 수 있습니다.
예를 들어 파티션. 루트로 실행하면, 서두르다 uid에 대한 권한을 삭제합니다
노드 할당이 성공한 후에 지정됩니다. 사용자 사용자 이름이거나
숫자로 된 사용자 ID.

-V, --번역
버전 정보를 표시하고 종료합니다.

-v, --말 수가 많은
srun의 정보 메시지의 자세한 내용을 늘립니다. 다수의 -v의 의지
srun의 장황함을 더욱 증가시킵니다. 기본적으로 오류만 표시됩니다.

-W, --기다리다=<>
모든 작업을 종료하기 전에 첫 번째 작업이 종료된 후 대기할 시간을 지정합니다.
남은 과제. 0 값은 무제한 대기를 나타냅니다(경고가 발생함).
60초 후). 기본값은 slurm의 WaitTime 매개변수에 의해 설정됩니다.
구성 파일(참조 slurm.conf(5)). 이 옵션은 다음을 보장하는 데 유용할 수 있습니다.
하나 이상의 작업이 종료되는 경우 작업이 적시에 종료됩니다.
조기에. 참고: -K, --잘못된 종료 시 종료 옵션이 우선합니다 -W,
--기다리다 작업이 XNUMX이 아닌 종료 코드로 종료되는 경우 작업을 즉시 종료합니다.

-w, --노드리스트=<호스트1,호스트2,... or 파일 이름>
특정 호스트 목록을 요청합니다. 작업에는 다음이 포함됩니다. 모든 이러한 호스트와
리소스 요구 사항을 충족하기 위해 필요에 따라 호스트를 추가할 수 있습니다. 목록은
쉼표로 구분된 호스트 목록, 호스트 범위(host[1-5,7,...])로 지정되어야 합니다.
예를 들어) 또는 파일 이름입니다. 호스트 목록은 다음과 같은 경우 파일 이름으로 간주됩니다.
"/" 문자를 포함합니다. 최소 노드 또는 프로세서 수를 더 크게 지정하는 경우
제공된 호스트 목록에서 충족할 수 있는 것보다 추가 리소스가
필요에 따라 다른 노드에 할당됩니다. 호스트 이름을 여러 번 반복하는 대신
경우에 따라 별표와 반복 횟수가 호스트 이름에 추가될 수 있습니다. 을 위한
예를 들어 "host1,host1"과 "host1*2"는 동일합니다.

--wckey=<화장실>
작업과 함께 사용할 wckey를 지정합니다. slurm.conf에서 TrackWCKey=no(기본값)인 경우
이 값은 무시됩니다.

-X, --비활성화 상태
srun이 단일 SIGINT(Ctrl-C)를 수신할 때 작업 상태 표시를 비활성화합니다.
대신 SIGINT를 실행 중인 작업에 즉시 전달하세요. 이 옵션이 없으면
작업을 강제로 종료하려면 XNUMX초 안에 두 번째 Ctrl-C가 필요하며 서두르다 의지
즉시 종료합니다. 환경 변수를 통해 설정할 수도 있습니다.
SLURM_DISABLE_STATUS.

-x, --들어오지 못하게 하다=<호스트1,호스트2,... or 파일 이름>
할당된 리소스에 특정 호스트 목록이 포함되지 않도록 요청합니다.
이 직업. 호스트 목록에 다음이 포함된 경우 파일 이름으로 간주됩니다.
"/"성격.

-Z, --할당 안함
Slurm "작업"을 생성하지 않고 노드 집합에서 지정된 작업을 실행합니다.
일반적인 자원 할당 단계를 우회하는 Slurm 대기열 구조. 목록
노드는 다음과 같이 지정되어야 합니다. -w, --노드리스트 옵션. 이는 특권이다
옵션은 "SlurmUser" 및 "root" 사용자에게만 제공됩니다.

다음 옵션은 Blue Gene 시스템을 지원하지만 다음과 같이 다른 시스템에 적용할 수 있습니다.
잘.

--blrts-이미지=<통로>
bluegene 블록에 대한 blrts 이미지의 경로입니다. BGL 전용. 기본값 blugene.conf if
설정되지 않았습니다.

--cnload-이미지=<통로>
bluegene 블록의 컴퓨팅 노드 이미지에 대한 경로입니다. BGP 전용. 기본값
blugene.conf 설정되지 않은 경우.

--conn 유형=<유형>
블록 연결 유형이 특정 유형이어야 합니다. 블루진에
허용되는 유형 MESH, TORUS 및 NAV입니다. NAV인 경우 또는 설정되지 않은 경우 Slurm은
그렇지 않은 경우 defaultConnType이 bluegene.conf에 설정된 내용에 맞추십시오.
기본값은 TORUS로 설정합니다. 일반적으로 이 옵션을 설정하면 안 됩니다. 에서 실행하는 경우
BGP 시스템이고 HTC 모드에서 실행하려고 합니다(미드플레인 1개 이하에만 해당). 너
SMP에는 HTC_S, 듀얼에는 HTC_D, 가상 노드 모드에는 HTC_V, HTC_L에는 HTC_L을 사용할 수 있습니다.
리눅스 모드. 치수별로 다른 연결 유형을 허용하는 시스템의 경우
쉼표로 구분된 연결 유형 목록을 제공할 수 있습니다.
각 치수(예: M,T,T,T는 토러스 연결이 모든 치수임을 나타냅니다.
첫 번째를 기대하십시오).

-g, --기하학=<XxYxZ> |도끼XxYxZ>
작업에 대한 지오메트리 요구 사항을 지정합니다. BlueGene/L 및 BlueGene/P 시스템에서
X, Y, Z 방향의 치수를 나타내는 세 개의 숫자가 있습니다.
BlueGene/Q 시스템에는 A, X, Y 및 Z에 치수를 제공하는 XNUMX개의 숫자가 있습니다.
방향 및 하위 블록을 할당하는 데 사용할 수 없습니다. 예를 들어
"--geometry=1x2x3x4", 1 x 2 x 3 x 4 = 24개 노드가 있는 노드 블록 지정
(실제로는 BlueGene의 미드플레인).

--ioload-이미지=<통로>
bluegene 블록의 io 이미지 경로입니다. BGP 전용. 기본값 blugene.conf 그렇지 않다면
설정할 수 있습니다.

--리눅스-이미지=<통로>
bluegene 블록의 Linux 이미지 경로입니다. BGL 전용. 기본값 blugene.conf if
설정되지 않았습니다.

--mloader-이미지=<통로>
bluegene 블록의 mloader 이미지 경로입니다. 기본값 blugene.conf 설정되지 않은 경우.

-R, --회전하지 않음
적절한 크기에 맞추기 위해 작업에서 요청한 지오메트리의 회전을 비활성화합니다.
차단하다. 기본적으로 지정된 형상은 XNUMX차원으로 회전할 수 있습니다.

--ramdisk-이미지=<통로>
bluegene 블록의 ramdisk 이미지 경로입니다. BGL 전용. 기본값 blugene.conf if
설정되지 않았습니다.

서두르다 slurm 작업 컨트롤러에 작업 요청을 제출한 다음 모든 프로세스를 시작합니다.
원격 노드에서. 요청을 즉시 충족할 수 없는 경우, 서두르다 까지 차단됩니다
리소스는 작업을 실행하는 데 무료입니다. 만약 -I (--즉각적인) 옵션이 지정되었습니다 서두르다 의지
리소스를 즉시 사용할 수 없으면 종료합니다.

원격 프로세스를 시작할 때 서두르다 그렇지 않으면 현재 작업 디렉토리를 전파합니다.
--chdir=<통로>이 지정된 경우 통로 의 작업 디렉토리가 됩니다.
원격 프로세스.

이 어플리케이션에는 XNUMXµm 및 XNUMXµm 파장에서 최대 XNUMXW의 평균 출력을 제공하는 -N, -c-N 옵션은 CPU와 노드가 작업에 할당되는 방식을 제어합니다. 언제
실행할 프로세스 수만 지정 -n, 프로세스당 하나의 CPU가 기본값입니다.
할당됩니다. 작업당 필요한 CPU 수를 지정하여(-c), 하나 이상의 CPU
프로세스별로 할당될 수 있습니다. 노드 수를 다음과 같이 지정한 경우 -N, 서두르다 의지
할당을 시도하다 at 가장 작은 지정된 노드 수.

위의 세 가지 옵션을 조합하여 프로세스 방식을 변경할 수 있습니다.
노드와 CPU에 분산됩니다. 예를 들어,
실행할 프로세스 및 노드 수, 노드당 프로세스 수는 다음과 같습니다.
암시. 그러나 프로세스당 CPU 수가 더 중요한 경우
프로세스(-n) 및 프로세스당 CPU 수(-c)을 지정해야 합니다.

서두르다 않는 한 CPU 당 하나 이상의 프로세스 할당을 거부합니다. --오버커밋 (-O)이다
도 지정했습니다.

서두르다 위의 사양을 "최소"로 충족하려고 노력할 것입니다. 즉, 16노드라면
32개 프로세스에 대해 요청하고 일부 노드에는 CPU가 2개 없는 경우 노드 할당
CPU 수요를 충족시키기 위해 증가할 것입니다. 즉, 최저한의 (총 16 단계)
노드가 요청되고 있습니다. 하지만 16개의 프로세스에 15개의 노드를 요청한다면, 서두르다 의지
15개의 프로세스가 16개의 노드에서 실행될 수 없으므로 이를 오류로 간주하십시오.

IO 리디렉션

기본적으로 stdout 및 stderr은 모든 작업에서 stdout 및 stderr로 리디렉션됩니다.
of 서두르다, stdin은 표준 입력에서 리디렉션됩니다. 서두르다 모든 원격 작업에.
생성된 작업의 하위 집합에서만 stdin을 읽을 수 있는 경우 읽을 파일을 지정합니다.
에서 stdin을 전달하는 대신 서두르다 명령을 사용하는 것이 더 바람직할 수 있습니다.
결코 읽혀지지 않을 데이터를 이동하고 저장합니다.

OS X의 경우 poll() 함수는 stdin을 지원하지 않으므로 터미널에서 입력이 되지 않습니다.
수.

BGQ의 경우 srun은 시스템에서 실행되는 1개 작업에 대한 stdin만 지원합니다. 기본적으로 taskid입니다.
0이지만 -i로 변경할 수 있습니다. 아래에 설명된 대로 또는
--launcher-opts="--stdinrank= ".

이 동작은 다음을 통해 변경될 수 있습니다. --산출, --오류--입력 (-o, -e, -i) 옵션.
이러한 옵션에 대한 유효한 형식 사양은 다음과 같습니다.

모든 stdout stderr는 모든 작업에서 srun으로 리디렉션됩니다. stdin은 모두에게 방송됩니다.
원격 작업. (이것이 기본 동작입니다)

없음 stdout 및 stderr은 어떤 작업에서도 수신되지 않습니다. stdin은 어떤 작업에도 전송되지 않습니다
(stdin이 닫혀 있습니다).

작업 ID stdout 및/또는 stderr은 상대 ID가 다음과 같은 작업에서만 리디렉션됩니다.
작업 ID, 여기서 0 <= 작업 ID <= n태스크어디로 n태스크 총 작업 수입니다.
현재 작업 단계에서. stdin은 stdin에서 리디렉션됩니다. 서두르다 이에 대한
같은 작업. 이 파일은 작업을 실행하는 노드에 기록됩니다.

파일 이름 서두르다 stdout 및/또는 stderr을 모든 작업의 ​​명명된 파일로 리디렉션합니다. 표준 입력
명명된 파일에서 리디렉션되어 작업의 모든 작업에 브로드캐스트됩니다.
파일 이름 실행되는 호스트의 경로를 나타냅니다. 서두르다. 에 따라
클러스터의 파일 시스템 레이아웃으로 인해 출력이 다음 위치에 나타날 수 있습니다.
작업이 일괄 모드로 실행되는지 여부에 따라 위치가 다릅니다.

체재
서두르다 명명된 IO 파일을 생성하는 데 형식 문자열을 사용할 수 있습니다.
전술 한 바와. 다음 형식 지정자 목록은
특정 작업 ID에 고유한 파일 이름을 생성하는 형식 문자열,
stepid, 노드 또는 작업입니다. 각각의 경우에 적절한 수의 파일이 열립니다.
해당 작업과 연결됩니다. 모든 형식 문자열에 유의하세요.
%t, %n 및/또는 %N을 포함하는 내용은 작업을 실행하는 노드에 기록됩니다.
노드가 아닌 서두르다 실행되면 이러한 형식 지정자는 그렇지 않습니다.
BGQ 시스템에서 지원됩니다.

%A 작업 배열의 마스터 작업 할당 번호입니다.

%a 작업 배열 ID(색인) 번호입니다.

실행 중인 작업의 %J jobid.stepid입니다. (예: "128.0")

실행 중인 작업의 %j 작업 ID입니다.

실행 중인 작업의 %s 단계 ID입니다.

%N 짧은 호스트 이름. 이렇게 하면 노드당 별도의 IO 파일이 생성됩니다.

%n 현재 작업과 관련된 노드 식별자(예: "0"은 작업의 첫 번째 노드입니다.
실행 중인 작업) 이렇게 하면 노드당 별도의 IO 파일이 생성됩니다.

%t 현재 작업에 상대적인 작업 식별자(순위)입니다. 이렇게 하면
작업별로 별도의 IO 파일.

%u 사용자 이름입니다.

퍼센트 문자와 형식 지정자 사이에 숫자를 사용할 수 있습니다.
IO 파일 이름의 결과를 XNUMX으로 채웁니다. 형식이 다음과 같은 경우 이 숫자는 무시됩니다.
지정자는 숫자가 아닌 데이터(예: %N)에 해당합니다.

형식 문자열이 4개 태스크 작업 단계에 사용되는 방법에 대한 몇 가지 예
작업 ID 128과 단계 ID 0이 아래에 포함됩니다.

직업%J.out 직업128.0.out

직업%4j.out 직업0128.out

job%j-%2t.out job128-00.out, job128-01.out, ...

입력 환경 변수


일부 srun 옵션은 환경 변수를 통해 설정할 수 있습니다. 이러한 환경 변수는
해당 옵션과 함께 아래에 나열되어 있습니다. 참고: 명령줄 옵션은
항상 이 설정을 재정의하세요.

PMI_팬아웃 이는 PMI(MPICH2 및 MVAPICH2) 및 제어에만 사용됩니다.
데이터 통신의 팬아웃. srun 명령은 메시지를 보냅니다.
응용 프로그램(PMI 라이브러리를 통해) 및 해당 응용 프로그램
해당 데이터를 이 수까지 전달하도록 요청될 수 있습니다.
추가 작업. 더 높은 값은 srun 명령에서 작업을 오프로드합니다.
애플리케이션에 대한 취약점을 증가시킬 가능성이 높습니다.
실패. 기본값은 32입니다.

PMI_FANOUT_OFF_HOST 이는 PMI(MPICH2 및 MVAPICH2) 및 제어에만 사용됩니다.
데이터 통신의 팬아웃. srun 명령은 메시지를 보냅니다.
응용 프로그램(PMI 라이브러리를 통해) 및 해당 응용 프로그램
해당 데이터를 추가 작업으로 전달하도록 요청될 수 있습니다. 에 의해
기본적으로 srun은 호스트당 하나의 메시지를 보내고 해당 호스트에 하나의 작업을 보냅니다.
해당 호스트의 다른 작업으로 데이터를 전달합니다. PMI_팬아웃. 면
PMI_FANOUT_OFF_HOST 정의된 경우 사용자 작업은 다음을 수행해야 할 수 있습니다.
데이터를 다른 호스트의 작업으로 전달합니다. 환경
PMI_FANOUT_OFF_HOST 성능이 향상될 수 있습니다. 일이 더 많기 때문에
사용자 애플리케이션에 의해 로드된 PMI 라이브러리에 의해 수행됩니다.
또한 실패는 더 흔하고 진단하기가 더 어려울 수 있습니다.

PMI_TIME 이는 PMI(MPICH2 및 MVAPICH2) 및 제어에만 사용됩니다.
작업에서 Srun까지의 통신이 얼마나 확산되는지
srun 명령이 압도되는 것을 피하기 위해 제 시간에 종료됩니다.
일하다. 기본값은 작업당 500(마이크로초)입니다. ~에
상대적으로 느린 프로세서 또는 매우 큰 프로세서를 탑재한 시스템
개수(및 대규모 PMI 데이터 세트)가 있는 경우 더 높은 값이 필요할 수 있습니다.

SLURM_CONF Slurm 구성 파일의 위치입니다.

SLURM_ACCOUNT 과 동일 -NS, --계정

SLURM_ACCTG_FREQ 과 동일 --acctg-주파수

SLURM_BCAST 과 동일 --bcast

SLURM_BLRTS_IMAGE 과 동일 --blrts-이미지

SLURM_BURST_BUFFER 과 동일 --bb

SLURM_체크포인트 과 동일 --검문소

SLURM_CHECKPOINT_DIR 과 동일 --체크포인트 디렉터리

SLURM_CNLOAD_IMAGE 과 동일 --cnload-이미지

SLURM_CONN_TYPE 과 동일 --conn 유형

SLURM_CORE_SPEC 과 동일 --코어-사양

SLURM_CPU_BIND 과 동일 --cpu_bind

SLURM_CPU_FREQ_REQ 과 동일 --cpu-주파수.

SLURM_CPUS_PER_TASK 과 동일 -씨, --작업당 cpus

SLURM_DEBUG 과 동일 -V, --말 수가 많은

슬럼D_DEBUG 과 동일 -NS, --slurmd-디버그

SLURM_DEPENDENCY -NS, --의존=<조이드>

SLURM_DISABLE_STATUS 과 동일 -NS, --비활성화 상태

SLURM_DIST_PLANESIZE 과 동일 -m 평면

SLURM_분배 과 동일 -미디엄, --분포

SLURM_EPILOG 과 동일 --발문

SLURM_독점 과 동일 --독점적 인

SLURM_EXIT_ERROR Slurm 오류가 발생할 때 생성되는 종료 코드를 지정합니다(예:
유효하지 않은 옵션). 이것은 스크립트에서 구별하는 데 사용할 수 있습니다.
다양한 Slurm 오류 조건의 애플리케이션 종료 코드. 또한
참조 SLURM_EXIT_IMMEDIATE.

SLURM_EXIT_IMMEDIATE 때 생성되는 종료 코드를 지정합니다. --즉각적인 옵션은
현재 리소스를 사용할 수 없습니다. 이것은 다음에서 사용할 수 있습니다.
다양한 Slurm에서 애플리케이션 종료 코드를 구별하는 스크립트
오류 조건. 참조 SLURM_EXIT_ERROR.

SLURM_기하학 과 동일 -NS, --기하학

SLURM_힌트 과 동일 --힌트

SLURM_GRES 과 동일 --gres. 참조 SLURM_STEP_GRES

SLURM_IMMEDIATE 과 동일 -NS, --즉각적인

SLURM_IOLOAD_IMAGE 과 동일 --ioload-이미지

SLURM_JOB_ID (그리고 SLURM_JOBID 이전 버전과의 호환성을 위해)
과 동일 --작업 비드

SLURM_JOB_NAME 과 동일 -제이, --직업 이름 기존 할당 내를 제외하고
이 경우 일괄 작업 이름을 사용하지 않기 위해 무시됩니다.
각 작업 단계의 이름입니다.

SLURM_JOB_NUM_NODES (그리고 SLURM_NNODES 이전 버전과의 호환성을 위해)
작업 리소스 할당의 총 노드 수입니다.

SLURM_KILL_BAD_EXIT 과 동일 -케이, --잘못된 종료 시 종료

SLURM_LABELIO 과 동일 -엘, --상표

SLURM_LINUX_IMAGE 과 동일 --리눅스-이미지

SLURM_MEM_BIND 과 동일 --mem_bind

SLURM_MEM_PER_CPU 과 동일 --cpu당 메모리

SLURM_MEM_PER_NODE 과 동일 --멤

SLURM_MLOADER_IMAGE 과 동일 --mloader-이미지

SLURM_MPI_TYPE 과 동일 --mpi

SLURM_네트워크 과 동일 --회로망

SLURM_NNODES 과 동일 -N, --노드

SLURM_NO_ROTATE 과 동일 -NS, --회전하지 않음

SLURM_NTASKS (그리고 SLURM_NPROCS 이전 버전과의 호환성을 위해)
과 동일 -N, --ntasks

SLURM_NTASKS_PER_CORE 과 동일 --n코어당 작업

SLURM_NTASKS_PER_NODE 과 동일 --n노드당 작업

SLURM_NTASKS_PER_SOCKET
과 동일 --소켓당 태스크

SLURM_OPEN_MODE 과 동일 --개방 모드

SLURM_OVERCOMMIT 과 동일 -영형, --오버커밋

SLURM_파티션 과 동일 -NS, --분할

SLURM_PMI_KVS_NO_DUP_KEYS
설정된 경우 PMI 키 쌍에는 중복 키가 포함되지 않습니다. MPI는 할 수 있다
이 변수를 사용하여 PMI 라이브러리에 사용하지 않을 것임을 알립니다.
PMI가 중복 키 확인을 건너뛸 수 있도록 중복 키입니다. 이것
MPICH2의 경우이며 다음을 테스트하는 데 드는 오버헤드를 줄입니다.
성능 향상을 위한 복제

SLURM_POWER 과 동일 --힘

SLURM_PROFILE 과 동일 --프로필

SLURM_PROLOG 과 동일 --프롤로그

SLURM_QOS 과 동일 --qos

SLURM_RAMDISK_IMAGE 과 동일 --ramdisk-이미지

SLURM_REMOTE_CWD 과 동일 -NS, --chdir=

SLURM_REQ_SWITCH 트리 토폴로지를 사용하는 경우 최대 개수를 정의합니다.
작업 할당에 필요한 스위치 및 선택적으로 최대
해당 스위치 수를 기다리는 시간입니다. 보다 --스위치

SLURM_예약 과 동일 --예약

SLURM_RESTART_DIR 과 동일 --restart-디렉터리

SLURM_RESV_PORTS 과 동일 --resv-포트

SLURM_SICP 과 동일 --sip

슬럼_시그널 과 동일 --신호

SLURM_STDERRMODE 과 동일 -이자형, --오류

SLURM_STDINMODE 과 동일 -NS, --입력

SLURM_SRUN_REDUCE_TASK_EXIT_MSG
설정되고 XNUMX이 아닌 경우 동일한 작업 종료 메시지가 연속적으로 표시됩니다.
종료 코드는 한 번만 인쇄됩니다.

SLURM_STEP_GRES 과 동일 --gres (작업 단계에만 적용되며 작업 할당에는 적용되지 않음)
참조 SLURM_GRES

SLURM_STEP_KILLED_MSG_NODE_ID=ID
설정된 경우 작업 또는 단계가 실행될 때 지정된 노드만 기록됩니다.
신호에 의해 사망.

SLURM_STDOUTMODE 과 동일 -영형, --산출

SLURM_TASK_EPILOG 과 동일 --작업-에필로그

SLURM_TASK_PROLOG 과 동일 --작업 프롤로그

SLURM_TEST_EXEC 정의된 경우 실행 가능한 프로그램이 있는지 확인하십시오.
컴퓨팅 노드에서 실행을 시도하기 전에 로컬 컴퓨터.

SLURM_THREAD_SPEC 과 동일 --스레드 사양

SLURM_THREADS 과 동일 -NS, --스레드

SLURM_TIMELIMIT 과 동일 -NS, --시각

SLURM_UNBUFFEREDIO 과 동일 -유, --완충되지 않은

SLURM_WAIT 과 동일 - 여, --기다리다

SLURM_WAIT4SWITCH 요청된 스위치를 기다리는 최대 시간입니다. 보다 --스위치

SLURM_WCKEY 과 동일 - 여, --wckey

SLURM_WORKING_DIR -NS, --chdir

출력 환경 변수


srun은 실행 중인 작업 환경에 일부 환경 변수를 설정합니다.
원격 컴퓨팅 노드. 이러한 환경 변수는 다음과 같습니다.

SLURM_CHECKPOINT_IMAGE_DIR
다음과 같은 경우 체크포인트 이미지를 기록해야 하는 디렉터리입니다.
실행 라인에 지정됩니다.

SLURM_CLUSTER_NAME 작업이 실행 중인 클러스터의 이름입니다.

SLURM_CPU_BIND_VERBOSE
--cpu_bind 자세한 정보(조용함, 자세한 정보).

SLURM_CPU_BIND_TYPE --cpu_bind 유형(없음,순위,map_cpu:,mask_cpu:).

SLURM_CPU_BIND_LIST --cpu_bind 맵 또는 마스크 목록(Slurm CPU ID 또는 이에 대한 마스크 목록)
노드, CPU_ID = 보드_ID x 스레드당_보드 + 소켓_ID x
스레드_당_소켓 + 코어_ID x 스레드_당_코어 + 스레드_ID).

SLURM_CPU_FREQ_REQ srun 명령에서 CPU 주파수에 대해 요청된 값을 포함합니다.
킬로헤르츠 단위의 숫자 주파수 또는 코드화된 값으로
요청 낮은, 매질,높이1 or 높은 주파수를 위해. 참조
설명 --cpu-주파수 옵션 또는 SLURM_CPU_FREQ_REQ 입력
환경 변수.

SLURM_CPUS_ON_NODE 이 노드의 작업에 사용할 수 있는 프로세서 수입니다. 참고하세요
select/linear 플러그인은 전체 노드를 작업에 할당하므로 값은
노드의 총 CPU 수를 나타냅니다. 에 대한
select/cons_res 플러그인, 이 숫자는 해당 플러그인의 코어 수를 나타냅니다.
이 노드는 작업에 할당됩니다.

SLURM_CPUS_PER_TASK 작업당 요청된 CPU 수입니다. 경우에만 설정 --작업당 cpus
옵션이 지정되었습니다.

SLURM_분배 할당된 작업의 배포 유형입니다. 분포를 다음과 같이 설정하십시오.
-m, --distribution.

SLURM_GTIDS 이 노드에서 실행되는 전역 작업 ID입니다. 원점 XNUMX 및 쉼표
분리.

SLURM_JOB_CPUS_PER_NODE
노드당 CPU 수.

SLURM_JOB_DEPENDENCY --dependent 옵션의 값으로 설정합니다.

SLURM_JOB_ID (그리고 SLURM_JOBID 이전 버전과의 호환성을 위해)
실행 중인 작업의 작업 ID입니다.

SLURM_JOB_NAME --job-name 옵션의 값 또는 다음 명령 이름으로 설정합니다.
srun은 새로운 작업 할당을 생성하는 데 사용됩니다. srun이 설정된 경우에는 설정되지 않습니다.
작업 단계를 생성하는 데에만 사용됩니다(예: 기존 작업 내에서).
배당).

SLURM_JOB_PARTITION 작업이 실행 중인 파티션의 이름입니다.

SLURM_LAUNCH_NODE_IPADDR
작업 시작이 시작된 노드의 IP 주소
(srun 명령이 실행된 위치)

SLURM_LOCALID 작업 내의 프로세스에 대한 노드 로컬 작업 ID입니다.

SLURM_MEM_BIND_VERBOSE
--mem_bind 자세한 정보(조용함, 자세한 정보).

SLURM_MEM_BIND_TYPE --mem_bind 유형(없음,순위,map_mem:,mask_mem:).

SLURM_MEM_BIND_LIST --mem_bind 맵 또는 마스크 목록( ).

SLURM_NNODES 작업 리소스 할당의 총 노드 수입니다.

SLURM_NODE_ALIASES 노드 이름, 통신 주소, 노드 호스트 이름 세트
클라우드에서 작업에 할당됩니다. 세트의 각 요소는 다음과 같습니다.
콜론으로 구분되며 각 세트는 쉼표로 구분됩니다. 예를 들어:
SLURM_NODE_ALIASES=ec0:1.2.3.4:foo,ec1:1.2.3.5:바

SLURM_NODEID 현재 노드의 상대 노드 ID입니다.

SLURM_NODELIST 작업에 할당된 노드 목록입니다.

SLURM_NTASKS (그리고 SLURM_NPROCS 이전 버전과의 호환성을 위해)
현재 작업의 총 프로세스 수입니다.

SLURM_PRIO_PROCESS 작업 제출 시의 예약 우선순위(nice 값)입니다.
이 값은 생성된 프로세스에 전파됩니다.

SLURM_PROCID 현재 프로세스의 MPI 순위(또는 상대 프로세스 ID)입니다.

SLURM_SRUN_COMM_HOST srun 통신 호스트의 IP 주소입니다.

SLURM_SRUN_COMM_PORT srun 통신 포트.

SLURM_STEP_LAUNCHER_PORT
단계 실행기 포트.

SLURM_STEP_NODELIST 단계에 할당된 노드 목록입니다.

SLURM_STEP_NUM_NODES 단계에 할당된 노드 수입니다.

SLURM_STEP_NUM_TASKS 단계의 프로세스 수입니다.

SLURM_STEP_TASKS_PER_NODE
단계 내 노드당 프로세스 수입니다.

SLURM_STEP_ID (그리고 SLURM_STEPID 이전 버전과의 호환성을 위해)
현재 작업의 단계 ID입니다.

SLURM_SUBMIT_DIR 디렉토리 서두르다 호출되었습니다.

SLURM_SUBMIT_HOST 컴퓨터의 호스트 이름 살록 호출되었습니다.

SLURM_TASK_PID 시작되는 작업의 프로세스 ID입니다.

SLURM_TASKS_PER_NODE 각 노드에서 시작될 작업 수입니다. 값은 쉼표입니다.
분리되어 있으며 SLURM_NODELIST와 동일한 순서입니다. XNUMX개 이상인 경우
연속된 노드는 동일한 작업 수를 가지며, 그 수는 다음과 같습니다.
그 뒤에 "(x#)"가 옵니다. 여기서 "#"은 반복 횟수입니다. 예를 들어,
"SLURM_TASKS_PER_NODE=2(x3),1"은 처음 XNUMX개 노드가
각각은 세 가지 작업을 실행하고 네 번째 노드는 한 가지 작업을 실행합니다.
작업.

SLURM_TOPOLOGY_ADDR 시스템에 토폴로지/트리 플러그인이 있는 경우에만 설정됩니다.
구성되었습니다. 값은 네트워크 스위치 이름으로 설정됩니다.
시스템의 작업 통신에 포함될 수 있는
최상위 스위치는 리프 스위치로 내려가고 노드 이름으로 끝납니다.
마침표는 각 하드웨어 구성 요소 이름을 구분하는 데 사용됩니다.

SLURM_TOPOLOGY_ADDR_PATTERN
시스템에 토폴로지/트리 플러그인이 있는 경우에만 설정됩니다.
구성되었습니다. 값은 다음에 나열된 구성요소 유형으로 설정됩니다.
SLURM_TOPOLOGY_ADDR. 각 구성 요소는 다음 중 하나로 식별됩니다.
"스위치" 또는 "노드". 마침표는 각 하드웨어를 구분하는 데 사용됩니다.
구성 요소 유형.

SRUN_DEBUG 로깅 수준으로 설정 서두르다 명령. 기본값은 3입니다.
(정보 수준). 값은 다음을 기준으로 증가하거나 감소합니다.
--verbose 및 --quiet 옵션.

MPIRUN_NOALLOCATE Blue Gene 시스템에만 블록을 할당하지 마십시오.

MPIRUN_NOFREE Blue Gene 시스템에서만 블록을 해제하지 마십시오.

MPIRUN_PARTITION Blue Gene 시스템에서만 블록 이름입니다.

신호 ESCAPE 시퀀스


로 전송된 신호 서두르다 명령은 자동으로 해당 작업으로 전달됩니다.
몇 가지 예외를 제외하고 제어합니다. 이스케이프 시퀀스 상태를 보고할 것이다
관련된 모든 업무 중 서두르다 명령. 만약에 한 번에 두 번 입력됩니다.
둘째, 관련 SIGINT 신호가 모든 작업에 전송되고 종료됩니다.
생성된 모든 작업에 SIGCONT, SIGTERM 및 SIGKILL을 보내는 시퀀스가 ​​시작됩니다. 만약
제삼 srun 프로그램은 기다리지 않고 종료됩니다.
원격 작업을 종료하거나 해당 I/O를 완료합니다.

이스케이프 시퀀스 현재는 무시됩니다. 우리의 의도는 이것을 위한 것입니다. 서두르다
다양한 특수 작업을 호출할 수 있는 모드로 명령을 내립니다.

MPI 고객지원


MPI 사용은 사용되는 MPI 유형에 따라 다릅니다. 근본적으로 다른 세 가지가 있습니다.
이러한 다양한 MPI 구현에서 사용되는 작동 모드입니다.

1. Slurm은 작업을 직접 시작하고 통신 초기화를 수행합니다.
(2차 MPI, MPICH2, MPICH-GM, MVAPICH, MVAPICH1 및 일부 MPICHXNUMX 모드) 예를 들어:
"srun -n16 a.out".

2. Slurm은 작업에 대한 리소스 할당을 생성한 다음 mpirun이 다음을 사용하여 작업을 시작합니다.
Slurm의 인프라(OpenMPI, LAM/MPI, HP-MPI 및 일부 MPICH1 모드).

3. Slurm은 작업에 대한 리소스 할당을 생성한 다음 mpirun이 다음을 사용하여 작업을 시작합니다.
SSH 또는 RSH(BlueGene MPI 및 일부 MPICH1 모드)와 같은 Slurm 이외의 일부 메커니즘.
이러한 작업은 Slurm의 모니터링 또는 통제 외부에서 시작되었습니다. Slurm의 에필로그는 다음과 같아야 합니다.
작업 할당이 취소되면 이러한 작업을 제거하도록 구성됩니다.

http://slurm.schedmd.com/mpi_guide.html 이러한 다양한 사용에 대한 자세한 내용은
Slurm을 사용한 MPI 구현.

배수 프로그램 구성


구성 파일의 주석에는 첫 번째 열에 "#"이 있어야 합니다. 구성 파일
공백으로 구분된 다음 필드를 포함합니다.

태스크 순위
이 구성을 사용하기 위한 하나 이상의 작업 순위입니다. 여러 값은 쉼표일 수 있습니다.
분리. 범위는 '-'로 구분된 두 개의 숫자로 표시될 수 있습니다.
더 작은 숫자부터 시작합니다(예: "0-4"이 아닌 "4-0"). 모든 작업을 표시하려면
그렇지 않으면 파일의 마지막 줄에 '*' 순위를 지정합니다. 만약
실행 가능한 프로그램이 정의되지 않은 작업을 시작하려고 시도한 경우
다음과 같은 오류 메시지가 생성됩니다. "이 항목에 대해 실행 가능한 프로그램이 지정되지 않았습니다.
일".

실행 파일
실행할 프로그램의 이름입니다. 원하는 경우 정규화된 경로 이름일 수 있습니다.

인수
프로그램 인수. "%t"라는 표현은 작업 번호로 대체됩니다.
"%o"라는 표현은 이 범위 내의 작업 오프셋으로 대체됩니다(예:
"1-5"로 구성된 작업 순위 값은 "0-4"의 오프셋 값을 갖습니다. 하나의
포함된 값이 해석되는 것을 방지하기 위해 따옴표를 사용할 수 있습니다. 이 필드는
선택 과목. 명령줄에 입력된 프로그램에 대한 모든 인수가 추가됩니다.
구성 파일에 지정된 인수에 적용됩니다.

예 :
############################################# #################
# 여러 프로그램 구성 파일을 실행합니다.
#
# srun -n8 -l --multi-prog 어리석은.conf
############################################# #################
4-6 호스트 이름
1,7 에코 작업:%t
0,2-3 에코 오프셋:%o

> srun -n8 -l --multi-prog 어리석은.conf
0: 오프셋:0
1: 작업:1
2: 오프셋:1
3: 오프셋:2
4: linux15.llnl.gov
5: linux16.llnl.gov
6: linux17.llnl.gov
7: 작업:7

사용 예


이 간단한 예는 명령 실행을 보여줍니다. 호스트 이름 XNUMX개 과제에. ~에
최소 XNUMX개의 프로세서가 작업에 할당됩니다(작업 수와 동일).
그러나 요청을 충족하려면 많은 노드가 필요합니다. 각 작업의 출력은 다음과 같습니다.
작업 번호로 진행됩니다. (아래 예의 머신 "dev"에는 총
노드당 CPU XNUMX개)

> srun -n8 -l 호스트 이름
0: 개발0
1: 개발0
2: 개발1
3: 개발1
4: 개발2
5: 개발2
6: 개발3
7: 개발3

스런 -r 옵션은 작업 스크립트 내에서 연결되지 않은 노드에서 두 작업 단계를 실행하는 데 사용됩니다.
다음 예. 스크립트는 배치 작업 대신 할당 모드를 사용하여 실행됩니다.
이 경우.

> 고양이 test.sh
#!/ 빈 / SH
$SLURM_NODELIST를 에코합니다.
srun -lN2 -r2 호스트 이름
srun -lN2 호스트 이름

> salloc -N4 test.sh
개발[7-10]
0: 개발9
1: 개발10
0: 개발7
1: 개발8

다음 스크립트는 할당된 노드 집합 내에서 두 작업 단계를 병렬로 실행합니다.

> 고양이 test.sh
#!/ bin / bash
srun -lN2 -n4 -r 2 절전 60 &
srun -lN2 -r 0 절전 60 &
수면 1
대기열
대기열 -s
기다리다

> salloc -N4 test.sh
작업 ID 파티션 이름 사용자 ST 시간 노드 NODELIST
65641 배치 test.sh grondo R 0:01 4 dev[7-10]

STEPID 파티션 사용자 시간 노드 목록
65641.0 배치 그론도 0:01 dev[7-8]
65641.1 배치 그론도 0:01 dev[9-10]

이 예는 간단한 MPICH 작업을 실행하는 방법을 보여줍니다. 우리는 사용 서두르다 구축
사용할 머신(노드) 목록 음피룬 필수 형식으로. 샘플 명령
줄과 실행될 스크립트가 이어집니다.

> 고양이 test.sh
#!/ 빈 / SH
MACHINEFILE="노드.$SLURM_JOB_ID"

# 호스트가 동일하도록 mpich에 대한 Machinefile을 생성합니다.
# srun을 통해 실행되는 것처럼 주문
#
스런 -l /bin/호스트 이름 | 정렬 -n | awk '{print $2}' > $MACHINEFILE

# 생성된 Machine 파일을 사용하여 실행합니다.
mpirun -np $SLURM_NTASKS -machinefile $MACHINEFILE mpi-app

rm $MACHINEFILE

> salloc -N2 -n4 test.sh

이 간단한 예는
같은 스런. 원하는 수의 노드 또는 원하는 수의 작업에 대해 이 작업을 수행할 수 있습니다. 그만큼
실행 파일은 SLURM_NODEID 환경 변수에 의해 배치된 노드에 배치됩니다. 0에서 시작하고
srun 명령줄에 지정된 번호로 이동합니다.

> 고양이 test.sh
$SLURM_NODEID 케이스
0) echo "나는 실행 중입니다"
호스트 이름 ;;
1) 호스트 이름
echo "내가 달리고 있는 곳은 여기입니다" ;;
그 C

> srun -N2 test.sh
dev0
내가 달리고 있는 곳은 여기야
나는 달리고 있다
dev1

이 예에서는 멀티 코어 옵션을 사용하여 작업 레이아웃을 제어하는 ​​방법을 보여줍니다. 우리
노드당 XNUMX개의 소켓과 소켓당 XNUMX개의 코어를 작업 전용으로 사용하도록 요청합니다.

> srun -N2 -B 4-4:2-2 a.out

이 예에서는 Slurm을 사용하여 리소스 관리를 제공하는 스크립트를 보여줍니다.
프로세서가 전용으로 사용 가능해지면 다양한 작업 단계를 실행하여 작업을 수행합니다.
사용합니다.

> 고양이 my.script
#!/ bin / bash
srun --exclusive -n4 prog1 &
srun --exclusive -n3 prog2 &
srun --exclusive -n1 prog3 &
srun --exclusive -n1 prog4 &
기다리다

사자


Copyright (C) 2006-2007 The Regents of the University of California. 로렌스에서 제작
리버모어 국립 연구소(면책 조항 참조).
Copyright (C) 2008-2010 Lawrence Livermore 국가 안보.
저작권 (C) 2010-2015 SchedMD LLC.

이 파일은 리소스 관리 프로그램인 Slurm의 일부입니다. 자세한 내용은 다음을 참조하십시오.
<http://slurm.schedmd.com/>.

Slurm은 무료 소프트웨어입니다. 당신은 그것을 재배포 및/또는 수정할 수 있습니다.
자유 소프트웨어 재단에서 발행한 GNU 일반 공중 사용 허가서; 버전 2
라이센스 또는 (귀하의 선택에 따라) 이후 버전.

Slurm은 유용할 것이라는 희망으로 배포되지만 어떠한 보증도 하지 않습니다. 없이
상품성 또는 특정 목적에의 적합성에 대한 묵시적 보증도 포함됩니다. 참조
자세한 내용은 GNU General Public License.

onworks.net 서비스를 사용하여 온라인으로 srun을 사용하세요.


무료 서버 및 워크스테이션

Windows 및 Linux 앱 다운로드

  • 1
    설치 후 F
    설치 후 F
    PostInstallerF는 모든
    Fedora Linux 및 기타 소프트웨어
    기본적으로 다음을 포함하지 않습니다.
    처음으로 Fedora를 실행합니다. 그것의
    쉽게...
    PostInstallerF 다운로드
  • 2
    추적하다
    추적하다
    strace 프로젝트가 다음 위치로 이동되었습니다.
    https://strace.io. strace is a
    진단, 디버깅 및 교육
    Linux용 사용자 공간 추적기. 그것은 사용
    모니터하기 위해...
    다운로드
  • 3
    gMKV추출GUI
    gMKV추출GUI
    mkvextract 유틸리티용 GUI(의 일부
    (만약
    전부는 아님) mkvextract의 기능 및
    mkvinfo 유틸리티. C#NET 4.0으로 작성된...
    gMKVExtractGUI 다운로드
  • 4
    JasperReports 라이브러리
    JasperReports 라이브러리
    JasperReports 라이브러리는
    세계에서 가장 인기 있는 오픈 소스
    비즈니스 인텔리전스 및 보고
    엔진. 그것은 완전히 Java로 작성되었습니다.
    그리고 그것은 할 수 있습니다 ...
    JasperReports 라이브러리 다운로드
  • 5
    프라페 북스
    프라페 북스
    Frappe Books는 무료 오픈 소스입니다.
    데스크톱 부기 소프트웨어는
    간단하고 잘 설계된
    소기업 및 프리랜서. 그것'...
    Frappe 책 다운로드
  • 6
    수치 파이썬
    수치 파이썬
    뉴스: NumPy 1.11.2가 마지막 릴리스입니다.
    그것은 sourceforge에서 만들어질 것입니다. 바퀴
    윈도우, 맥, 리눅스 뿐만 아니라
    보관된 소스 배포는 다음과 같을 수 있습니다.
    수치 파이썬 다운로드
  • 더»

Linux 명령

Ad