我在具有 24 个节点、每个节点 12 个处理器以及每个节点大约 64Gb 内存的计算机集群上运行代码。我用来启动它的命令如下
#!/bin/sh
#PBS -N cclit
#PBS -l walltime=288:00:00
#PBS -l nodes=1:ppn=1
#PBS -j oe
#PBS -m n
#PBS -l mem=60000mb
不幸的是,我意识到我的代码至少需要一个 120000mb 的虚拟内存。我试图做的是将上述命令修改为
#!/bin/sh
#PBS -N cclit
#PBS -l walltime=288:00:00
#PBS -l nodes=2:ppn=2
#PBS -j oe
#PBS -m n
#PBS -l mem=120000mb
但它似乎不起作用......它在同一点再次停止告诉我虚拟内存不足。我的代码没有并行化,这意味着只需要 1 个处理器。当一个节点的内存被完全使用时会发生什么?我想我在 '#PBS -l mem=120000mb' 上做错了,或者我可能需要一些其他命令......我试图在网上寻找解决方案,但我没有找到任何东西......
你能帮助我吗?
谢谢米尔科。