[Openmp-commits] [PATCH] D138389: [OpenMP][libomptarget] Add AMDGPU NextGen plugin with asynchronous behavior

Kevin Sala Penadés via Phabricator via Openmp-commits openmp-commits at lists.llvm.org
Sun Nov 20 18:24:29 PST 2022


kevinsala created this revision.
kevinsala added reviewers: jdoerfert, jhuber6, tianshilei1992, JonChesterfield, josemonsalve2.
kevinsala added a project: OpenMP.
Herald added subscribers: kosarev, kerbowa, guansong, tpr, dstuttard, yaxunl, jvesely, kzhuravl.
Herald added a project: All.
kevinsala requested review of this revision.
Herald added subscribers: openmp-commits, sstefan1, wdng.

This patch adds the AMDGPU NextGen plugin inheriting from PluginInterface's classes. It also implements the asynchronous behavior in the plugin operations: kernel launches and memory transfers. To this end, it implements the concept of streams of asynchronous operations. The streams are implemented using the HSA signals to define input and output dependencies between asynchronous operations.

Missing features:

- Retrieve the maximum number of threads per group that a kernel can run. This requires reading the image.
- Implement __tgt_rtl_sync_event, not used on the libomptarget side.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D138389

Files:
  openmp/libomptarget/plugins-nextgen/CMakeLists.txt
  openmp/libomptarget/plugins-nextgen/amdgpu/CMakeLists.txt
  openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp
  openmp/libomptarget/plugins-nextgen/common/PluginInterface/GlobalHandler.cpp
  openmp/libomptarget/plugins-nextgen/common/PluginInterface/GlobalHandler.h
  openmp/libomptarget/plugins-nextgen/common/PluginInterface/PluginInterface.cpp
  openmp/libomptarget/plugins-nextgen/common/PluginInterface/PluginInterface.h
  openmp/libomptarget/plugins-nextgen/cuda/src/rtl.cpp
  openmp/libomptarget/plugins-nextgen/generic-elf-64bit/src/rtl.cpp
  openmp/libomptarget/plugins/amdgpu/dynamic_hsa/hsa.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D138389.476782.patch
Type: text/x-patch
Size: 125088 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/openmp-commits/attachments/20221121/bc5e99c0/attachment-0001.bin>


More information about the Openmp-commits mailing list