Skip to content

Commit 55411a8

Browse files
authored
Merge branch 'develop' into barkocot/fix-basic-pipelines
2 parents 9042556 + 0727e85 commit 55411a8

90 files changed

Lines changed: 6732 additions & 1687 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,3 +92,7 @@ test_data/*
9292
# The experimental/builder directory should be tracked despite matching build*
9393
!experimental/builder
9494
!experimental/builder/**
95+
experimental/grouped_convolution_tile_instances/instances/*
96+
!experimental/grouped_convolution_tile_instances/instances/*.in
97+
!experimental/grouped_convolution_tile_instances/instances/*.inc
98+
experimental/grouped_convolution_tile_instances/*.inc

CMakeLists.txt

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -704,6 +704,11 @@ option(BUILD_MHA_LIB "Build the static library for flash attention" OFF)
704704

705705
add_subdirectory(library)
706706

707+
if (CK_EXPERIMENTAL_BUILDER)
708+
add_subdirectory(experimental/builder)
709+
add_subdirectory(experimental/grouped_convolution_tile_instances)
710+
endif()
711+
707712
if(NOT GPU_ARCHS AND USER_GPU_TARGETS AND NOT MIOPEN_REQ_LIBS_ONLY)
708713
rocm_package_setup_component(tests
709714
LIBRARY_NAME composablekernel
@@ -735,10 +740,6 @@ if (NOT MIOPEN_REQ_LIBS_ONLY)
735740
add_subdirectory(profiler)
736741
endif()
737742

738-
if (CK_EXPERIMENTAL_BUILDER)
739-
add_subdirectory(experimental/builder)
740-
endif()
741-
742743
if(CK_USE_CODEGEN AND (SUPPORTED_GPU_TARGETS MATCHES "gfx9" OR GPU_ARCHS))
743744
add_subdirectory(codegen)
744745
endif()

Jenkinsfile

Lines changed: 49 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -580,7 +580,7 @@ def cmake_build(Map conf=[:]){
580580
if (params.NINJA_BUILD_TRACE) {
581581
echo "running ninja build trace"
582582
}
583-
if (params.RUN_BUILDER_TESTS && !setup_args.contains("-DCK_CXX_STANDARD=") && !setup_args.contains("gfx10") && !setup_args.contains("gfx11")) {
583+
if ((params.RUN_BUILDER_TESTS || params.RUN_FULL_CONV_TILE_TESTS) && !setup_args.contains("-DCK_CXX_STANDARD=") && !setup_args.contains("gfx10") && !setup_args.contains("gfx11")) {
584584
setup_args = " -D CK_EXPERIMENTAL_BUILDER=ON " + setup_args
585585
}
586586
setup_cmd = conf.get(
@@ -1091,7 +1091,7 @@ CRON_SETTINGS = BRANCH_NAME == "develop" ? '''0 23 * * * % RUN_FULL_QA=true;RUN_
10911091
0 19 * * * % BUILD_DOCKER=true;COMPILER_VERSION=amd-staging;BUILD_COMPILER=/llvm-project/build/bin/clang++;USE_SCCACHE=false;NINJA_BUILD_TRACE=true;RUN_ALL_UNIT_TESTS=true;FORCE_CI=true
10921092
0 17 * * * % BUILD_DOCKER=true;COMPILER_VERSION=amd-mainline;BUILD_COMPILER=/llvm-project/build/bin/clang++;USE_SCCACHE=false;NINJA_BUILD_TRACE=true;RUN_ALL_UNIT_TESTS=true;FORCE_CI=true
10931093
0 15 * * * % BUILD_INSTANCES_ONLY=true;USE_SCCACHE=false;NINJA_BUILD_TRACE=true;FORCE_CI=true
1094-
0 13 * * * % RUN_AITER_TESTS=true;BUILD_LEGACY_OS=true;USE_SCCACHE=false;RUN_PERFORMANCE_TESTS=false;FORCE_CI=true
1094+
0 13 * * * % RUN_FULL_CONV_TILE_TESTS=true;RUN_AITER_TESTS=true;BUILD_LEGACY_OS=true;USE_SCCACHE=false;RUN_PERFORMANCE_TESTS=false;FORCE_CI=true
10951095
0 11 * * * % RUN_PYTORCH_TESTS=true;RUN_CODEGEN_TESTS=false;USE_SCCACHE=false;RUN_PERFORMANCE_TESTS=false;BUILD_GFX101=false;BUILD_GFX103=false;BUILD_GFX11=false;BUILD_GFX12=false;BUILD_GFX90A=false;FORCE_CI=true''' : ""
10961096

10971097
pipeline {
@@ -1255,6 +1255,10 @@ pipeline {
12551255
name: "RUN_AITER_TESTS",
12561256
defaultValue: false,
12571257
description: "Run AITER tests with latest CK develop branch (default: OFF)")
1258+
booleanParam(
1259+
name: "RUN_FULL_CONV_TILE_TESTS",
1260+
defaultValue: false,
1261+
description: "Run CK Tile grouped convolution tests with latest CK develop branch (default: OFF)")
12581262
string(
12591263
name: 'aiter_branch',
12601264
defaultValue: 'main',
@@ -1318,21 +1322,15 @@ pipeline {
13181322
agent{ label rocmnode("nogpu") }
13191323
environment{
13201324
setup_args = "NO_CK_BUILD"
1321-
execute_cmd = "(cd .. && git ls-files \'*.h\' \
1322-
\'*.hpp\' \
1323-
\'*.cpp\' \
1324-
\'*.h.in\' \
1325-
\'*.hpp.in\' \
1326-
\'*.cpp.in\' \
1327-
\'*.cl\' \
1328-
| grep -v 'build/' \
1329-
| grep -v 'include/rapidjson' \
1330-
| xargs -n 1 -P 1 -I{} -t sh -c \'clang-format-18 -style=file {} | diff - {}\') && \
1325+
execute_cmd = """cd .. && \
1326+
find . -type f \\( -name '*.h' -o -name '*.hpp' -o -name '*.cpp' -o -name '*.h.in' -o -name '*.hpp.in' -o -name '*.cpp.in' -o -name '*.cl' \\) \
1327+
-not -path '*/build/*' -not -path '*/include/rapidjson/*' | \
1328+
xargs -P 8 -I{} sh -c 'clang-format-18 -style=file {} | diff -u - {} || (echo "ERROR: {} needs formatting" && exit 1)' && \
13311329
/cppcheck/build/bin/cppcheck ../* -v -j \$(nproc) -I ../include -I ../profiler/include -I ../library/include \
13321330
-D CK_ENABLE_FP64 -D CK_ENABLE_FP32 -D CK_ENABLE_FP16 -D CK_ENABLE_FP8 -D CK_ENABLE_BF16 -D CK_ENABLE_BF8 -D CK_ENABLE_INT8 \
13331331
-D __gfx908__ -D __gfx90a__ -D __gfx942__ -D __gfx1030__ -D __gfx1100__ -D __gfx1101__ -D __gfx1102__ \
13341332
-U __gfx803__ -U __gfx900__ -U __gfx906__ -U CK_EXPERIMENTAL_BIT_INT_EXTENSION_INT4 \
1335-
--file-filter=*.cpp --force --enable=all --output-file=ck_cppcheck.log"
1333+
--file-filter=*.cpp --force --enable=all --output-file=ck_cppcheck.log"""
13361334
}
13371335
steps{
13381336
buildHipClangJobAndReboot(setup_args:setup_args, setup_cmd: "", build_cmd: "", execute_cmd: execute_cmd)
@@ -1348,17 +1346,10 @@ pipeline {
13481346
agent{ label rocmnode("nogpu") }
13491347
environment{
13501348
setup_args = "NO_CK_BUILD"
1351-
execute_cmd = "(cd .. && git ls-files \
1352-
\'*.h\' \
1353-
\'*.hpp\' \
1354-
\'*.cpp\' \
1355-
\'*.h.in\' \
1356-
\'*.hpp.in\' \
1357-
\'*.cpp.in\' \
1358-
\'*.cl\' \
1359-
| grep -v 'build/' \
1360-
| grep -v 'include/rapidjson' \
1361-
| xargs -n 1 -P 1 -I{} -t sh -c \'clang-format-18 -style=file {} | diff - {}\')"
1349+
execute_cmd = """cd .. && \
1350+
find . -type f \\( -name '*.h' -o -name '*.hpp' -o -name '*.cpp' -o -name '*.h.in' -o -name '*.hpp.in' -o -name '*.cpp.in' -o -name '*.cl' \\) \
1351+
-not -path '*/build/*' -not -path '*/include/rapidjson/*' | \
1352+
xargs -P 8 -I{} sh -c 'clang-format-18 -style=file {} | diff -u - {} || (echo "ERROR: {} needs formatting" && exit 1)'"""
13621353
}
13631354
steps{
13641355
buildHipClangJobAndReboot(setup_args:setup_args, setup_cmd: "", build_cmd: "", execute_cmd: execute_cmd)
@@ -1423,6 +1414,36 @@ pipeline {
14231414
}
14241415
}
14251416
}
1417+
stage("Run Full Grouped Conv Tile Tests")
1418+
{
1419+
when {
1420+
beforeAgent true
1421+
expression { env.SHOULD_RUN_CI.toBoolean() }
1422+
}
1423+
parallel
1424+
{
1425+
stage("Run Full Grouped Conv Tile Tests on gfx90a")
1426+
{
1427+
when {
1428+
beforeAgent true
1429+
expression { params.RUN_FULL_CONV_TILE_TESTS.toBoolean() }
1430+
}
1431+
agent{ label rocmnode("gfx90a")}
1432+
environment{
1433+
setup_args = "NO_CK_BUILD"
1434+
execute_args = """ python3 ../experimental/builder/src/generate_instances.py --mode=profiler && \
1435+
../script/cmake-ck-dev.sh ../ gfx90a && \
1436+
make -j64 test_grouped_convnd_fwd_tile && \
1437+
./bin/test_grouped_convnd_fwd_tile"""
1438+
}
1439+
steps{
1440+
// TODO: Reenable after the instance fixes
1441+
// buildHipClangJobAndReboot(setup_args:setup_args, build_type: 'Release', execute_cmd: execute_args)
1442+
cleanWs()
1443+
}
1444+
}
1445+
}
1446+
}
14261447
stage("Run Grouped Conv Large Case Tests")
14271448
{
14281449
when {
@@ -1731,7 +1752,10 @@ pipeline {
17311752
}
17321753
agent{ label rocmnode("gfx90a") }
17331754
environment{
1734-
setup_args = """ -DGPU_TARGETS="gfx942" -DCK_USE_ALTERNATIVE_PYTHON=/opt/Python-3.8.13/bin/python3.8 """
1755+
// SLES15 is a legacy platform with limited C++20 ecosystem support (older system libraries,
1756+
// standard library implementation). While the ROCm compiler supports C++20, the experimental
1757+
// CK Builder requires full C++20 feature support that does not be reliably available on SLES15.
1758+
setup_args = """ -DGPU_TARGETS="gfx942" -DCK_USE_ALTERNATIVE_PYTHON=/opt/Python-3.8.13/bin/python3.8 -DCK_EXPERIMENTAL_BUILDER=OFF """
17351759
execute_args = " "
17361760
}
17371761
steps{

0 commit comments

Comments
 (0)