From c27719f0c6c1d6ebb6c3f7b4f0cd3325049917bf Mon Sep 17 00:00:00 2001 From: Martin Bauer <martin.bauer@fau.de> Date: Thu, 17 Nov 2016 08:48:03 +0100 Subject: [PATCH] OpenMP Bugfix --- cpu/kernelcreation.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cpu/kernelcreation.py b/cpu/kernelcreation.py index cbea79d7d..3c2621404 100644 --- a/cpu/kernelcreation.py +++ b/cpu/kernelcreation.py @@ -72,11 +72,11 @@ def addOpenMP(astNode, schedule="static", numThreads=None): """ assert type(astNode) is ast.KernelFunction body = astNode.body - wrapperBlock = ast.PragmaBlock('#pragma omp parallel', body.takeChildNodes()) + threadsClause = "" if numThreads is None else " num_threads(%s)" % (numThreads,) + wrapperBlock = ast.PragmaBlock('#pragma omp parallel' + threadsClause, body.takeChildNodes()) body.append(wrapperBlock) outerLoops = [l for l in body.atoms(ast.LoopOverCoordinate) if l.isOutermostLoop] assert outerLoops, "No outer loop found" assert len(outerLoops) <= 1, "More than one outer loop found. Which one should be parallelized?" - threadsClause = "" if numThreads is None else " num_threads(%s)" % (numThreads,) - outerLoops[0].prefixLines.append("#pragma omp for schedule(%s)%s" % (schedule,threadsClause)) + outerLoops[0].prefixLines.append("#pragma omp for schedule(%s)" % (schedule,)) -- GitLab