如何使用Slurm访问集群中不同节点上的GPU?
我可以访问Slurm运行的集群,其中每个节点有4个GPU 我有一个需要8个GPU的代码 所以问题是如何在每个节点只有4个GPU的集群上请求8个GPU? 这就是我试图通过如何使用Slurm访问集群中不同节点上的GPU?,gpu,cluster-computing,slurm,Gpu,Cluster Computing,Slurm,我可以访问Slurm运行的集群,其中每个节点有4个GPU 我有一个需要8个GPU的代码 所以问题是如何在每个节点只有4个GPU的集群上请求8个GPU? 这就是我试图通过sbatch提交的作业: #!/bin/bash #SBATCH --gres=gpu:8 #SBATCH --nodes=2 #SBATCH --mem=16000M #SBATCH --time=0-01:00 但是我得到了以下错
sbatch
提交的作业:
#!/bin/bash
#SBATCH --gres=gpu:8
#SBATCH --nodes=2
#SBATCH --mem=16000M
#SBATCH --time=0-01:00
但是我得到了以下错误:
sbatch: error: Batch job submission failed: Requested node configuration is not available
然后我将设置更改为此并再次提交:
#!/bin/bash
#SBATCH --gres=gpu:4
#SBATCH --nodes=2
#SBATCH --mem=16000M
#SBATCH --time=0-01:00
nvidia-smi
结果显示只有4个GPU,而不是8个
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 375.66 Driver Version: 375.66 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 Tesla P100-PCIE... Off | 0000:03:00.0 Off | 0 |
| N/A 32C P0 31W / 250W | 0MiB / 12193MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 1 Tesla P100-PCIE... Off | 0000:04:00.0 Off | 0 |
| N/A 37C P0 29W / 250W | 0MiB / 12193MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 2 Tesla P100-PCIE... Off | 0000:82:00.0 Off | 0 |
| N/A 35C P0 28W / 250W | 0MiB / 12193MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 3 Tesla P100-PCIE... Off | 0000:83:00.0 Off | 0 |
| N/A 33C P0 26W / 250W | 0MiB / 12193MiB | 4% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
谢谢。Slurm不支持您需要的功能。它只能分配给作业GPU/节点,而不能分配给GPU/集群。 因此,与CPU或其他可消耗资源不同,GPU不是可消耗的,而是绑定到承载它们的节点 如果您对这个主题感兴趣,有一项研究工作将GPU转化为可消费资源,请检查。 在这里,您将了解如何使用GPU虚拟化技术实现这一点