[PATCH] D147408: [AMDGPU] Iterative scan implementation for atomic optimizer.

Pravin Jagtap via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Jun 4 22:46:27 PDT 2023


pravinjagtap updated this revision to Diff 528288.
pravinjagtap added a comment.

Added parsable cl::enum flag for the optimizer strategy as suggested by @arsenm

We need to enable atomic optimizer using `-amdgpu-atomic-optimizations=true` and then 
we can use `-amdgpu-atomic-optimizer-strategy=DPP/Iterative` flag to select the strategy for scan (default to DPP).

This allow LLPC to adjust to new change and then we can enable and default to Iterative strategy using only one flag -amdgpu-atomic-optimizer-strategy=DPP/Iterative
and deprecate `-amdgpu-atomic-optimizations`


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D147408/new/

https://reviews.llvm.org/D147408

Files:
  llvm/lib/Target/AMDGPU/AMDGPU.h
  llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
  llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
  llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_optimizations_mul_one.ll
  llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
  llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
  llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
  llvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
  llvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
  llvm/test/CodeGen/AMDGPU/global_atomics_iterative_scan.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D147408.528288.patch
Type: text/x-patch
Size: 509129 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230605/0709d8c8/attachment-0001.bin>


More information about the llvm-commits mailing list