alpaka
Abstraction Library for Parallel Kernel Acceleration
Loading...
Searching...
No Matches
Platform.hpp
Go to the documentation of this file.
1/* Copyright 2024 René Widera
2 * SPDX-License-Identifier: MPL-2.0
3 */
4
5
6#pragma once
7
14
15#if ALPAKA_LANG_CUDA
16
18
19namespace alpaka::onHost
20{
21 namespace internal
22 {
23 template<alpaka::concepts::DeviceKind T_DeviceKind>
24 struct MakePlatform::Op<api::Cuda, T_DeviceKind>
25 {
26 auto operator()(api::Cuda, T_DeviceKind) const
27 {
29 }
30 };
31 } // namespace internal
32} // namespace alpaka::onHost
33
34namespace alpaka::internal
35{
36 template<alpaka::concepts::DeviceKind T_DeviceKind>
37 struct GetApi::Op<onHost::unifiedCudaHip::Platform<ApiCudaRt, T_DeviceKind>>
38 {
39 inline constexpr auto operator()(auto&& platform) const
40 {
41 alpaka::unused(platform);
42 return api::Cuda{};
43 }
44 };
45
46 template<alpaka::concepts::DeviceKind T_DeviceKind>
47 struct GetDeviceType::Op<onHost::unifiedCudaHip::Platform<ApiCudaRt, T_DeviceKind>>
48 {
49 decltype(auto) operator()(auto&& platform) const
50 {
51 alpaka::unused(platform);
52 return T_DeviceKind{};
53 }
54 };
55} // namespace alpaka::internal
56#endif
constexpr Api api
Definition tag.hpp:24
Functionality which is usable on the host CPU controller thread.
Definition api.hpp:40
auto make_sharedSingleton(T_Args &&... args)
Definition Handle.hpp:14