※ slurm gres.conf에 AutoDetect 옵션 사용을 위한 rpmbuild 빌드방법과 간단한 예제

 

1. NVIDIA GPU

- cuda toolkit 설치

$ wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
$ sudo sh cuda_11.8.0_520.61.05_linux.run

 

- rpmbuild 옵션에 "--with-nvml"을 추가

$ rpmbuild --define "_with_nvml --with-nvml=/usr/local/cuda-11.8" -ta slurm-22.05.6.tar.bz2

 

- gpu 라이브러리 포함 확인

$ cd ${HOME}/rpmbuild/RPMS/x86_64
$ rpm -qlp slurm-22.05.6-1.el8.x86_64.rpm | grep -i nvml
/usr/lib64/slurm/gpu_nvml.so

 

2. AMD GPU

- rocm 설치

- rpmbuild 옵션에 "--with-rsmi"을 추가

$ rpmbuild --define "_with_rsmi --with-rsmi=/opt/rocm-6.3.1" -ta slurm-24.11.1.tar.bz2

 

- gpu 라이브러리 포함 확인

$ cd ${HOME}/rpmbuild/RPMS/x86_64
$ rpm -qlp slurm-24.11.1-1.el9.x86_64.rpm  | grep -i rsmi
/usr/lib64/slurm/gpu_rsmi.so

 

3. INTEL GPU

- oneAPI 설치

- rpmbuild 옵션에 "--with-oneapi"을 추가

$ rpmbuild --define "_with_oneapi --with-oneapi=/data/apps/intel/oneapi" -ta slurm-24.11.1.tar.bz2

 

4. GPU 별 gres.conf 작성 예제

- NVIDIA GPU

AutoDetect=nvml

 

- AMD GPU

AutoDetect=rsmi

 

- INTEL GPU

AutoDetect=oneapi

 

※ nvida와 nrt(AWS Trainium/Inferentia device)도 사용가능. 단 nvml 대신 nvidia옵션 사용시 MIG와 NVLINK 감지 할 수 없음

 

5. 기타

- 참고#1: https://slurm.schedmd.com/gres.html

- 참고#2: https://slurm.schedmd.com/platforms.html

 

 

'Applications > Scheduler' 카테고리의 다른 글

[PBS] Tip 모음  (0) 2024.05.02
[slurm] debuild with gpu  (1) 2024.01.13
[Build] slurm installation(RHEL 8.6)  (1) 2023.11.14
[Ubuntu] Slurm source install  (0) 2021.09.14
PBS vs Slurm  (0) 2021.08.06

+ Recent posts