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_HIP
16
18
19namespace alpaka::onHost
20{
21 namespace internal
22 {
23
24 template<alpaka::concepts::DeviceKind T_DeviceKind>
25 struct MakePlatform::Op<api::Hip, T_DeviceKind>
26 {
27 auto operator()(api::Hip, T_DeviceKind) const
28 {
30 }
31 };
32 } // namespace internal
33} // namespace alpaka::onHost
34
35namespace alpaka::internal
36{
37 template<alpaka::concepts::DeviceKind T_DeviceKind>
38 struct GetApi::Op<onHost::unifiedCudaHip::Platform<ApiHipRt, T_DeviceKind>>
39 {
40 inline constexpr auto operator()(auto&& platform) const
41 {
42 alpaka::unused(platform);
43 return api::Hip{};
44 }
45 };
46
47 template<alpaka::concepts::DeviceKind T_DeviceKind>
48 struct GetDeviceType::Op<onHost::unifiedCudaHip::Platform<ApiHipRt, T_DeviceKind>>
49 {
50 decltype(auto) operator()(auto&& platform) const
51 {
52 alpaka::unused(platform);
53 return T_DeviceKind{};
54 }
55 };
56} // namespace alpaka::internal
57#endif
alpaka internal implementations.
Definition generic.hpp:19
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
constexpr auto operator()(auto &&any) const
Definition interface.hpp:55
auto operator()(T_Api api, T_DeviceKind deviceType) const