[libc-commits] [PATCH] D148810: [libc] Add more utility functions for the GPU

Joseph Huber via Phabricator via libc-commits libc-commits at lists.llvm.org
Thu Apr 20 09:21:24 PDT 2023


jhuber6 created this revision.
jhuber6 added reviewers: jdoerfert, tianshilei1992, tra, JonChesterfield, lntue, sivachandra, michaelrj.
Herald added subscribers: libc-commits, kosarev, mattd, asavonic, ecnelises, kerbowa, tschuett, jvesely.
Herald added projects: libc-project, All.
jhuber6 requested review of this revision.
Herald added subscribers: jplehr, sstefan1.

This patch adds extra intrinsics for the GPU. Some of these are unused
for now but will be used later. We use these currently to update the
`RPC` handling. Currently, every thread can update the RPC client, which
isn't correct. This patch adds code neccesary to allow a single thread
to perfrom the write while the others wait.

Feedback is welcome for the naming of these functions. I'm copying the
OpenMP nomenclature where we call an AMD `wavefront` or NVIDIA `warp` a
`lane`.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D148810

Files:
  libc/src/__support/GPU/amdgpu/utils.h
  libc/src/__support/GPU/generic/utils.h
  libc/src/__support/GPU/nvptx/utils.h
  libc/src/__support/RPC/CMakeLists.txt
  libc/startup/gpu/amdgpu/CMakeLists.txt
  libc/startup/gpu/amdgpu/start.cpp
  libc/startup/gpu/nvptx/CMakeLists.txt
  libc/startup/gpu/nvptx/start.cpp
  libc/test/integration/startup/gpu/rpc_test.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D148810.515354.patch
Type: text/x-patch
Size: 11277 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libc-commits/attachments/20230420/06deaaff/attachment-0001.bin>


More information about the libc-commits mailing list