728x90 HPC/Slurm8 [Slurm] slurm.conf에서 SelectTypeParameters와 하이퍼 스레딩의 연관성 개요HPC(고성능 컴퓨팅) 환경에서는 자원을 효율적으로 관리하고 작업을 스케줄링하는 것이 매우 중요합니다. SLURM(Simplified Linux Utility for Resource Management)은 이러한 작업을 관리하기 위한 강력한 도구로, SelectType과 SelectTypeParameters는 SLURM 설정에서 자원 할당 방식을 정의하는 핵심적인 역할을 합니다.이번 글에서는 하이퍼 스레딩(Hyper-Threading, HT)과 SelectTypeParameters의 관계를 중심으로 SLURM 설정을 살펴보겠습니다. 1. 하이퍼 스레딩(Hyper-Threading, HT)이란?하이퍼 스레딩은 하나의 물리적 코어(Physical Core)가 두 개 이상의 논리적 코어(Logical Co.. 2025. 2. 2. [HPC] 하이퍼스레딩(Hyper-Threading) & Slurm 관계 1. 하이퍼 스레딩(Hyper-Threading)1.1 정의하이퍼스레딩은 Intel에서 제공하는 CPU 기술로, 하나의 물리적 코어가 두 개의 논리적 코어처럼 작동하도록 만든다.이를 통해 단일 코어에서 더 많은 쓰레드를 처리하여 CPU 자원을 보다 효율적으로 사용할 수 있다.1.2 작동 원리각 물리적 코어가 두 개의 하드웨어 스레드(Hardware Thread)를 관리한다.스레드 간에 사용하지 않는 CPU 자원을 공유하여 작업 병렬 처리를 개선특정 워크로드에서 성능이 향상되지만, 메모리 대역폭 또는 캐시 충돌이 심한 작업에서는 효과가 미미하거나 성능 저하가 발생할 수도 있음1.3 장.단점장점 : IO 바운드 또는 멀티 스레드 작업에서 CPU 사용률을 극대화단점 : CPU 리소스가 스레드 간 공유되므로 과.. 2025. 1. 22. [Slurm]Slurm 환경에서 Abaqus 작업 프로세스가 잔존하는 문제 해결 문제 상황1. Job Kill 후 프로세스 잔존Slurm 스케줄러를 사용해 Abaqus 작업을 수행하던 중, 작업이 Kill 되더라도 관련 프로세스가 남아 있는 문제가 발생했습니다. 이로 인해 시스템 자원이 낭비되고, Abaqus 라이선스가 반환되지 않는 상황이 발생했습니다.2. Abaqus Standard 프로세스 종료 문제일부 경우에서 작업이 정상적으로 종료되었음에도 불구하고, Abaqus Standard 프로세스(standard.exe)가 종료되지 않아 추가적인 문제가 발생했습니다. 해결 접근 방식(trap & Signal 활용)1. Signal 처리(SIGTERM)작업 종료 시 cleanup 함수를 호출하여 잔여 프로세스와 관련된 라이선스를 강제로 정리하도록 설정했습니다.2. 프로세스 추적 및 강.. 2024. 12. 23. [SLURM] SBATCH(2) 기타 SBATCH 옵션Dependency Job 수행 방법#SBATCH --error=파일이름#SBATCH --mail-type=ALL#SBATCH --mail-user=이메일 주소#SBATCH --cpu-per-task=쓰레드 수 #SBATCH --mem=메모리 크기 // --mem, --mem-per-cpu는 중복 불가, 노드 설정에 RealMemory=8080(M) 부분 반영 필요#SBATCH --mem-per-cpu=메모리 크기#SBATCH --gres=gpu:개수#SBATCH --time=HH:MM:SS#SBATCH --begin=시작시간#SBATCH --partition=파티션이름#SBATCH --qos=QOS 이름#SBATCH --nodelist=노드 리스트#SBATCH --exclude=노.. 2024. 9. 9. [SLURM] SBATCH(1) SBATCH는 사용자가 작성한 스크립트를 스케줄러를 통해 배치 방식으로 작업을 제출하고 출력 결과는 별도의 로그 파일을 통해 확인하는 방식 작업 제출 스크립트 작성$ vi job_submit.sh$ cat job_submit.sh#!/bin/sh#SBATCH --job-name=job_test1 ### 작업명#SBATCH --chdir=/home/admin/temp ### 작업디렉토리#SBATCH --output=/home/admin/temp/job_test1.log ### 결과로그파일#SBATCH --get-user-env ### 현재 터미널에 로드된 환경설정을 그대로 유지#SBATCH --nodes=1 ### 작업할당 노드 수#SBATCH --tasks-per-node=8 ### 작업할당 .. 2024. 9. 6. [SLURM] SRUN 명령어 SRUN$ srun hostnamemaster90ntasks 옵션(작업 개수)1cpu 당 1개의 작업 돌릴 수 있음(현 구성에서는 36코어가 최대)$ srun --ntasks=36 hostname/home/admin/.gc/hostname_gc_interactive: line 8: 159222 Segmentation fault /engrid/ensh/usrbin/jobUpdater STARTnode92master90master90master90...nodes 옵션(노드 수 할당)$ srun --nodes=3 hostnamenode91node92master90ntasks + nodes12개의 작업 * 2 node$ srun --tasks=12 --nodes=2 hostnamemaster90mast.. 2024. 9. 5. 이전 1 2 다음 728x90