Download JURECA
Transcript
count = count + omp_get_num_threads(); total = omp_get_num_threads(); } // Print out. printf( "Hello world from processor %s, rank %d out of %d processors. OpenMP threads: %d\n", processor_name, rank, size, total); // Finalize the MPI environment. MPI_Finalize(); return 0; }
Compile the MPI program:
$ mpicc o mpiprog mpi.c
Compile the Hybrid program:
$ mpicc openmp o hybridprog hybrid.c
7.4 Job submission
Job-script for an MPI job (file mpiscript.sh):
#!/bin/bash #SBATCH J mpitest #SBATCH N 4 #SBATCH ntaskspernode=24 #SBATCH o mpitest%j.out #SBATCH e mpitest%j.err #SBATCH mailtype=END #SBATCH mailuser=c.paschoulas@fzjuelich.de #SBATCH partition=batch #SBATCH time=00:30:00 # run MPI application below (with srun) srun N 4 ntaskspernode=24 ./mpiprog Submit the MPI job-script:
$ sbatch ./mpiscript.sh
Job-script for a Hybrid job (file hybridtest.sh):
#!/bin/bash #SBATCH J hybridtest #SBATCH N 4 #SBATCH ntaskspernode=24 #SBATCH cpuspertask=2 #SBATCH o hybridtest%j.out #SBATCH e hybridtest%j.err #SBATCH mailtype=END #SBATCH mailuser=c.paschoulas@fzjuelich.de #SBATCH partition=batch #SBATCH time=00:30:00 export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK} # run Hybrid application below (with srun) srun N 4 ntaskspernode=24 c ${SLURM_CPUS_PER_TASK} ./hybridprog 58