From 281a64f47413ff00bfb287a49fae5f6c5ad46bb0 Mon Sep 17 00:00:00 2001 From: Martin Bauer <di29raz2@login03.sng.lrz.de> Date: Fri, 5 Apr 2019 12:25:31 +0200 Subject: [PATCH] Supermucng supports openmp --- python/waLBerla/tools/jobscripts/supermucng.job | 4 ++-- python/waLBerla/tools/jobscripts/supermucng.py | 10 ++++++---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/python/waLBerla/tools/jobscripts/supermucng.job b/python/waLBerla/tools/jobscripts/supermucng.job index 0691c51af..f361c0056 100644 --- a/python/waLBerla/tools/jobscripts/supermucng.job +++ b/python/waLBerla/tools/jobscripts/supermucng.job @@ -2,8 +2,8 @@ #SBATCH --job-name={job_name} #SBATCH --time={wall_time} #SBATCH --nodes={nodes} -#SBATCH -o {{output_file}} -#SBATCH -o {{error_file}} +#SBATCH -o {output_file} +#SBATCH -o {error_file} #SBATCH --ntasks-per-core={tasks_per_core} #SBATCH --ntasks-per-node={tasks_per_node} #SBATCH --cpus-per-task={cpus_per_task} diff --git a/python/waLBerla/tools/jobscripts/supermucng.py b/python/waLBerla/tools/jobscripts/supermucng.py index cce31dadc..3b51c7c0f 100644 --- a/python/waLBerla/tools/jobscripts/supermucng.py +++ b/python/waLBerla/tools/jobscripts/supermucng.py @@ -50,7 +50,9 @@ def createJobscript(wall_time=None, nodes=None, cores=None, job_class=None, init else: job_class = 'special' - tasks_per_node = min(cores_per_node, cores) + if cores_per_node % omp_num_threads != 0: + raise ValueError("Could not divede cores_per_node %d to omp_num_threads %d", (cores_per_node, omp_num_threads)) + tasks_per_node = min(cores_per_node//omp_num_threads, cores) omp_places = "cores" if hyperthreading == 1 else "threads" @@ -75,17 +77,17 @@ def createJobscript(wall_time=None, nodes=None, cores=None, job_class=None, init additional_lines=additional_lines, error_file=error_file) - exec_line = "mpiexec -n %d %s %s \n" + exec_line = "srun %s %s \n" if exe_name is not None: for param_file in parameter_files: - result += exec_line % (cores, exe_name, param_file) + result += exec_line % (exe_name, param_file) for exe_paramfile_pair in commands: if type(exe_paramfile_pair) is not tuple: result += exe_paramfile_pair + "\n" else: - result += exec_line % (cores, exe_paramfile_pair[0], exe_paramfile_pair[1]) + result += exec_line % (exe_paramfile_pair[0], exe_paramfile_pair[1]) return result -- GitLab