Düğüm başına düğüm sayısını değişken olarak ayarlamak istiyorum: #SBATCH --ntasks-per-node = s * 2; (s, programa parametre olarak ilettiğim düğüm başına yuva sayısıdır). olarak takip kodu: test.c dosyasının bir parçası:Programıma ilettiğim parametreyi temel alarak, slurmdaki düğüm başına düşen görev sayısını nasıl belirleyebilirim?
if (argc < 3)
{
fprintf(stderr, "Usage: mpiexec program <#sockets>\n");
exit(1);
}
s = atoi(argv[1]);
Bash komut dosyası (slurm):
#!/bin/bash
#SBATCH --job-name=test
#SBATCH --time=00:30:00
#SBATCH --account=1234
#SBATCH --output=./test.out
#SBATCH --nodes=4
#SBATCH --mem-per-cpu=3900M
#SBATCH --ntasks-per-node=s*2 ???
#SBATCH --exclusive
source /cluster/bin/jobsetup
module load intel/2015.3
module load openmpi.intel/1.8.6
cd ~/filedir
mpirun --map-by ppr:2:socket --report-bindings ./test 4 > ./test
I 8 gibi ntasks başına düğüm sabit tutar set ise, o iyi çalışıyor. Ama onu programıma geçirdiğim parametreye göre nasıl ayarlayabilirim? Herhangi bir yardım için minnettarım.