기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS PCS에서 사용자 지정 GRES 설정 구성
Slurm은 gres.conf를 사용하여 컴퓨팅 노드에서 GPUs, 다중 프로세스 서비스(MPS) 및 다중 인스턴스 GPU(MIG) 디바이스와 같은 일반 리소스(GRES)를 관리합니다. AWS PCS를 사용하면 컴퓨팅 노드 그룹을 생성하거나 업데이트하는 slurmConfiguration 동안의 gresCustomSettings 속성을 gres.conf 통해 사용자 지정할 수 있습니다.
파라미터 및 값 페어의 플랫 목록인 다른 사용자 지정 설정과 달리 gresCustomSettings는 레코드 목록입니다. 각 레코드는 하나의 GRES 디바이스 또는 리소스를 설명하는 gres.conf 속성 집합입니다. 예를 들어 레코드는 8개의 A100 GPU를 Name=gpu Type=a100 File=/dev/nvidia[0-7] 선언합니다. GPUs
Slurm에서 gres.conf 레코드는 NodeName= 접두사를 지정하지 않는 한 클러스터의 모든 노드에 적용됩니다. AWS PCS는 항상 컴퓨팅 노드 그룹의 NodeName= 접두사를 추가하므로 지정하지 않고 제공하는 모든 레코드는 해당 컴퓨팅 노드 그룹에만 적용됩니다. AWS PCS는 클러스터 전체 gres.conf 레코드를 지원하지 않습니다.
gres.conf 설정 구성
gres.conf 사용자 지정 설정은 컴퓨팅 노드 그룹을 생성하는 동안 AWS 콘솔, CLI 또는 SDKs를 통해 구성하거나 나중에 업데이트 작업을 통해 수정할 수 있습니다.
컴퓨팅 노드 그룹에 지원되는 gres.conf 설정
컴퓨팅 노드 그룹 수준의 각 레코드에서 지원되는 gres.conf 속성은 다음과 같습니다.
-
참고
AWS PCS 는 Slurm 버전 25.11 이상
AutoDetect에서를 지원합니다.
각 속성의 의미와 허용되는 값은 Slurm gres.confName 또는 활성 AutoDetect 값을 선언해야 하며, GPU 레코드(Name=gpu)는 활성 AutoDetect 값이 디바이스를 검색MultipleFiles하지 않는 한 File 또는를 지정해야 합니다.
활성 AutoDetect 값은 nvml 또는와 같이 감지를 켜는 모든 값입니다full.는 AutoDetect=off 감지를 끄므로 활성 값이 아니며 레코드에 단독으로 있을 수 없습니다.
AWS PCS가 gres.conf 레코드를 적용하는 방법
GRES 구성은 Slurm 구성의 두 위치에 나타나며, AWS PCS는 둘 다 씁니다.
-
에서 제공하는
gres.conf레코드는 노드에 있는 디바이스를gresCustomSettings설명합니다. -
의
Gres설정은 스케줄러가 할당할 수 있는 항목을 형식으로slurm.conf선언합니다name[:type]:count. 에서 컴퓨팅 노드 그룹에 대한 사용자 지정 Slurm 설정으로 제공합니다slurmCustomSettings. 자세한 내용은 AWS PCS 컴퓨팅 노드 그룹에 대한 사용자 지정 Slurm 설정 섹션을 참조하세요.
AWS PCS는 레코드를 로 렌더링gres.conf하고 관리하는 GRES 구성으로 조정합니다.
-
선언한 모든 GPU 레코드는 AWS PCS가 컴퓨팅 노드 그룹에 대해 생성하는 기본 GPU 레코드를 대체합니다. GPU 레코드는
Name=gpu또는AutoDetect속성을 지정하는 레코드입니다. -
,
mpsshard또는 자체 리소스 이름과 같은 다른 리소스에 대한 레코드는 AWS PCS 기본값과 함께 추가됩니다. -
AWS PCS는
GresTypes설정slurm.conf에서Gres설정과의AccountingStorageTRES설정gres/*항목을 도출합니다.
Slurm 버전 26.05 이상에서는 컴퓨팅 노드 그룹에 Sockets slurmCustomSettings 대해 AutoDetect=full를 설정했거나 AWS PCS가 CPU 토폴로지를 자동으로 감지했기 때문에 노드의 소켓 레이아웃이 알려진 경우 기본적으로 GPU 컴퓨팅 노드 그룹에 AWS PCS가 설정됩니다. 소켓 레이아웃을 사용할 수 없는 경우 AWS PCS는 AutoDetect 대신 GPU 레코드를 내보냅니다.
gres.conf와 Gres 설정 간의 제약 조건
Slurm은 리소스를 예약하기 위해 GRES 구성의 양쪽이 필요하며, 리소스 중 하나에만 나타나는 리소스는 작동하지 않습니다. 뒤에 gres.conf 레코드slurm.conf가 없는의 Gres 설정 항목은 노드가 구성된 것보다 적은 리소스를 보고하고 노드가 드레이닝됩니다. Gres 항목이 없는 레코드는 디바이스가 노드에 있지만 예약할 수 없습니다.
AWS PCS는 컴퓨팅 노드 그룹을 생성하거나 업데이트할 때 두 그룹을 서로 검증하고 다음과 같은 경우 요청을 거부합니다.
-
slurm.confGres항목은gres.conf레코드가 선언하지 않는 리소스의 이름을 지정합니다. 여기에는가 포함됩니다gpu.gpu항목에는 개수가gresCustomSettings인 경우에도의 GPU 레코드가 필요합니다0. -
slurm.confGres항목은gres.conf레코드 선언보다 더 많은 수의 리소스를 선언합니다. 까지 더 적은 수가 허용됩니다0.gres.conf레코드는 노드에 있는 디바이스를 설명하는 반면,는 스케줄러가 할당할 수 있는 디바이스 수를Gres선언합니다. -
slurm.confGres항목은gres.conf에서 선언하는 GPU 레코드가 없는 GPU 유형을 지정합니다.
마지막 두 검사는 레코드가 선언하는 내용에 따라 달라집니다. AWS PCS는 노드가 부팅될 때 Slurm이 검색하는 디바이스를 계산할 수 없으므로 만 활성화하는 레코드는 Gres 항목의 모든 gpu 개수와 유형을 AutoDetect 수락합니다. 이는 MIG 프로파일이 검증을 통과하는 방법입니다. AWS PCS는 공유 GRES(mps 및 shard)에 대한 개수 확인을 건너뛰고 GPU 레코드가를 선언하지 않을 때 유형 확인을 건너뜁니다Type.
AWS PCS는 일치하는 Gres 항목이 없는 레코드를 허용합니다. 리소스는 노드에 존재하지만 작업은 이를 요청할 수 없습니다. Gres 항목을 추가하여 예약할 수 있도록 합니다.
중요
AWS PCS는 레코드의 구문과 Gres 설정과의 일관성을 검증합니다. 하드웨어에 대해 검증하지 않습니다. File, Cores또는 Links 레이아웃이 부팅된 노드의 디바이스와 일치하지 않는 레코드는 노드를 비웁니다. MIG에도 동일하게 적용됩니다. 선언한 프로필은 노드에 구성된 프로필과 일치해야 Gres 합니다. 드레이닝된 노드 진단에 대한 자세한 내용은 섹션을 참조하세요AWS PCS에서 잘못된 노드 등록(INVALID_REG) 문제 해결.