![](/img/trans.png)
[英]How to set slurm/salloc for 1 gpu per task but let job use multiple gpus?
[英]How to get the ID of GPU allocated to a SLURM job on a multiple GPUs node?
當我將帶有選項 --gres=gpu:1 的 SLURM 作業提交給具有兩個 GPU 的節點時,如何獲取分配給該作業的 GPU 的 ID? 是否有用於此目的的環境變量? 我使用的 GPU 都是 nvidia GPU。 謝謝。
您可以使用環境變量CUDA_VISIBLE_DEVICES
獲取 GPU id。 此變量是分配給作業的 GPU id 的逗號分隔列表。
您可以檢查給定節點的環境變量SLURM_STEP_GPUS
或SLURM_JOB_GPUS
:
echo ${SLURM_STEP_GPUS:-$SLURM_JOB_GPUS}
注意CUDA_VISIBLE_DEVICES
可能與實際值不對應( 請參閱@isarandi 的評論)。
另外,請注意這也適用於非 Nvidia GPU。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.