mirror of
https://github.com/ROCm/composable_kernel.git
synced 2026-04-19 22:39:03 +00:00
[rocm-libraries] ROCm/rocm-libraries#4361 (commit 37a74ef)
[CK] a bunch of CI fixes. ## Motivation Fixing some of the CK CI issues ## Technical Details fixing paths to dockerfiles and scripts; moving codegen tests to separate stage (collides with main build since you must call cmake from same folder but different options); fixing a couple of clang compilation issues with staging compiler;
This commit is contained in:
committed by
assistant-librarian[bot]
parent
e96beb1f3e
commit
4dd4869fbf
24
Jenkinsfile
vendored
24
Jenkinsfile
vendored
@@ -429,18 +429,18 @@ def buildDocker(install_prefix){
|
||||
echo "Building Docker for ${image_name}"
|
||||
def dockerArgs = "--build-arg PREFIX=${install_prefix} --build-arg CK_SCCACHE='${env.CK_SCCACHE}' --build-arg compiler_version='${params.COMPILER_VERSION}' --build-arg compiler_commit='${params.COMPILER_COMMIT}' --build-arg ROCMVERSION='${params.ROCMVERSION}' "
|
||||
if(params.COMPILER_VERSION == "amd-staging" || params.COMPILER_VERSION == "amd-mainline" || params.COMPILER_COMMIT != ""){
|
||||
dockerArgs = dockerArgs + " --no-cache --build-arg BASE_DOCKER='${base_image_name}' -f Dockerfile.compiler . "
|
||||
dockerArgs = dockerArgs + " --no-cache --build-arg BASE_DOCKER='${base_image_name}' -f projects/composablekernel/Dockerfile.compiler . "
|
||||
}
|
||||
else if(params.RUN_AITER_TESTS){
|
||||
image_name = "${env.CK_DOCKERHUB_PRIVATE}:ck_aiter"
|
||||
dockerArgs = dockerArgs + " --no-cache -f Dockerfile.aiter --build-arg AITER_BRANCH='${params.aiter_branch}' --build-arg CK_AITER_BRANCH='${params.ck_aiter_branch}' . "
|
||||
dockerArgs = dockerArgs + " --no-cache -f projects/composablekernel/Dockerfile.aiter --build-arg AITER_BRANCH='${params.aiter_branch}' --build-arg CK_AITER_BRANCH='${params.ck_aiter_branch}' . "
|
||||
}
|
||||
else if(params.RUN_PYTORCH_TESTS){
|
||||
image_name = "${env.CK_DOCKERHUB}:ck_pytorch"
|
||||
dockerArgs = dockerArgs + " --no-cache -f Dockerfile.pytorch --build-arg CK_PYTORCH_BRANCH='${params.ck_pytorch_branch}' . "
|
||||
dockerArgs = dockerArgs + " --no-cache -f projects/composablekernel/Dockerfile.pytorch --build-arg CK_PYTORCH_BRANCH='${params.ck_pytorch_branch}' . "
|
||||
}
|
||||
else{
|
||||
dockerArgs = dockerArgs + " -f Dockerfile . "
|
||||
dockerArgs = dockerArgs + " -f projects/composablekernel/Dockerfile . "
|
||||
}
|
||||
echo "Build Args: ${dockerArgs}"
|
||||
try{
|
||||
@@ -500,9 +500,10 @@ def build_client_examples(String arch){
|
||||
}
|
||||
|
||||
def build_client_examples_and_codegen_tests(String arch){
|
||||
def cmd = """ cmake -DCMAKE_PREFIX_PATH=/opt/rocm -DCMAKE_CXX_COMPILER="${params.BUILD_COMPILER}" ../codegen && \
|
||||
def cmd = """ cd ../codegen && rm -rf build && mkdir build && cd build && \
|
||||
cmake -DCMAKE_PREFIX_PATH=/opt/rocm -DCMAKE_CXX_COMPILER="${params.BUILD_COMPILER}" .. && \
|
||||
make -j64 check && \
|
||||
cd ../client_example && rm -rf build && mkdir build && cd build && \
|
||||
cd ../../client_example && rm -rf build && mkdir build && cd build && \
|
||||
cmake -DCMAKE_PREFIX_PATH="${env.WORKSPACE}/projects/composablekernel/install;/opt/rocm" \
|
||||
-DGPU_TARGETS="${arch}" \
|
||||
-DCMAKE_CXX_COMPILER="${params.BUILD_COMPILER}" \
|
||||
@@ -511,7 +512,6 @@ def build_client_examples_and_codegen_tests(String arch){
|
||||
return cmd
|
||||
}
|
||||
|
||||
|
||||
def build_and_run_fmha(String arch){
|
||||
def cmd = """ cmake -G Ninja -DCMAKE_PREFIX_PATH="${env.WORKSPACE}/projects/composablekernel/install;/opt/rocm" \
|
||||
-DGPU_TARGETS="${arch}" \
|
||||
@@ -855,7 +855,7 @@ def Build_CK(Map conf=[:]){
|
||||
"""
|
||||
}
|
||||
// run performance tests, stash the logs, results will be processed on the master node
|
||||
dir("script"){
|
||||
dir("projects/composablekernel/script"){
|
||||
if (params.RUN_PERFORMANCE_TESTS){
|
||||
if (params.RUN_FULL_QA && (arch == "gfx90a" || arch == "gfx942")){
|
||||
// run full tests on gfx90a or gfx942
|
||||
@@ -940,7 +940,7 @@ def process_results(Map conf=[:]){
|
||||
withDockerContainer(image: image, args: '--cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v=/var/jenkins/:/var/jenkins') {
|
||||
timeout(time: 15, unit: 'MINUTES'){
|
||||
try{
|
||||
dir("script"){
|
||||
dir("projects/composablekernel/script"){
|
||||
if (params.RUN_CK_TILE_FMHA_TESTS){
|
||||
try{
|
||||
unstash "perf_fmha_log_gfx942"
|
||||
@@ -1288,6 +1288,10 @@ pipeline {
|
||||
name: "RUN_INDUCTOR_TESTS",
|
||||
defaultValue: false,
|
||||
description: "Run inductor codegen tests (default: OFF)")
|
||||
booleanParam(
|
||||
name: "RUN_CODEGEN_TESTS",
|
||||
defaultValue: true,
|
||||
description: "Run codegen tests (default: ON)")
|
||||
booleanParam(
|
||||
name: "RUN_BUILDER_TESTS",
|
||||
defaultValue: true,
|
||||
@@ -1811,7 +1815,7 @@ pipeline {
|
||||
agent{ label rocmnode("gfx90a") }
|
||||
environment{
|
||||
setup_args = """ -DCMAKE_INSTALL_PREFIX=../install -DGPU_TARGETS="gfx90a" -DCK_CXX_STANDARD="17" """
|
||||
execute_args = build_client_examples("gfx90a")
|
||||
execute_args = build_client_examples_and_codegen_tests("gfx90a")
|
||||
}
|
||||
steps{
|
||||
Build_CK_and_Reboot(setup_args: setup_args, config_targets: "install", build_type: 'Release', execute_cmd: execute_args, prefixpath: '/usr/local')
|
||||
|
||||
@@ -70,6 +70,7 @@ set(GTEST_CXX_FLAGS
|
||||
-Wno-float-equal
|
||||
-Wno-lifetime-safety-intra-tu-suggestions
|
||||
-Wno-lifetime-safety-cross-tu-suggestions
|
||||
-Wno-character-conversion
|
||||
)
|
||||
|
||||
if(WIN32)
|
||||
|
||||
@@ -113,7 +113,10 @@ struct BlockwiseGemmXdlops_mx_pipeline_base
|
||||
true>
|
||||
c_thread_buf_;
|
||||
|
||||
__host__ __device__ constexpr auto& GetCThreadBuffer() { return c_thread_buf_; }
|
||||
__host__ __device__ constexpr auto& GetCThreadBuffer() [[clang::lifetimebound]]
|
||||
{
|
||||
return c_thread_buf_;
|
||||
}
|
||||
|
||||
__device__ static auto GetWaveIdx()
|
||||
{
|
||||
|
||||
@@ -191,17 +191,17 @@ class EnhancedNinjaDependencyParser:
|
||||
if any(
|
||||
file_path.startswith(prefix)
|
||||
for prefix in [
|
||||
"include/",
|
||||
"library/",
|
||||
"test/",
|
||||
"example/",
|
||||
"src/",
|
||||
"profiler/",
|
||||
"build/include/",
|
||||
"build/_deps/gtest",
|
||||
"client_example",
|
||||
"codegen",
|
||||
"tile_engine",
|
||||
"projects/composablekernel/include/",
|
||||
"projects/composablekernel/library/",
|
||||
"projects/composablekernel/test/",
|
||||
"projects/composablekernel/example/",
|
||||
"projects/composablekernel/src/",
|
||||
"projects/composablekernel/profiler/",
|
||||
"projects/composablekernel/build/include/",
|
||||
"projects/composablekernel/build/_deps/gtest",
|
||||
"projects/composablekernel/client_example",
|
||||
"projects/composablekernel/codegen",
|
||||
"projects/composablekernel/tile_engine",
|
||||
]
|
||||
):
|
||||
return True
|
||||
|
||||
Reference in New Issue
Block a user