[all-commits] [llvm/llvm-project] 261e56: [libc] Add utility functions for warp-level scan a...
Joseph Huber via All-commits
all-commits at lists.llvm.org
Tue Mar 12 08:41:14 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 261e5648e70b363aecf86acfcd7fb416eb48fb7b
https://github.com/llvm/llvm-project/commit/261e5648e70b363aecf86acfcd7fb416eb48fb7b
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-03-12 (Tue, 12 Mar 2024)
Changed paths:
M libc/src/__support/GPU/amdgpu/utils.h
M libc/src/__support/GPU/generic/utils.h
M libc/src/__support/GPU/nvptx/utils.h
M libc/src/__support/GPU/utils.h
M libc/test/integration/src/__support/CMakeLists.txt
A libc/test/integration/src/__support/GPU/CMakeLists.txt
A libc/test/integration/src/__support/GPU/scan_reduce.cpp
Log Message:
-----------
[libc] Add utility functions for warp-level scan and reduction (#84866)
Summary:
The GPU uses a SIMT execution model. That means that each value actually
belongs to a group of 32 or 64 other lanes executing next to it. These
platforms offer some intrinsic fuctions to actually take elements from
neighboring lanes. With these we can do parallel scans or reductions.
These functions do not have an immediate user, but will be used in the
allocator interface that is in-progress and are generally good to have.
This patch is a precommit for these new utilitly functions.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list