Versions Compared

Key

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

Run Jupyter kernel โดยการ submit job เข้าสู่ระบบ TARA

Note

ต้องมี tensorflow_with_jupyter.sif ที่ทำการติดตั้ง jupyter notebook และ library ที่ต้องการไว้ทั้งหมดแล้ว รวมทั้ง jupyter notebook สามารถอ่านวิธีการสร้าง Singularity file ได้จากhttps://thaisc.atlassian.net/l/c/a6A0yXT7

Table of Contents
minLevel1
maxLevel7
stylenone

1. เตรียม submit.sh

Code Block
#!/bin/bash

#SBATCH -p dgx-preempt           
#SBATCH -N 1 -c 40               
#SBATCH -t 00:10:00              
#SBATCH -J jupyter               
#SBATCH -A projxxxx               

module purge
module load Singularity

singularity exec --nv tensorflow_with_jupyter.sif jupyter-notebook \
            --no-browser --port=8080

ด้านบนเป็นการใช้ Jupyter Notebook ที่ติดตั้งอยู่ใน container โดยใช้ Singularity และระบุ port ที่ต้องการใช้งานเป็น 8080

2. submit job เข้าสู่ระบบ TARA จาก frontend node

$ sbatch submit.sh

3. ตรวจสอบสถานะ job เพื่อทราบชื่อ HPC node ที่ job ได้รัน

$ squeue -n jupyter

JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON)

994569 dgx-preem jupyter hpcuser2 R 0:04 1 tara-dgx1-001

จะเห็นว่า job ได้ทรัพยากร HPC node เป็น tara-dgx1-001 โดยมี JOBID เป็น 994569

4. ทำ SSH tunnelling จากเครื่อง local เข้าไปยัง HPC node ที่ job ได้รัน

ssh -J <username>@tara.nstda.or.th -L 8888:localhost:8080 -vN <username>@tara-dgx1-001

คำสั่งด้านบนใช้ local-port เป็น 8888 ซึ่งค่านี้จะนำไปใช้ในการเปิด application บน web browser จากเครื่อง local

5. เปิด Jupyter Notebook บน web browser จากเครื่อง local

ก่อนกลับไปเปิด jupyter notebook สร้างเครื่อง local เราต้องทำการหาค่า token ใน .out จาก slurm กันก่อน

...

Expand
titleเปิดJupyter Notebook บน web browser

เปิด web browser และ วางค่าที่คัดลอกมาในช่อง url จากนั้นเปลี่ยนค่า port จาก 8080 เป็น 8888 ดังรูป

กด enter จากนั้น Jupyter Notebook จะแสดงขึ้นมา ดังรูป

เมื่อใช้งานเสร็จแล้วสามารถออกจาก web browser ได้ตามปกติ

** การออกจาก web browser ไม่ได้ยุติการทำงานของ Jupyter kernel ผู้ใช้งานจะต้องทำการยกเลิก job ที่ run อยู่บนระบบ TARA

5.3 การยกเลิก Job บน TARA

...

ซึ่งจากตัวอย่างนี้ เราจะระบุ jobid เป็น 994569 ซึ่งเราทราบค่านี้ได้จากการใช้คำสั่ง squeue เพื่อตรวจสอบสถานะของ job ดังแสดงในหัวข้อ 1.3 สามารถทำการยกเลิกก่อน หรือหลังปิด web browser ก็ได้ (เมื่อยกเลิก job connection จะถูกตัดโดยอัตโนมัติ)

...