[all-commits] [llvm/llvm-project] b4a554: [OpenMP] Introduce a new worksharing RTL function ...

Joseph Huber via All-commits all-commits at lists.llvm.org
Mon Sep 27 08:36:56 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b4a554362488e82b18a448957f1ad9ee7877bf7e
      https://github.com/llvm/llvm-project/commit/b4a554362488e82b18a448957f1ad9ee7877bf7e
  Author: Joseph Huber <jhuber6 at vols.utk.edu>
  Date:   2021-09-27 (Mon, 27 Sep 2021)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.h
    M clang/test/OpenMP/nvptx_distribute_parallel_generic_mode_codegen.cpp
    M clang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
    M clang/test/OpenMP/nvptx_target_teams_distribute_codegen.cpp
    M clang/test/OpenMP/nvptx_target_teams_distribute_parallel_for_codegen.cpp
    M clang/test/OpenMP/nvptx_target_teams_distribute_parallel_for_generic_mode_codegen.cpp
    M clang/test/OpenMP/nvptx_target_teams_distribute_parallel_for_simd_codegen.cpp
    M clang/test/OpenMP/nvptx_target_teams_distribute_simd_codegen.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMPKinds.def

  Log Message:
  -----------
  [OpenMP] Introduce a new worksharing RTL function for distribute

This patch adds a new RTL function for worksharing. Currently we use
`__kmpc_for_static_init` for both the `distribute` and `parallel`
portion of the loop clause. This patch replaces the `distribute` portion
with a new runtime call `__kmpc_distribute_static_init`. Currently this
will be used exactly the same way, but will make it easier in the future
to fine-tune the distribute and parallel portion of the loop.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D110429


  Commit: 74d622dea450da4b85383aa4b1758b902ef906a6
      https://github.com/llvm/llvm-project/commit/74d622dea450da4b85383aa4b1758b902ef906a6
  Author: Joseph Huber <jhuber6 at vols.utk.edu>
  Date:   2021-09-27 (Mon, 27 Sep 2021)

  Changed paths:
    M openmp/libomptarget/DeviceRTL/src/Workshare.cpp
    M openmp/libomptarget/deviceRTLs/common/src/loop.cu
    M openmp/libomptarget/deviceRTLs/interface.h

  Log Message:
  -----------
  [OpenMP] Add new worksharing definitions into device RTL

This path defines the newly added `__kmpc_disitrute_static_init`
functions in the device runtime library. These functions are currently
exact copies of the current worksharing method but can be tuned later.

Depends on D110429

Reviewed By: tianshilei1992

Differential Revision: https://reviews.llvm.org/D110430


Compare: https://github.com/llvm/llvm-project/compare/be2a4216fc56...74d622dea450


More information about the All-commits mailing list