alpaka
Abstraction Library for Parallel Kernel Acceleration
alpaka.hpp
Go to the documentation of this file.
1
/* Copyright 2023 Axel Hübl, Benjamin Worpitz, Erik Zenker, Matthias Werner, René Widera, Bernhard Manfred Gruber,
2
* Jan Stephan, Antonio Di Pilato, Luca Ferragina, Aurora Perego, Andrea Bocci
3
* SPDX-License-Identifier: MPL-2.0
4
*/
5
6
#pragma once
7
8
// Include the whole library.
9
10
// version number
11
#include "
alpaka/version.hpp
"
12
// acc
13
#include "
alpaka/acc/AccCpuOmp2Blocks.hpp
"
14
#include "
alpaka/acc/AccCpuOmp2Threads.hpp
"
15
#include "
alpaka/acc/AccCpuSerial.hpp
"
16
#include "
alpaka/acc/AccCpuSycl.hpp
"
17
#include "
alpaka/acc/AccCpuTbbBlocks.hpp
"
18
#include "
alpaka/acc/AccCpuThreads.hpp
"
19
#include "
alpaka/acc/AccDevProps.hpp
"
20
#include "
alpaka/acc/AccFpgaSyclIntel.hpp
"
21
#include "
alpaka/acc/AccGenericSycl.hpp
"
22
#include "
alpaka/acc/AccGpuCudaRt.hpp
"
23
#include "
alpaka/acc/AccGpuHipRt.hpp
"
24
#include "
alpaka/acc/AccGpuSyclIntel.hpp
"
25
#include "
alpaka/acc/Tag.hpp
"
26
#include "
alpaka/acc/Traits.hpp
"
27
// atomic
28
#include "
alpaka/atomic/AtomicCpu.hpp
"
29
#include "
alpaka/atomic/AtomicGenericSycl.hpp
"
30
#include "
alpaka/atomic/AtomicNoOp.hpp
"
31
#include "
alpaka/atomic/AtomicOmpBuiltIn.hpp
"
32
#include "
alpaka/atomic/AtomicUniformCudaHipBuiltIn.hpp
"
33
#include "
alpaka/atomic/Op.hpp
"
34
#include "
alpaka/atomic/Traits.hpp
"
35
// block
36
// shared
37
// dynamic
38
#include "
alpaka/block/shared/dyn/BlockSharedMemDynGenericSycl.hpp
"
39
#include "
alpaka/block/shared/dyn/BlockSharedMemDynMember.hpp
"
40
#include "
alpaka/block/shared/dyn/BlockSharedMemDynUniformCudaHipBuiltIn.hpp
"
41
#include "
alpaka/block/shared/dyn/Traits.hpp
"
42
// static
43
#include "
alpaka/block/shared/st/BlockSharedMemStGenericSycl.hpp
"
44
#include "
alpaka/block/shared/st/BlockSharedMemStMember.hpp
"
45
#include "
alpaka/block/shared/st/BlockSharedMemStMemberMasterSync.hpp
"
46
#include "
alpaka/block/shared/st/BlockSharedMemStUniformCudaHipBuiltIn.hpp
"
47
#include "
alpaka/block/shared/st/Traits.hpp
"
48
// sync
49
#include "
alpaka/block/sync/BlockSyncBarrierOmp.hpp
"
50
#include "
alpaka/block/sync/BlockSyncBarrierThread.hpp
"
51
#include "
alpaka/block/sync/BlockSyncGenericSycl.hpp
"
52
#include "
alpaka/block/sync/BlockSyncNoOp.hpp
"
53
#include "
alpaka/block/sync/BlockSyncUniformCudaHipBuiltIn.hpp
"
54
#include "
alpaka/block/sync/Traits.hpp
"
55
// core
56
#include "
alpaka/core/Align.hpp
"
57
#include "
alpaka/core/AlignedAlloc.hpp
"
58
#include "
alpaka/core/Assert.hpp
"
59
#include "
alpaka/core/BarrierThread.hpp
"
60
#include "
alpaka/core/BoostPredef.hpp
"
61
#include "
alpaka/core/ClipCast.hpp
"
62
#include "
alpaka/core/Common.hpp
"
63
#include "
alpaka/core/Concepts.hpp
"
64
#include "
alpaka/core/Cuda.hpp
"
65
#include "
alpaka/core/Debug.hpp
"
66
#include "
alpaka/core/Hip.hpp
"
67
#include "
alpaka/core/OmpSchedule.hpp
"
68
#include "
alpaka/core/Positioning.hpp
"
69
#include "
alpaka/core/RemoveRestrict.hpp
"
70
#include "
alpaka/core/Sycl.hpp
"
71
#include "
alpaka/core/ThreadPool.hpp
"
72
#include "
alpaka/core/Unreachable.hpp
"
73
#include "
alpaka/core/Unroll.hpp
"
74
#include "
alpaka/core/Utility.hpp
"
75
#include "
alpaka/core/Vectorize.hpp
"
76
// dev
77
#include "
alpaka/dev/DevCpu.hpp
"
78
#include "
alpaka/dev/DevCpuSycl.hpp
"
79
#include "
alpaka/dev/DevCudaRt.hpp
"
80
#include "
alpaka/dev/DevFpgaSyclIntel.hpp
"
81
#include "
alpaka/dev/DevGenericSycl.hpp
"
82
#include "
alpaka/dev/DevGpuSyclIntel.hpp
"
83
#include "
alpaka/dev/DevHipRt.hpp
"
84
#include "
alpaka/dev/Traits.hpp
"
85
#include "
alpaka/dev/cpu/Wait.hpp
"
86
// dim
87
#include "
alpaka/dim/DimArithmetic.hpp
"
88
#include "
alpaka/dim/DimIntegralConst.hpp
"
89
#include "
alpaka/dim/Traits.hpp
"
90
// event
91
#include "
alpaka/event/EventCpu.hpp
"
92
#include "
alpaka/event/EventCpuSycl.hpp
"
93
#include "
alpaka/event/EventCudaRt.hpp
"
94
#include "
alpaka/event/EventFpgaSyclIntel.hpp
"
95
#include "
alpaka/event/EventGenericSycl.hpp
"
96
#include "
alpaka/event/EventGpuSyclIntel.hpp
"
97
#include "
alpaka/event/EventHipRt.hpp
"
98
#include "
alpaka/event/Traits.hpp
"
99
// extent
100
#include "
alpaka/extent/Traits.hpp
"
101
// idx
102
#include "
alpaka/idx/Accessors.hpp
"
103
#include "
alpaka/idx/MapIdx.hpp
"
104
#include "
alpaka/idx/Traits.hpp
"
105
#include "
alpaka/idx/bt/IdxBtGenericSycl.hpp
"
106
#include "
alpaka/idx/bt/IdxBtOmp.hpp
"
107
#include "
alpaka/idx/bt/IdxBtRefThreadIdMap.hpp
"
108
#include "
alpaka/idx/bt/IdxBtUniformCudaHipBuiltIn.hpp
"
109
#include "
alpaka/idx/bt/IdxBtZero.hpp
"
110
#include "
alpaka/idx/gb/IdxGbGenericSycl.hpp
"
111
#include "
alpaka/idx/gb/IdxGbRef.hpp
"
112
#include "
alpaka/idx/gb/IdxGbUniformCudaHipBuiltIn.hpp
"
113
// kernel
114
#include "
alpaka/kernel/TaskKernelCpuOmp2Blocks.hpp
"
115
#include "
alpaka/kernel/TaskKernelCpuOmp2Threads.hpp
"
116
#include "
alpaka/kernel/TaskKernelCpuSerial.hpp
"
117
#include "
alpaka/kernel/TaskKernelCpuSycl.hpp
"
118
#include "
alpaka/kernel/TaskKernelCpuTbbBlocks.hpp
"
119
#include "
alpaka/kernel/TaskKernelCpuThreads.hpp
"
120
#include "
alpaka/kernel/TaskKernelFpgaSyclIntel.hpp
"
121
#include "
alpaka/kernel/TaskKernelGenericSycl.hpp
"
122
#include "
alpaka/kernel/TaskKernelGpuCudaRt.hpp
"
123
#include "
alpaka/kernel/TaskKernelGpuHipRt.hpp
"
124
#include "
alpaka/kernel/TaskKernelGpuSyclIntel.hpp
"
125
#include "
alpaka/kernel/Traits.hpp
"
126
// math
127
#include "
alpaka/math/Complex.hpp
"
128
#include "
alpaka/math/MathGenericSycl.hpp
"
129
#include "
alpaka/math/MathStdLib.hpp
"
130
#include "
alpaka/math/MathUniformCudaHipBuiltIn.hpp
"
131
// mem
132
#include "
alpaka/mem/alloc/AllocCpuAligned.hpp
"
133
#include "
alpaka/mem/alloc/AllocCpuNew.hpp
"
134
#include "
alpaka/mem/alloc/Traits.hpp
"
135
#include "
alpaka/mem/buf/BufCpu.hpp
"
136
#include "
alpaka/mem/buf/BufCpuSycl.hpp
"
137
#include "
alpaka/mem/buf/BufCudaRt.hpp
"
138
#include "
alpaka/mem/buf/BufFpgaSyclIntel.hpp
"
139
#include "
alpaka/mem/buf/BufGenericSycl.hpp
"
140
#include "
alpaka/mem/buf/BufGpuSyclIntel.hpp
"
141
#include "
alpaka/mem/buf/BufHipRt.hpp
"
142
#include "
alpaka/mem/buf/Traits.hpp
"
143
#include "
alpaka/mem/fence/MemFenceCpu.hpp
"
144
#include "
alpaka/mem/fence/MemFenceCpuSerial.hpp
"
145
#include "
alpaka/mem/fence/MemFenceGenericSycl.hpp
"
146
#include "
alpaka/mem/fence/MemFenceOmp2Blocks.hpp
"
147
#include "
alpaka/mem/fence/MemFenceOmp2Threads.hpp
"
148
#include "
alpaka/mem/fence/MemFenceUniformCudaHipBuiltIn.hpp
"
149
#include "
alpaka/mem/fence/Traits.hpp
"
150
#include "
alpaka/mem/global/DeviceGlobalCpu.hpp
"
151
#include "
alpaka/mem/global/DeviceGlobalGenericSycl.hpp
"
152
#include "
alpaka/mem/global/DeviceGlobalUniformCudaHipBuiltIn.hpp
"
153
#include "
alpaka/mem/global/Traits.hpp
"
154
#include "
alpaka/mem/view/Traits.hpp
"
155
#include "
alpaka/mem/view/ViewConst.hpp
"
156
#include "
alpaka/mem/view/ViewPlainPtr.hpp
"
157
#include "
alpaka/mem/view/ViewStdArray.hpp
"
158
#include "
alpaka/mem/view/ViewStdVector.hpp
"
159
#include "
alpaka/mem/view/ViewSubView.hpp
"
160
// meta
161
#include "
alpaka/meta/Apply.hpp
"
162
#include "
alpaka/meta/CartesianProduct.hpp
"
163
#include "
alpaka/meta/Concatenate.hpp
"
164
#include "
alpaka/meta/DependentFalseType.hpp
"
165
#include "
alpaka/meta/Filter.hpp
"
166
#include "
alpaka/meta/Fold.hpp
"
167
#include "
alpaka/meta/ForEachType.hpp
"
168
#include "
alpaka/meta/Functional.hpp
"
169
#include "
alpaka/meta/IntegerSequence.hpp
"
170
#include "
alpaka/meta/Integral.hpp
"
171
#include "
alpaka/meta/IsArrayOrVector.hpp
"
172
#include "
alpaka/meta/IsStrictBase.hpp
"
173
#include "
alpaka/meta/NdLoop.hpp
"
174
#include "
alpaka/meta/NonZero.hpp
"
175
#include "
alpaka/meta/Set.hpp
"
176
#include "
alpaka/meta/Transform.hpp
"
177
#include "
alpaka/meta/TypeListOps.hpp
"
178
// offset
179
#include "
alpaka/offset/Traits.hpp
"
180
// platform
181
#include "
alpaka/platform/PlatformCpu.hpp
"
182
#include "
alpaka/platform/PlatformCpuSycl.hpp
"
183
#include "
alpaka/platform/PlatformCudaRt.hpp
"
184
#include "
alpaka/platform/PlatformFpgaSyclIntel.hpp
"
185
#include "
alpaka/platform/PlatformGpuSyclIntel.hpp
"
186
#include "
alpaka/platform/PlatformHipRt.hpp
"
187
#include "
alpaka/platform/Traits.hpp
"
188
// rand
189
#include "
alpaka/rand/RandDefault.hpp
"
190
#include "
alpaka/rand/RandGenericSycl.hpp
"
191
#include "
alpaka/rand/RandPhilox.hpp
"
192
#include "
alpaka/rand/RandStdLib.hpp
"
193
#include "
alpaka/rand/RandUniformCudaHipRand.hpp
"
194
#include "
alpaka/rand/Traits.hpp
"
195
// idx
196
#include "
alpaka/idx/Traits.hpp
"
197
// queue
198
#include "
alpaka/queue/Properties.hpp
"
199
#include "
alpaka/queue/QueueCpuBlocking.hpp
"
200
#include "
alpaka/queue/QueueCpuNonBlocking.hpp
"
201
#include "
alpaka/queue/QueueCpuSyclBlocking.hpp
"
202
#include "
alpaka/queue/QueueCpuSyclNonBlocking.hpp
"
203
#include "
alpaka/queue/QueueCudaRtBlocking.hpp
"
204
#include "
alpaka/queue/QueueCudaRtNonBlocking.hpp
"
205
#include "
alpaka/queue/QueueFpgaSyclIntelBlocking.hpp
"
206
#include "
alpaka/queue/QueueFpgaSyclIntelNonBlocking.hpp
"
207
#include "
alpaka/queue/QueueGpuSyclIntelBlocking.hpp
"
208
#include "
alpaka/queue/QueueGpuSyclIntelNonBlocking.hpp
"
209
#include "
alpaka/queue/QueueHipRtBlocking.hpp
"
210
#include "
alpaka/queue/QueueHipRtNonBlocking.hpp
"
211
#include "
alpaka/queue/Traits.hpp
"
212
// traits
213
#include "
alpaka/traits/Traits.hpp
"
214
// wait
215
#include "
alpaka/wait/Traits.hpp
"
216
// workdiv
217
#include "
alpaka/workdiv/Traits.hpp
"
218
#include "
alpaka/workdiv/WorkDivHelpers.hpp
"
219
#include "
alpaka/workdiv/WorkDivMembers.hpp
"
220
// vec
221
#include "
alpaka/vec/Traits.hpp
"
222
#include "
alpaka/vec/Vec.hpp
"
AccCpuOmp2Blocks.hpp
AccCpuOmp2Threads.hpp
AccCpuSerial.hpp
AccCpuSycl.hpp
AccCpuTbbBlocks.hpp
AccCpuThreads.hpp
AccDevProps.hpp
AccFpgaSyclIntel.hpp
AccGenericSycl.hpp
AccGpuCudaRt.hpp
AccGpuHipRt.hpp
AccGpuSyclIntel.hpp
Accessors.hpp
Align.hpp
AlignedAlloc.hpp
AllocCpuAligned.hpp
AllocCpuNew.hpp
Apply.hpp
Assert.hpp
AtomicCpu.hpp
AtomicGenericSycl.hpp
AtomicNoOp.hpp
AtomicOmpBuiltIn.hpp
AtomicUniformCudaHipBuiltIn.hpp
BarrierThread.hpp
BlockSharedMemDynGenericSycl.hpp
BlockSharedMemDynMember.hpp
BlockSharedMemDynUniformCudaHipBuiltIn.hpp
BlockSharedMemStGenericSycl.hpp
BlockSharedMemStMemberMasterSync.hpp
BlockSharedMemStMember.hpp
BlockSharedMemStUniformCudaHipBuiltIn.hpp
BlockSyncBarrierOmp.hpp
BlockSyncBarrierThread.hpp
BlockSyncGenericSycl.hpp
BlockSyncNoOp.hpp
BlockSyncUniformCudaHipBuiltIn.hpp
BoostPredef.hpp
BufCpuSycl.hpp
BufCpu.hpp
BufCudaRt.hpp
BufFpgaSyclIntel.hpp
BufGenericSycl.hpp
BufGpuSyclIntel.hpp
BufHipRt.hpp
CartesianProduct.hpp
ClipCast.hpp
Complex.hpp
Concatenate.hpp
Concepts.hpp
Cuda.hpp
Debug.hpp
DependentFalseType.hpp
DevCpuSycl.hpp
DevCpu.hpp
DevCudaRt.hpp
DevFpgaSyclIntel.hpp
DevGenericSycl.hpp
DevGpuSyclIntel.hpp
DevHipRt.hpp
DeviceGlobalCpu.hpp
DeviceGlobalGenericSycl.hpp
DeviceGlobalUniformCudaHipBuiltIn.hpp
DimArithmetic.hpp
DimIntegralConst.hpp
EventCpuSycl.hpp
EventCpu.hpp
EventCudaRt.hpp
EventFpgaSyclIntel.hpp
EventGenericSycl.hpp
EventGpuSyclIntel.hpp
EventHipRt.hpp
Filter.hpp
Fold.hpp
ForEachType.hpp
Functional.hpp
Hip.hpp
IdxBtGenericSycl.hpp
IdxBtOmp.hpp
IdxBtRefThreadIdMap.hpp
IdxBtUniformCudaHipBuiltIn.hpp
IdxBtZero.hpp
IdxGbGenericSycl.hpp
IdxGbRef.hpp
IdxGbUniformCudaHipBuiltIn.hpp
IntegerSequence.hpp
Integral.hpp
IsArrayOrVector.hpp
IsStrictBase.hpp
MapIdx.hpp
MathGenericSycl.hpp
MathStdLib.hpp
MathUniformCudaHipBuiltIn.hpp
MemFenceCpuSerial.hpp
MemFenceCpu.hpp
MemFenceGenericSycl.hpp
MemFenceOmp2Blocks.hpp
MemFenceOmp2Threads.hpp
MemFenceUniformCudaHipBuiltIn.hpp
NdLoop.hpp
NonZero.hpp
OmpSchedule.hpp
Op.hpp
PlatformCpuSycl.hpp
PlatformCpu.hpp
PlatformCudaRt.hpp
PlatformFpgaSyclIntel.hpp
PlatformGpuSyclIntel.hpp
PlatformHipRt.hpp
Positioning.hpp
Properties.hpp
QueueCpuBlocking.hpp
QueueCpuNonBlocking.hpp
QueueCpuSyclBlocking.hpp
QueueCpuSyclNonBlocking.hpp
QueueCudaRtBlocking.hpp
QueueCudaRtNonBlocking.hpp
QueueFpgaSyclIntelBlocking.hpp
QueueFpgaSyclIntelNonBlocking.hpp
QueueGpuSyclIntelBlocking.hpp
QueueGpuSyclIntelNonBlocking.hpp
QueueHipRtBlocking.hpp
QueueHipRtNonBlocking.hpp
RandDefault.hpp
RandGenericSycl.hpp
RandPhilox.hpp
RandStdLib.hpp
RandUniformCudaHipRand.hpp
RemoveRestrict.hpp
Sycl.hpp
Tag.hpp
TaskKernelCpuOmp2Blocks.hpp
TaskKernelCpuOmp2Threads.hpp
TaskKernelCpuSerial.hpp
TaskKernelCpuSycl.hpp
TaskKernelCpuTbbBlocks.hpp
TaskKernelCpuThreads.hpp
TaskKernelFpgaSyclIntel.hpp
TaskKernelGenericSycl.hpp
TaskKernelGpuCudaRt.hpp
TaskKernelGpuHipRt.hpp
TaskKernelGpuSyclIntel.hpp
ThreadPool.hpp
Transform.hpp
TypeListOps.hpp
Unreachable.hpp
Unroll.hpp
Utility.hpp
Vec.hpp
Vectorize.hpp
ViewConst.hpp
ViewPlainPtr.hpp
ViewStdArray.hpp
ViewStdVector.hpp
ViewSubView.hpp
Wait.hpp
WorkDivHelpers.hpp
WorkDivMembers.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Common.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Set.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Traits.hpp
Traits.hpp
version.hpp
Traits.hpp
Traits.hpp
include
alpaka
alpaka.hpp
Generated on Wed Apr 17 2024 12:07:10 for alpaka by
1.9.1