[Openmp-commits] [PATCH] D111789: [OpenMP][OMPT] ompt_parallel_invoker_program used when clang generates the code of parallel if(0)-serialized regions

Vladimir Inđić via Phabricator via Openmp-commits openmp-commits at lists.llvm.org
Thu Oct 14 04:00:12 PDT 2021

vladaindjic created this revision.
vladaindjic added reviewers: protze.joachim, AndreyChurbanov, hbae.
Herald added subscribers: guansong, yaxunl.
vladaindjic requested review of this revision.
Herald added a reviewer: jdoerfert.
Herald added subscribers: openmp-commits, sstefan1.
Herald added a project: OpenMP.

When clang generates the code of serialized parallel region whose omp parallel
directive contains if(0) clause, then the implicit task of the corresponding 
region is invoked directly by the application, so the invoker takes the value 
of “ompt_parallel_invoker_program” flag.

For all other cases, implicit tasks of the parallel regions are invoked by 
the runtime, so “ompt_parallel_invoker_runtime” flag is used instead.

Four test cases have been introduced to prove that the “invoker” argument 
is determined correctly while dispatching “ompt_callback_parallel_begin” 
and “ompt_callback_parallel_end” callbacks. Each test case supplies the 
master thread’s call stack which points to the call site of the corresponding 
implicit task and argues about the right value of the “invoker” argument.

  rG LLVM Github Monorepo



-------------- next part --------------
A non-text attachment was scrubbed...
Name: D111789.379654.patch
Type: text/x-patch
Size: 12146 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/openmp-commits/attachments/20211014/873e3a2e/attachment.bin>

More information about the Openmp-commits mailing list