This is an archive of the discontinued LLVM Phabricator instance.

[NFC][OpenMP] Prepare amdgpu plugin for asynchronous implementation of target region launch
ClosedPublic

Authored by carlo.bertolli on Dec 7 2021, 11:21 AM.

Details

Summary

Part 2 of
At present, amdgpu plugin merges both asynchronous and synchronous kernel launch implementations into a single synchronous version.
This patch prepares the plugin for asynchronous implementation by:

  • Privatizing actual kernel launch code (valid in both cases) into an anonymous namespace base function (submitted at D115267)
  • - Separating the control flow path of asynchronous and synchronous kernel launch functions** (this diff)

Diff Detail

Event Timeline

carlo.bertolli created this revision.Dec 7 2021, 11:21 AM
carlo.bertolli requested review of this revision.Dec 7 2021, 11:21 AM
openmp/libomptarget/plugins/amdgpu/src/rtl.cpp
2249

Naming seems wrong -the NowaitLocked function does wait, and if it didn't, we'd be missing a wait somewhere.

Diff has been created without context making it difficult to say anything further. 'Context not available.'

[OpenMP][NFC] Apply requested change: remove "nowait" from function name.
Add context (sorry about that!)

carlo.bertolli marked an inline comment as done.Dec 9 2021, 10:36 AM
JonChesterfield accepted this revision.EditedDec 10 2021, 8:08 AM

LG, new entry point is a precondition on doing an async launch, else NFC.

Doesn't apply to main successfully though, arc patch D115273 fails.

This revision is now accepted and ready to land.Dec 10 2021, 8:08 AM
JonChesterfield edited the summary of this revision. (Show Details)Dec 10 2021, 8:08 AM

rebase onto main

Trying rebase again.

Herald added a project: Restricted Project. · View Herald TranscriptDec 10 2021, 11:21 AM