[Openmp-commits] [PATCH] D73077: [libomptarget] Implement wavefront functions for amdgcn

Jon Chesterfield via Phabricator via Openmp-commits openmp-commits at lists.llvm.org
Tue Jan 21 15:37:12 PST 2020


JonChesterfield marked 2 inline comments as done.
JonChesterfield added inline comments.


================
Comment at: openmp/libomptarget/deviceRTLs/amdgcn/src/target_impl.hip:21-22
+
+// initialized with a 64-bit mask with bits set in positions less than the
+// thread's lane number in the warp
+DEVICE __kmpc_impl_lanemask_t __kmpc_impl_lanemask_lt() {
----------------
arsenm wrote:
> What about wave32?
Hi Matt. I didn't think we had any 32 bit warp / wavefront hardware support in tree. If we do there's some changes needed elsewhere in this library as well


================
Comment at: openmp/libomptarget/deviceRTLs/amdgcn/src/target_impl.hip:54
+
+DEVICE int32_t __kmpc_impl_shfl_sync(__kmpc_impl_lanemask_t, int32_t var,
+                                     int32_t srcLane) {
----------------
jdoerfert wrote:
> Is the argument unused on purpose? Why do we have it?
It's used to pick out lanes to synchronise on nvptx (if I understand their documentation correctly). The lanes move in lockstep on amdgcn so I don't think there's any corresponding synchronisation to do here


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D73077





More information about the Openmp-commits mailing list