14.11 부록
14.11.1 명령어 치트시트
Slurm
| 명령 | 용도 |
|---|---|
sinfo | 파티션/노드 상태 |
squeue -u ${LDAP_USER} | 내 작업 목록 |
sbatch job.sh | 배치 작업 제출 |
scancel <JobID> | 작업 취소 |
sacct -j <JobID> --format=JobID,State,Elapsed,MaxRSS | 작업 사용량 조회 |
srun ... --pty bash | 대화형 자원 할당 |
Spark / Hail
| 명령 / 항목 | 용도 |
|---|---|
spark-submit --master spark://${SPARK_MASTER_HOST}:${SPARK_MASTER_PORT} job.py | Hail 배치 제출 |
http://${SPARK_MASTER_HOST}:${SPARK_UI_PORT} | Spark Master UI |
hl.init(master=..., tmp_dir=...) | Hail 초기화 |
hl.read_matrix_table(path) / mt.write(path) | MatrixTable 읽기/쓰기 |
hl.import_vcf(path) | VCF 읽기 |
hl.stop() | Hail 종료 |
conda (Pod / Slurm)
| 명령 | 용도 |
|---|---|
conda config --add channels ${CONDA_CHANNEL} | 사내 채널 추가 |
conda create -p ${CONDA_ENV_DIR}/<env> python=3.10 -c ${CONDA_CHANNEL} | 환경 생성 |
conda activate ${CONDA_ENV_DIR}/<env> | 환경 활성화 |
conda install -c ${CONDA_CHANNEL} <pkg> | 패키지 설치 |
14.11.2 샘플 스크립트
Slurm 배치 템플릿
bash
#!/bin/bash
#SBATCH --job-name=USER_PROJECT_job
#SBATCH --partition=PARTITION_NAME
#SBATCH --cpus-per-task=4
#SBATCH --mem=16G
#SBATCH --time=02:00:00
#SBATCH --output=/PATH/logs/%x_%j.out
#SBATCH --error=/PATH/logs/%x_%j.err
set -euo pipefail
source ${WORK_DIR}/env.sh
conda activate ${CONDA_ENV_DIR}/analysis
python ${WORK_DIR}/scripts/analyze.py --input "$1" --output "$2"Hail 작업 템플릿
python
import hail as hl
hl.init(master='spark://${SPARK_MASTER_HOST}:${SPARK_MASTER_PORT}',
tmp_dir='${SCRATCH_DIR}/hail_tmp',
default_reference='GRCh38')
mt = hl.read_matrix_table('${PROJECT_DIR}/data/input.mt')
mt = hl.variant_qc(mt)
mt.write('${WORK_DIR}/results/output.mt', overwrite=True)
hl.stop()14.11.3 지원 및 문의
| 항목 | 내용 |
|---|---|
| 운영/계정 문의 | (미확정) |
| 장애 신고 | (미확정) |