Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

บทความนี้อธิบายวิธีการรันสคริปต์ Python บนระบบ LANTA HPC โดยใช้โปรแกรม Apptainer หัวข้อต่อไปนี้ให้ข้อมูลสรุปเนื้อหาของบทความ เพื่อให้ผู้อ่านสามารถระบุส่วนที่ต้องการอ่านได้อย่างรวดเร็ว

Table of Contents
minLevel1
maxLevel6
outlinefalse
typelist
printablefalse

ตัวอย่างสคริปต์ Slurm สำหรับการเรียกใช้สคริปต์ Python

สำหรับรันงานบนเครื่อง Compute

Code Block
#!/bin/bash
#SBATCH -p compute                       # Specify partition [Compute/Memory/GPU]
#SBATCH -N 1 -c 128   			         # Specify number of nodes and processors per task
#SBATCH --ntasks-per-node=1		         # Specify tasks per node
#SBATCH -t 120:00:00                     # Specify maximum time limit (hour: minute: second)
#SBATCH -A ltxxxxxx                      # Specify project name
#SBATCH -J JOBNAME                       # Specify job name
module load Apptainer/1.1.6              # Load the Apptainer module
apptainer exec -B $PWD:$PWD file.sif python3 file.py      # Run your program
Info
  • คำสั่ง -c ใช้ในการระบุจำนวน Core ที่จะใช้งานบนเครื่อง Compute (เต็มเครื่อง : -c 128, ครึ่งเครื่อง : -c 64, 1 ใน 4 ของเครื่อง : -c 32)

  • คำสั่ง -B $PWD:$PWD ใช้เพื่อระบุ Path ของไฟล์ Container และไฟล์สคริปต์ Python เป็น Path ที่ใช้ส่งงานของคุณไปยังระบบ Slurm ของ LANTA

สำหรับรันงานบนเครื่อง GPU

Code Block
#!/bin/bash
#SBATCH -p gpu                           # Specify partition [Compute/Memory/GPU]
#SBATCH -N 1 -c 16   			         # Specify number of nodes and processors per task
#SBATCH --gpus-per-tasknode=14		         # Specify number of GPU per task
#SBATCH --ntasks-per-node=4		         # Specify tasks per node
#SBATCH -t 120:00:00                     # Specify maximum time limit (hour: minute: second)
#SBATCH -A ltxxxxxx               	     # Specify project name
#SBATCH -J JOBNAME               	     # Specify job name
module load Apptainer/1.1.6              # Load the Apptainer module
apptainer exec --nv -B $PWD:$PWD file.sif python3 file.py       # Run your program
Info
ใช้
  • คำสั่ง --ntasks-per-node ใช้ในการระบุจำนวน task ต่อ 1 node (โดยปกติจะระบุให้ตรงกับจำนวน GPU ที่ต้องการใช้งาน)

  • คำสั่ง --gpus-per-node ใช้ในการระบุจำนวน GPU ต่อ 1 node (GPU 1 ตัว: --

ntasks
  • gpus-per-node=1,

ใช้
  • GPU 2 ตัว: --

ntasks
  • gpus-per-node=2,

ใช้
  • GPU 4 ตัว: --

ntasks
  • gpus-per-node=4

  • คำสั่ง --nv ใช้สำหรับการเปิดใช้งาน GPU

การส่งงานเข้ารันในระบบ

ใช้คำสั่ง sbatch script.sh เพื่อส่งงานของคุณไปยังระบบ Slurm ของ เพื่อส่งงานของคุณเข้ารันบนเครื่อง LANTA

Code Block
username@lanta:~> sbatch script.sh

คู่มืออื่นๆที่เกี่ยวข้อง

Filter by label (Content by label)
showLabelsfalse
max5
spacescom.atlassian.confluence.content.render.xhtml.model.resource.identifiers.SpaceResourceIdentifier@48ae393
maxCheckboxfalse
showSpacefalse
sortmodified
typepage
reversetrue
labelssingularity python container
cqllabel in ( "download" , "install_apptainer" , "create_container" , "training" ) and space = currentSpace ( )