Table of Contents |
---|
...
ท่านสามารถติดตั้ง library ดังกล่าวได้บน project home directory ของท่านบน TARA HPC ใน Virtual Environment (source activate) ของท่าน หรือติดตั้งใน Singularity container เพื่อการใช้งานบน TARA HPC ได้
ติดตั้ง Package module ใน virtualenv และทดสอบใช้งาน
อย่าลืม load module ซอฟแวร์ที่ต้องการใช้งานก่อนเริ่มทำงานใน TARA
...
Note |
---|
ERROR: Could not find a version that satisfies the requirement PyTorch3d==0.5.0 (from versions: 0.0.1) ERROR: No matching distribution found for PyTorch3d==0.5.0 |
จาก error ข้างต้นและผลการค้นบนอินเตอร์เน็ต (อ่านเพิ่มเติม) ทำให้ติดตั้ง specific version ของ PyTorch3D ที่เหมาะสมกับเวอร์ชั่นของ Python, cuda, และ PyTorch ที่กำลังใช้งานอยู่บนระบบ TARA ได้ดังนี้
...
Code Block |
---|
[uaccount@tara-g-001 segmed]$ source venv-3DDL/bin/activate (venv-3DDL) [uaccount@tara-g-001 segmed]$ python basic-multigpu-pytorch.py torch version : 1.9.0+cu102 cuda available? : True cuda version: 10.2 cuda device count: 2 cuda device id: , 0, 1 Let's use 2 GPUs! In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([5, 5]) output size torch.Size([5, 2]) In Model: input size torch.Size([5, 5]) output size torch.Size([5, 2]) Outside: input size torch.Size([10, 5]) output_size torch.Size([10, 2]) |
ติดตั้ง Package module ใน Singularity container และทดสอบใช้งาน
อ้างอิงการสร้าง Singularity Container อย่างง่ายใน 5 ขั้นตอน
...
จะเห็นจาก output ที่ทดสอบภายใน container ว่าไม่มี cuda device เนื่องจากเรากำลังอยู่ใน linux machine ที่ไม่มี GPUs แต่จากผลลัพธ์แสดงให้เห็นว่าสามารถใช้งาน package modules ต่างๆที่จำเป็นได้แล้ว
ทดสอบใช้งานด้วย sbatch
เตรียม Slurm submission script
ใน submission script นี้กำหนดให้ใช้งาน partition “dgx-preempt” โดยเราทราบอยู่แล้วว่า dgx node มีจำนวน 8 GPUs ด้วยกัน
...
สังเกตจากผลลัพธ์จะเห็นได้ว่า nn.DataParallel
ทำการแบ่งข้อมูลกระจายไปรันใน GPUs ทุกตัวของ dgx node
Related articles
Filter by label (Content by label) | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...