![]() |
alpaka
Abstraction Library for Parallel Kernel Acceleration
|
Namespaces | |
| namespace | concepts |
| namespace | hwloc |
| Implement functions required to set thread affinity and pin memory. | |
Classes | |
| struct | AdjustThreadSpec |
| struct | Alloc |
| struct | AllocDeferred |
| struct | AllocMapped |
| struct | AllocUnified |
| struct | Data |
| struct | Enqueue |
| struct | Fill |
| struct | GetDevice |
| struct | GetDeviceCount |
| struct | GetDeviceProperties |
| struct | GetExtents |
| struct | GetFreeGlobalMemBytes |
| struct | GetNativeHandle |
| struct | GetPitches |
| struct | IsDataAccessible |
| checks if a view can be accessed from the given device More... | |
| struct | IsEventComplete |
| struct | IsQueueEmpty |
| struct | MakeDevice |
| struct | MakeEvent |
| struct | MakePlatform |
| struct | MakeQueue |
| struct | ManagedDealloc |
| Manage the deallocation of memory. More... | |
| struct | Memcpy |
| struct | MemcpyDeviceGlobal |
| struct | Memset |
| class | Scan_AddIncrementsKernel |
| class | Scan_ScanBlocksKernel |
| struct | SimdConcurrentKernel |
| struct | SimdIotaKernel |
| struct | SimdTransformKernel |
| struct | SimdTransformReduceKernel |
| struct | Wait |
| struct | WaitFor |
Enumerations | |
| enum | ScanType { EXCLUSIVE_SCAN , INCLUSIVE_SCAN } |
Functions | |
| template<typename T_Idx, typename T_Data> | |
| ALPAKA_FN_ACC void | addIncrements (T_Data *block, T_Data const &blockSum, alpaka::concepts::CVector< T_Idx > auto const &extent) |
| template<typename TKernelFn, typename... TArgs> | |
| static auto | adjustThreadSpec (auto const &device, onHost::concepts::FrameSpec auto const &frameSpec, KernelBundle< TKernelFn, TArgs... > const &kernelBundle) |
| template<typename T_DataType> | |
| void | concurrent (auto const &queue, alpaka::concepts::Executor auto const exec, alpaka::concepts::VectorOrScalar auto const &extents, auto &&fn, alpaka::concepts::IDataSource auto &&... in) |
| template<typename T_Acc, typename T_Idx> | |
| constexpr T_Idx | conflictFreeAccess (T_Idx const &n) |
| template<typename TKernelFn, typename... TArgs> | |
| void | enqueue (auto &queue, onHost::concepts::ThreadOrFrameSpec auto const &launchCfg, KernelBundle< TKernelFn, TArgs... > const &kernelBundle) |
| void | enqueueHostFn (auto &queue, auto const &task) |
| void | enqueueHostFnDeferred (auto &queue, auto const &task) |
| constexpr uint32_t | getCPUCachelineSize () |
| constexpr uint32_t | getCPUNumPipelines () |
| template<typename T_Type> | |
| constexpr uint32_t | getCPUSimdWidth () |
| constexpr auto | getDevice (auto &&any) |
| DeviceProperties | getDeviceProperties (auto const &platform, uint32_t idx) |
| auto | getExtents (auto &&any) |
| template<typename T_Any> | |
| auto | getExtents (Handle< T_Any > &&any) |
| constexpr auto | getFrameSpec (auto const &internalDevice, alpaka::concepts::Executor auto executor, alpaka::concepts::VectorOrScalar auto const &extents) |
| Provide a frame specification for the given extents. | |
| auto | getNativeHandle (auto &&any) |
| auto | getPitches (auto &&any) |
| template<typename T_Any> | |
| auto | getPitches (Handle< T_Any > &&any) |
| template<typename T_DataType> | |
| constexpr auto | getSimdFrameSpec (auto const &internalDevice, alpaka::concepts::Executor auto executor, alpaka::concepts::VectorOrScalar auto const &extents) |
| Provides a SIMD optimized frame specification. | |
| template<typename T_DataType> | |
| void | iota (auto const &queue, alpaka::concepts::Executor auto const exec, alpaka::concepts::Vector auto const &extents, T_DataType const &initValue, alpaka::concepts::IMdSpan auto &&... inputs) |
| bool | isEventComplete (auto &&any) |
| bool | isQueueEmpty (auto &queue) |
| static auto | makePlatform (auto api, alpaka::concepts::DeviceKind auto deviceType) |
| template<alpaka::concepts::DeviceKind TDeviceKind, typename T_Idx, typename T_Data> | |
| consteval T_Idx | maximumMiniBlockSize () |
| template<ScanType SCAN_TYPE> | |
| void | scan (auto &queue, alpaka::onHost::concepts::Device auto &devAcc, alpaka::concepts::Executor auto &exec, alpaka::concepts::IMdSpan auto &buffer, alpaka::concepts::IMdSpan auto &outputVec, alpaka::concepts::IDataSource auto &inputVec) |
| template<ScanType SCAN_TYPE> | |
| void | scan (auto &queue, alpaka::onHost::concepts::Device auto &devAcc, alpaka::concepts::Executor auto &exec, alpaka::concepts::IMdSpan auto &outputVec, alpaka::concepts::IDataSource auto const &inputVec) |
| template<typename T_Data> | |
| auto | scanBufferSize (alpaka::concepts::Vector auto const &extents) |
| template<typename T_Data> | |
| auto | scanBufferSize (std::integral auto const &extent) |
| template<typename T_Idx, typename T_Data> | |
| ALPAKA_FN_ACC T_Data | scanMiniBlock (T_Data *block, alpaka::concepts::CVector< T_Idx > auto const &extent) |
| template<typename T_Type> | |
| constexpr size_t | stdSimdWidth () |
| SIMD width in bytes defined by std::simd. | |
| void | transform (auto const &queue, alpaka::concepts::Executor auto const exec, alpaka::concepts::IMdSpan auto &&out, auto &&fn, alpaka::concepts::IDataSource auto &&... in) |
| template<typename T_DataType> | |
| void | transformReduce (auto const &queue, alpaka::concepts::Executor auto const exec, T_DataType const &neutralElement, alpaka::concepts::IMdSpan auto out, auto &&reduceFn, auto &&transformFn, auto &&in0, alpaka::concepts::IDataSource auto &&... in) |
| void | wait (auto &&any) |
| void | waitFor (auto &queue, auto &event) |
Variables | |
| constexpr std::size_t | chunkSize = 2048u |
| ALPAKA_FN_ACC void alpaka::onHost::internal::addIncrements | ( | T_Data * | block, |
| T_Data const & | blockSum, | ||
| alpaka::concepts::CVector< T_Idx > auto const & | extent ) |
|
static |
Definition at line 285 of file interface.hpp.
|
inline |
Definition at line 44 of file concurrent.hpp.
|
constexpr |
|
inline |
Definition at line 254 of file interface.hpp.
|
inline |
Definition at line 243 of file interface.hpp.
|
inline |
Definition at line 248 of file interface.hpp.
|
constexpr |
Definition at line 88 of file cpuArchSize.hpp.
|
constexpr |
Definition at line 76 of file cpuArchSize.hpp.
|
constexpr |
Definition at line 35 of file cpuArchSize.hpp.
|
inlineconstexpr |
Definition at line 78 of file interface.hpp.
|
inline |
Definition at line 447 of file interface.hpp.
|
inline |
Definition at line 464 of file interface.hpp.
|
inline |
Definition at line 470 of file interface.hpp.
|
inlineconstexpr |
Provide a frame specification for the given extents.
| internalDevice | must be an alpaka internal device implementation |
Definition at line 502 of file interface.hpp.
|
inline |
Definition at line 95 of file interface.hpp.
|
inline |
Definition at line 487 of file interface.hpp.
|
inline |
Definition at line 493 of file interface.hpp.
|
inlineconstexpr |
Provides a SIMD optimized frame specification.
The frame specification is optimized for a flat non-hierarchical execution via onAcc::worker::threadsInGrid.
| T_DataType | the data type for which you would like to SIMD optimize |
| internalDevice | must be a alpaka internal device implementation |
Definition at line 557 of file interface.hpp.
|
inline |
|
inline |
Definition at line 170 of file interface.hpp.
|
inline |
Definition at line 187 of file interface.hpp.
|
static |
Definition at line 37 of file interface.hpp.
|
consteval |
| void alpaka::onHost::internal::scan | ( | auto & | queue, |
| alpaka::onHost::concepts::Device auto & | devAcc, | ||
| alpaka::concepts::Executor auto & | exec, | ||
| alpaka::concepts::IMdSpan auto & | buffer, | ||
| alpaka::concepts::IMdSpan auto & | outputVec, | ||
| alpaka::concepts::IDataSource auto & | inputVec ) |
| void alpaka::onHost::internal::scan | ( | auto & | queue, |
| alpaka::onHost::concepts::Device auto & | devAcc, | ||
| alpaka::concepts::Executor auto & | exec, | ||
| alpaka::concepts::IMdSpan auto & | outputVec, | ||
| alpaka::concepts::IDataSource auto const & | inputVec ) |
| auto alpaka::onHost::internal::scanBufferSize | ( | alpaka::concepts::Vector auto const & | extents | ) |
| auto alpaka::onHost::internal::scanBufferSize | ( | std::integral auto const & | extent | ) |
| ALPAKA_FN_ACC T_Data alpaka::onHost::internal::scanMiniBlock | ( | T_Data * | block, |
| alpaka::concepts::CVector< T_Idx > auto const & | extent ) |
|
constexpr |
SIMD width in bytes defined by std::simd.
Definition at line 20 of file cpuArchSize.hpp.
|
inline |
Definition at line 83 of file transform.hpp.
|
inline |
Definition at line 133 of file transformReduce.hpp.
|
inline |
Definition at line 136 of file interface.hpp.
|
inline |
Definition at line 153 of file interface.hpp.