Skip to content

Commit 23a9497

Browse files
authored
Disable all pk_i4 tests for all targets except gfx942/950. (#2022)
* only build gemm_fp8_pk_i4 examples for gfx942/950 * fix cmake logic * moved the architecture check to IsSupported function * Revert "moved the architecture check to IsSupported function" This reverts commit 056d2a0. * disable all pk_i4 tests for targets other than gfx942/950 * fix cmake logic
1 parent 54c81a1 commit 23a9497

File tree

8 files changed

+21
-11
lines changed

8 files changed

+21
-11
lines changed

Jenkinsfile

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -291,6 +291,11 @@ def cmake_build(Map conf=[:]){
291291
setup_cmd = conf.get("setup_cmd", """${cmake_envs} cmake -G Ninja ${setup_args} -DCMAKE_CXX_FLAGS=" -O3 -ftime-trace " .. """)
292292
build_cmd = conf.get("build_cmd", "${build_envs} ninja -j${nt} ${config_targets}")
293293
}
294+
else if (setup_args.contains("gfx908;gfx90a;gfx942")){
295+
//limit the number of build threads when building for multiple gfx9 targets
296+
setup_cmd = conf.get("setup_cmd", "${cmake_envs} cmake ${setup_args} .. ")
297+
build_cmd = conf.get("build_cmd", "${build_envs} make -j32 ${config_targets}")
298+
}
294299
else{
295300
setup_cmd = conf.get("setup_cmd", "${cmake_envs} cmake ${setup_args} .. ")
296301
build_cmd = conf.get("build_cmd", "${build_envs} make -j${nt} ${config_targets}")

example/01_gemm/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,6 @@ add_example_dependencies(example_gemm_xdl example_gemm_xdl_fp16_v3)
2929
add_example_executable(example_gemm_xdl_fp8_v3 gemm_xdl_fp8_v3.cpp)
3030
add_example_dependencies(example_gemm_xdl example_gemm_xdl_fp8_v3)
3131
add_example_executable(example_gemm_xdl_fp16_fp8_v3 gemm_xdl_fp16_fp8_v3.cpp)
32-
add_example_executable(example_gemm_xdl_fp16_pk_i4_v3 gemm_xdl_fp16_pk_i4_v3.cpp)
33-
add_example_executable(example_gemm_xdl_fp16_pk_i4_v3_b_scale gemm_xdl_fp16_pk_i4_v3_b_scale.cpp)
34-
add_example_executable(example_gemm_xdl_bf16_pk_i4_v3 gemm_xdl_bf16_pk_i4_v3.cpp)
3532
add_example_dependencies(example_gemm_xdl example_gemm_xdl_fp16_fp8_v3)
3633
add_example_executable(example_gemm_xdl_bf16_v3 gemm_xdl_bf16_v3.cpp)
3734
add_example_dependencies(example_gemm_xdl example_gemm_xdl_bf16_v3)
@@ -40,6 +37,9 @@ list(APPEND gpu_list gfx942 gfx950)
4037
set(target 0)
4138
foreach(gpu IN LISTS GPU_TARGETS)
4239
if(gpu IN_LIST gpu_list AND target EQUAL 0)
40+
add_example_executable(example_gemm_xdl_fp16_pk_i4_v3 gemm_xdl_fp16_pk_i4_v3.cpp)
41+
add_example_executable(example_gemm_xdl_fp16_pk_i4_v3_b_scale gemm_xdl_fp16_pk_i4_v3_b_scale.cpp)
42+
add_example_executable(example_gemm_xdl_bf16_pk_i4_v3 gemm_xdl_bf16_pk_i4_v3.cpp)
4343
add_example_executable(example_gemm_xdl_fp8_pk_i4_bpreshuffle_v3 gemm_xdl_fp8_pk_i4_bpreshuffle_v3.cpp)
4444
add_example_executable(example_gemm_xdl_fp8_pk_i4_v3 gemm_xdl_fp8_pk_i4_v3.cpp)
4545
set(target 1)

example/01_gemm/gemm_xdl_bf16_pk_i4_v3.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,8 @@ bool run_gemm(const ProblemType& problem_size, const ExecutionConfig& config)
192192
b_element_op,
193193
c_element_op);
194194

195-
if(!gemm.IsSupportedArgument(argument))
195+
if(!gemm.IsSupportedArgument(argument) || ck::get_device_name() != "gfx942" ||
196+
ck::get_device_name() != "gfx950")
196197
{
197198
std::cerr << gemm.GetTypeString() << " does not support this problem" << std::endl;
198199

example/01_gemm/gemm_xdl_fp16_pk_i4_v3.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,8 @@ bool run_gemm(const ProblemType& problem_size, const ExecutionConfig& config)
242242
b_element_op,
243243
c_element_op);
244244

245-
if(!gemm.IsSupportedArgument(argument))
245+
if(!gemm.IsSupportedArgument(argument) || ck::get_device_name() != "gfx942" ||
246+
ck::get_device_name() != "gfx950")
246247
{
247248
std::cerr << gemm.GetTypeString() << " does not support this problem" << std::endl;
248249

example/01_gemm/gemm_xdl_fp16_pk_i4_v3_b_scale.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,8 @@ bool run_gemm(const ProblemType& problem_size, const ExecutionConfig& config)
274274
b_element_op,
275275
c_element_op);
276276

277-
if(!gemm.IsSupportedArgument(argument))
277+
if(!gemm.IsSupportedArgument(argument) || ck::get_device_name() != "gfx942" ||
278+
ck::get_device_name() != "gfx950")
278279
{
279280
std::cerr << gemm.GetTypeString() << " does not support this problem" << std::endl;
280281

example/65_gemm_multiply_multiply/moe_gemm1_xdl_pk_i4.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -440,7 +440,8 @@ int main(int argc, char* argv[])
440440
b_element_op,
441441
cde_element_op);
442442

443-
if(!device_op.IsSupportedArgument(argument))
443+
if(!device_op.IsSupportedArgument(argument) || ck::get_device_name() != "gfx942" ||
444+
ck::get_device_name() != "gfx950")
444445
{
445446
throw std::runtime_error(
446447
"wrong! device_gemm with the specified compilation parameters does "

example/65_gemm_multiply_multiply/moe_gemm2_xdl_pk_i4.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -407,7 +407,8 @@ int main(int argc, char* argv[])
407407
b_element_op,
408408
cde_element_op);
409409

410-
if(!device_op.IsSupportedArgument(argument))
410+
if(!device_op.IsSupportedArgument(argument) || ck::get_device_name() != "gfx942" ||
411+
ck::get_device_name() != "gfx950")
411412
{
412413
throw std::runtime_error(
413414
"wrong! device_gemm with the specified compilation parameters does "

example/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -113,14 +113,14 @@ function(add_example_executable EXAMPLE_NAME FILE_NAME)
113113
endforeach()
114114
#only continue if there are some source files left on the list
115115
if(FILE_NAME)
116-
if(FILE_NAME MATCHES "_xdl" AND NOT FILE_NAME MATCHES "_fp8_pk_i4")
116+
if(FILE_NAME MATCHES "_xdl" AND NOT FILE_NAME MATCHES "_pk_i4")
117117
list(REMOVE_ITEM EX_TARGETS gfx900 gfx906 gfx906:xnack- gfx1030 gfx1100 gfx1101 gfx1102 gfx1103 gfx1200 gfx1201 gfx10.3-generic gfx11-generic gfx12-generic)
118118
elseif(FILE_NAME MATCHES "_wmma")
119119
list(REMOVE_ITEM EX_TARGETS gfx900 gfx906 gfx906:xnack- gfx908:xnack+ gfx908:xnack- gfx90a:xnack+ gfx90a:xnack- gfx908 gfx90a gfx942 gfx1030 gfx950)
120120
elseif(FILE_NAME MATCHES "_mx") #only build mx example for gfx950
121121
list(REMOVE_ITEM EX_TARGETS gfx900 gfx906 gfx906:xnack- gfx908:xnack+ gfx908:xnack- gfx90a:xnack+ gfx90a:xnack- gfx908 gfx90a gfx942 gfx1030 gfx1100 gfx1101 gfx1102 gfx1103 gfx1200 gfx1201 gfx10.3-generic gfx11-generic gfx12-generic)
122-
elseif(FILE_NAME MATCHES "_fp8_pk_i4") #only build these examples for gfx942 and gfx950
123-
message("trimming targets for ${FILE_NAME}")
122+
elseif(FILE_NAME MATCHES "_pk_i4") #only build these examples for gfx942 and gfx950
123+
message("trimming targets for ${FILE_NAME}")
124124
list(REMOVE_ITEM EX_TARGETS gfx900 gfx906 gfx906:xnack- gfx908:xnack+ gfx908:xnack- gfx90a:xnack+ gfx90a:xnack- gfx908 gfx90a gfx1030 gfx1100 gfx1101 gfx1102 gfx1103 gfx1200 gfx1201 gfx10.3-generic gfx11-generic gfx12-generic)
125125
endif()
126126
set_source_files_properties(${FILE_NAME} PROPERTIES LANGUAGE HIP)

0 commit comments

Comments
 (0)