Skip to content

Commit c514213

Browse files
authored
[device-libs][comgr] - Add gfx1250 and gfx1251 support (#553)
1 parent 5961ba0 commit c514213

File tree

6 files changed

+70
-1
lines changed

6 files changed

+70
-1
lines changed

amd/comgr/src/comgr-isa-metadata.def

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ HANDLE_ISA("amdgcn-amd-amdhsa-", "gfx1152", false, false, EF_AMDGPU_MAC
7272
HANDLE_ISA("amdgcn-amd-amdhsa-", "gfx1153", false, false, EF_AMDGPU_MACH_AMDGCN_GFX1153, true, true, 65536, 32, 4, 40, 1024, 106, 800, 106, 16, 1024, 256)
7373
HANDLE_ISA("amdgcn-amd-amdhsa-", "gfx1200", false, false, EF_AMDGPU_MACH_AMDGCN_GFX1200, true, true, 65536, 32, 4, 40, 1024, 106, 800, 106, 24, 1536, 256)
7474
HANDLE_ISA("amdgcn-amd-amdhsa-", "gfx1201", false, false, EF_AMDGPU_MACH_AMDGCN_GFX1201, true, true, 65536, 32, 4, 40, 1024, 106, 800, 106, 24, 1536, 256)
75+
HANDLE_ISA("amdgcn-amd-amdhsa-", "gfx1250", true, true, EF_AMDGPU_MACH_AMDGCN_GFX1250, true, false, 327680, 64, 4, 40, 1024, 106, 800, 106, 16, 1024, 1024)
76+
HANDLE_ISA("amdgcn-amd-amdhsa-", "gfx1251", true, true, EF_AMDGPU_MACH_AMDGCN_GFX1251, true, false, 327680, 64, 4, 40, 1024, 106, 800, 106, 16, 1024, 1024)
7577

7678
HANDLE_ISA("amdgcn-amd-amdhsa-", "gfx9-generic", false, true, EF_AMDGPU_MACH_AMDGCN_GFX9_GENERIC, true, true, 65536, 32, 4, 40, 1024, 16, 800, 102, 4, 256, 256)
7779
HANDLE_ISA("amdgcn-amd-amdhsa-", "gfx9-4-generic", true, true, EF_AMDGPU_MACH_AMDGCN_GFX9_4_GENERIC, true, false, 65536, 32, 4, 40, 1024, 16, 800, 102, 8, 512, 512)

amd/comgr/test/get_data_isa_name_test.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,8 @@ static isa_features_t IsaFeatures[] = {
7777
{"amdgcn-amd-amdhsa--gfx1153", false, false, false},
7878
{"amdgcn-amd-amdhsa--gfx1200", false, false, false},
7979
{"amdgcn-amd-amdhsa--gfx1201", false, false, false},
80+
{"amdgcn-amd-amdhsa--gfx1250", false, false, false},
81+
{"amdgcn-amd-amdhsa--gfx1251", false, false, false},
8082

8183
{"amdgcn-amd-amdhsa--gfx9-generic", false, true, true},
8284
{"amdgcn-amd-amdhsa--gfx9-4-generic", true, true, true},
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
/*===--------------------------------------------------------------------------
2+
* ROCm Device Libraries
3+
*
4+
* This file is distributed under the University of Illinois Open Source
5+
* License. See LICENSE.TXT for details.
6+
*===------------------------------------------------------------------------*/
7+
8+
#include "oclc.h"
9+
#include "ockl.h"
10+
11+
__attribute__((target("cumode,gfx1250-insts"), const)) uint
12+
__ockl_cluster_num_workgroups(int dim)
13+
{
14+
switch (dim) {
15+
case 0:
16+
return __builtin_amdgcn_cluster_workgroup_max_id_x() + 1;
17+
case 1:
18+
return __builtin_amdgcn_cluster_workgroup_max_id_y() + 1;
19+
case 2:
20+
return __builtin_amdgcn_cluster_workgroup_max_id_z() + 1;
21+
default:
22+
return 1;
23+
}
24+
}
25+
26+
__attribute__((target("cumode,gfx1250-insts"), const)) uint
27+
__ockl_cluster_workgroup_id(int dim)
28+
{
29+
switch (dim) {
30+
case 0:
31+
return __builtin_amdgcn_cluster_workgroup_id_x();
32+
case 1:
33+
return __builtin_amdgcn_cluster_workgroup_id_y();
34+
case 2:
35+
return __builtin_amdgcn_cluster_workgroup_id_z();
36+
default:
37+
return 0;
38+
}
39+
}
40+
41+
__attribute__((target("cumode,gfx1250-insts"), const)) uint
42+
__ockl_cluster_flat_num_workgroups(void)
43+
{
44+
return __builtin_amdgcn_cluster_workgroup_max_flat_id() + 1;
45+
}

amd/device-libs/ockl/src/dots.cl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ __attribute__((target("dot8-insts"), const)) static uint amdgcn_sudot8(bool as,
6464
return __builtin_amdgcn_sudot8(true , a, true , b, c, true );
6565
}
6666

67-
#define SWDOT __oclc_ISA_version < 9006 || __oclc_ISA_version == 9009 || __oclc_ISA_version == 10100
67+
#define SWDOT __oclc_ISA_version < 9006 || __oclc_ISA_version == 9009 || __oclc_ISA_version == 10100 || __oclc_ISA_version == 12500 || __oclc_ISA_version == 12501
6868
#define SWIDOT2 __oclc_ISA_version < 9006 || __oclc_ISA_version == 9009 || __oclc_ISA_version == 10100 || __oclc_ISA_version >= 11000
6969
#define SUDOT __oclc_ISA_version >= 11000
7070

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
/*===--------------------------------------------------------------------------
2+
* ROCm Device Libraries
3+
*
4+
* This file is distributed under the University of Illinois Open Source
5+
* License. See LICENSE.TXT for details.
6+
*===------------------------------------------------------------------------*/
7+
8+
#include "oclc.h"
9+
10+
const __constant int __oclc_ISA_version = 12500;
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
/*===--------------------------------------------------------------------------
2+
* ROCm Device Libraries
3+
*
4+
* This file is distributed under the University of Illinois Open Source
5+
* License. See LICENSE.TXT for details.
6+
*===------------------------------------------------------------------------*/
7+
8+
#include "oclc.h"
9+
10+
const __constant int __oclc_ISA_version = 12501;

0 commit comments

Comments
 (0)