[all-commits] [llvm/llvm-project] f03826: Pass GPU events instead of streams across async re...

Christian Sigg via All-commits all-commits at lists.llvm.org
Thu Feb 25 04:18:40 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f03826f896beb7edb68c7576be4721ff8711dacb
      https://github.com/llvm/llvm-project/commit/f03826f896beb7edb68c7576be4721ff8711dacb
  Author: Christian Sigg <csigg at google.com>
  Date:   2021-02-25 (Thu, 25 Feb 2021)

  Changed paths:
    M mlir/lib/Conversion/GPUCommon/ConvertLaunchFuncToRuntimeCalls.cpp
    M mlir/lib/Dialect/GPU/Transforms/AsyncRegionRewriter.cpp
    M mlir/test/Conversion/GPUCommon/lower-wait-to-gpu-runtime-calls.mlir
    M mlir/test/Dialect/GPU/async-region.mlir

  Log Message:
  -----------
  Pass GPU events instead of streams across async regions.

Lower !gpu.async.tokens returned from async.execute regions to events instead of streams.

Make !gpu.async.token returned from !async.execute single-use.
This allows creating one event per use and destroying them without leaking or ref-counting.
Technically we only need this for stream/event-based lowering. I kept the code separate
from the rest of the gpu-async-region pass so that we can make this optional or move
to a separate pass as needed.

Reviewed By: herhut

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




More information about the All-commits mailing list