alpaka
Abstraction Library for Parallel Kernel Acceleration
Loading...
Searching...
No Matches
HipConfig.hpp
Go to the documentation of this file.
1
/* Copyright 2025 René Widera
2
* SPDX-License-Identifier: MPL-2.0
3
*/
4
5
#pragma once
6
7
#include "
alpaka/core/PP.hpp
"
8
9
// We can not use ALPAKA_LANG_HIP because this file is required by core/config.hpp where ALPAKA_LANG_HIP is defined.
10
#if defined(__HIP__)
11
12
# include <hip/hip_version.h>
13
14
// version numbers are only defined on the device side
15
# if !defined(ALPAKA_AMDGPU_ARCH) && defined(__HIP__) && __HIP_DEVICE_COMPILE__ == 1
16
17
/* Map AMDGPU arch macro -> ALPAKA_VRRPP_TO_VERSION(wrapped code)
18
* Rules:
19
* - gfx9xy (numeric): 9xy -> 90x0y (e.g., 908->90008, 906->90006, 942->90402)
20
* - gfx10xy / gfx11xy: stxy -> st0x0y (e.g., 1036->100306, 1103->110003)
21
* - Suffix: a == 10 (90a->90010), b == 11, c == 11
22
*
23
* An overview of AMD GPU architectures can be found here:
24
* https://llvm.org/docs/AMDGPUUsage.html#processors
25
*/
26
27
# if defined(__gfx1200__)
28
/* RDNA 4 dGPU (RX 9060 XT) */
29
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(120000)
30
# elif defined(__gfx1201__)
31
/* RDNA 4 dGPU (RX 9070 / 9070 XT) */
32
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(120001)
33
# elif defined(__gfx1250__)
34
/* RDNA 4 APU (APU) */
35
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(120500)
36
# elif defined(__gfx1251__)
37
/* RDNA 4 APU variant */
38
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(120501)
39
40
# elif defined(__gfx1153__)
41
/* RDNA 3.5 iGPU (Medusa Point / Strix Halo successor) */
42
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(110503)
43
# elif defined(__gfx1152__)
44
/* RDNA 3.5 iGPU (Krackan Point) */
45
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(110502)
46
# elif defined(__gfx1151__)
47
/* RDNA 3.5 iGPU (Strix Halo) */
48
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(110501)
49
# elif defined(__gfx1150__)
50
/* RDNA 3.5 iGPU (Radeon 890M on Strix Point) */
51
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(110500)
52
53
# elif defined(__gfx1103__)
54
/* RDNA 3 APU (Radeon 780M, 760M, ROG Ally Extreme) */
55
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(110003)
56
# elif defined(__gfx1102__)
57
/* RDNA 3 Desktop (RX 7600 / 7600 XT) */
58
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(110002)
59
# elif defined(__gfx1101__)
60
/* RDNA 3 Desktop (RX 7700 / 7700 XT, Pro W7700 / V710) */
61
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(110001)
62
# elif defined(__gfx1100__)
63
/* RDNA 3 Desktop (RX 7900 XT, XTX, Pro W7900) */
64
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(110000)
65
66
# elif defined(__gfx1036__)
67
/* RDNA 2 APU (Radeon Graphics 128-SP iGPU) */
68
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(100306)
69
# elif defined(__gfx1035__)
70
/* RDNA 2 APU (Radeon 660M, 680M) */
71
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(100305)
72
# elif defined(__gfx1034__)
73
/* RDNA 2 Mobile (Pro W6300/W6400, RX 6400-6500) */
74
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(100304)
75
# elif defined(__gfx1033__)
76
/* RDNA 2 APU (Steam Deck) */
77
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(100303)
78
# elif defined(__gfx1032__)
79
/* RDNA 2 Desktop (RX 6600 XT, 6650 XT/S, 6700S) */
80
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(100302)
81
# elif defined(__gfx1031__)
82
/* RDNA 2 Desktop (RX 6700 series, 6750/6850M XT) */
83
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(100301)
84
# elif defined(__gfx1030__)
85
/* RDNA 2 Desktop (RX 6800 / 6900 XT, Pro W6800) */
86
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(100300)
87
88
# elif defined(__gfx1013__)
89
/* RDNA 1 Mobile (RX 5300M / 5500M) */
90
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(100103)
91
# elif defined(__gfx1012__)
92
/* RDNA 1 Desktop (RX 5500 / 5500 XT) */
93
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(100102)
94
# elif defined(__gfx1011__)
95
/* RDNA 1 Desktop (Pro V520) */
96
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(100101)
97
# elif defined(__gfx1010__)
98
/* RDNA 1 Desktop (RX 5700 / 5700 XT, Pro 5600 XT/M) */
99
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(100100)
100
101
# elif defined(__gfx942__)
102
/* CDNA 3 (Instinct MI300 series: MI300/MI300A/MI300X) */
103
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(90402)
104
# elif defined(__gfx941__)
105
/* CDNA 2/3 (Instinct MI210) */
106
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(90401)
107
# elif defined(__gfx940__)
108
/* CDNA 2 (Instinct MI200) */
109
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(90400)
110
111
# elif defined(__gfx90c__)
112
/* CDNA 1 (Renoir APUs), c -> 12 */
113
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(90012)
114
# elif defined(__gfx90b__)
115
/* (If present) b -> 11 */
116
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(90011)
117
# elif defined(__gfx90a__)
118
/* CDNA 2 (Instinct MI250 / MI250X), a -> 10 */
119
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(90010)
120
# elif defined(__gfx908__)
121
/* CDNA 1 (Instinct MI100) */
122
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(90008)
123
# elif defined(__gfx906__)
124
/* Vega 20 (Radeon VII, Instinct MI50/60) */
125
# define ALPAKA_AMDGPU_ARCH ALPAKA_VRRPP_TO_VERSION(90006)
126
127
# else
128
# error \
129
"Unknown AMDGPU architecture, please define __gfxXXX__ macro for your target. Until alpaka is updated you can define the macro ALPAKA_AMDGPU_ARCH to avoid this error."
130
# define ALPAKA_AMDGPU_ARCH ALPAKA_VERSION_NUMBER_NOT_AVAILABLE
131
# endif
132
133
# endif
134
#endif
PP.hpp
include
alpaka
core
HipConfig.hpp
Generated on Tue Nov 25 2025 09:20:20 for alpaka by
1.9.8