Issue #33
Welcome to LLVM GPU News, a bi-weekly newsletter on all the GPU things under the LLVM umbrella. This issue covers the period from April 16 to April 29 2022.
We welcome your feedback and suggestions. Let us know if we missed anything interesting, or want us to bring attention to your (sub)project, revisions under review, or proposals. Please see the bottom of the page for details on how to submit suggestions and contribute.
Industry News and Community Events
- The X.Org + Wine Developer Conference 2022 will be held in Minneapolis, Minnesota on October 4-6.
LLVM and Clang
Discussions
- Anastasia Stulova posted an RFC on ‘Setting version, environment, and extensions for SPIR-V target’. The goal is to reach an agreement on how to move forward with the SPIR-V target evolution to make sure that the interface is consistent across all languages and tools in the LLVM project. There are no replies at the time of writing.
- The HLSL Working Group started using a GitHub Project to track the status of ongoing work.
- The LLVM GPU Working Group met on April 22. The meeting notes are posted in the agenda doc.
- Yaxun (Sam) Liu proposed to ‘Introduce cross-lane function attribute to prevent merging calls of cross-lane functions’. Reid Kleckner and Nicolai Hähnle noted that the
convergent
attribute proposal tried to address the problem.
Commits
- Patches for the SPIR-V backend have started landing. D115009
- Patches for DXIL opaque pointer support are still under review.
- Clang patches are under review for HLSL support.
- Adding driver options to set the DXIL validation version. D123884
- Support HLSL access specifier behavior has landed. D124487
- Driver support for compiling CUDA / HIP with the new driver has landed. Full linking support is still in review. D120272
- Introduced the
--offload-new-driver
and--no-offload-new-driver
flags to enable / disable the new driver generically. D123325 - The AMDGPU GFX11 subtarget started landing. D124536, D124537
- NTVPTX tests were updated to use the
ptxas
proprietary compiler to catch errors in the PTX output from llc. The location of the tool can be specified via a CMake option or an environment variable. D121727
MLIR
Discussions
Commits
- SPIR-V conversion now supports
memref.alloca
andvector.reduction
. D124542, D124380 - Unnecessary layout decorations are now removed for storage classes like
Function
,Private
, etc. in SPIR-V. D124543
OpenMP (Target Offloading)
Discussions
Commits
- The
LIBOMPTARGET_INFO
support now prints the name of globals declared on the device. D124381 - The new clang driver is now the default for OpenMP. It supports LTO with
-foffload-lto
and static library builds. D122831 - Compiling NVPTX offloading in LTO-mode now uses PTXAS’s non-rdc mode if all inputs are bitcode. D124292
- Added support for interoperability with CUDA. This allows OpenMP to call CUDA device functions and vice-versa. D120273