<div dir="ltr"><div dir="ltr">Hi folks,<br><br>The fifth issue of <span class="gmail-il">LLVM</span> <span class="gmail-il">GPU</span> News, a bi-weekly newsletter on all the <span class="gmail-il">GPU</span> things under the <span class="gmail-il">LLVM</span> umbrella, is now available at: <a href="https://llvm-gpu-news.github.io/2021/02/05/issue-5.html">https://llvm-gpu-news.github.io/2021/02/05/issue-5.html</a><div><br>I'm also pasting the content below, in case you prefer to read in your email client.<br><div><br>-Jakub<br><br>======================================================================<br><br># <span class="gmail-il">LLVM</span> <span class="gmail-il">GPU</span> News Issue #5, February 5 2021<br>Authors: Jakub Kuderski, Lei Zhang, Johannes Doerfert<br><br>Welcome to the fifth issue of LLVM GPU News, a bi-weekly newsletter on all the GPU things under the LLVM umbrella.<br>This issue covers the period from January 22 to February 4 2021.<br><br>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.<br><br><br>## Industry News and Conference Talks<br><br>*  Alyssa Rosenzweig published a [second blog post in the series dedicated to investigating the Apple M1 GPU](<a href="https://rosenzweig.io/blog/asahi-gpu-part-2.html">https://rosenzweig.io/blog/asahi-gpu-part-2.html</a>). The project reached a new milestone: being able to draw a triangle with some hand-written machine code. The code is [available on GitHub](<a href="https://github.com/AsahiLinux/gpu">https://github.com/AsahiLinux/gpu</a>).<br><br><br>##  LLVM and Clang<br><br>### Discussions<br><br>*  Sameer Sahasrabuddhe is looking into [enabling divergence analysis in the new pass manager and its interaction with loop unswitching passes](<a href="https://lists.llvm.org/pipermail/llvm-dev/2021-January/148179.html">https://lists.llvm.org/pipermail/llvm-dev/2021-January/148179.html</a>).<br>*  Lowering of memory intrinsics (`memcpy`, `memmove`, `memset`) [will be moved from `Combiner` to `Legalizer` in `GlobalISel`](<a href="https://lists.llvm.org/pipermail/llvm-dev/2021-January/148196.html">https://lists.llvm.org/pipermail/llvm-dev/2021-January/148196.html</a>). This is motivated by the needs of the AMDGPU backend.<br><br><br>### Commits<br><br>*  A new intrinsic [`llvm.set.rounding` for setting floating point rounding mode](<a href="https://reviews.llvm.org/D74729">https://reviews.llvm.org/D74729</a>) has finally landed. AMDGPU targets support changing the rounding mode at runtime and can make use of it.<br>*  [Fixes around CUDA/HIP static variables in host, device, and global functions.](<a href="https://reviews.llvm.org/D95560">https://reviews.llvm.org/D95560</a>)<br>*  (In-review) [Initial plumbing for CUDA sm_86 GPU targets.](<a href="https://reviews.llvm.org/D95974">https://reviews.llvm.org/D95974</a>)<br><br><br>## MLIR<br><br>### Discussions<br><br>*  Weiwei [expressed interests](<a href="https://llvm.discourse.group/t/glsl-operation-support-in-spirv-dialect/2655">https://llvm.discourse.group/t/glsl-operation-support-in-spirv-dialect/2655</a>) in contributing to SPIR-V dialect for graphics usage and started sending out patches for it.<br><br>### Commits<br><br>*  [Integration tests](<a href="https://reviews.llvm.org/D94421">https://reviews.llvm.org/D94421</a>) using CUDA runner are added to demonstrate async lowering.<br>*  Serialization and deserialization for [image types](<a href="https://reviews.llvm.org/D95580">https://reviews.llvm.org/D95580</a>) are now supported in the SPIR-V dialect.<br>*  A few [new patterns](<a href="https://reviews.llvm.org/D96042">https://reviews.llvm.org/D96042</a>) were added to lower vector ops to their SPIR-V counterparts.<br><br><br>## OpenMP (Target Offloading)<br><br>### Discussions<br><br>### Commits<br><br>*  Initial [AMDGPU offloading toolchain for OpenMP offloading](<a href="https://reviews.llvm.org/D94961">https://reviews.llvm.org/D94961</a>) has landed.<br><br><br>## External Compilers<br><br>### LLPC<br><br>*  The standalone SPIR-V to GCN compiler `amdllpc` can now [compile individual shaders](<a href="https://github.com/GPUOpen-Drivers/llpc/pull/1121">https://github.com/GPUOpen-Drivers/llpc/pull/1121</a>) into [relocatable ELF files](<a href="https://github.com/GPUOpen-Drivers/llpc/blob/dev/docs/DdnRelocatableShaderElf.md">https://github.com/GPUOpen-Drivers/llpc/blob/dev/docs/DdnRelocatableShaderElf.md</a>). These ELFs can be then [bundled as Vulkan Pipeline Cache files](<a href="https://github.com/GPUOpen-Drivers/xgl/pull/94/files">https://github.com/GPUOpen-Drivers/xgl/pull/94/files</a>), all offline, i.e., on a system without a GPU. The produced caches cannot be loaded by the AMDVLK driver yet.<br><br>### Mesa<br><br>### SYCL<br><br></div></div><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div>Jakub Kuderski</div></div></div></div>