Skip to content

Commit

Permalink
comgr-default-2(01) Partially revert "[HIP][COMGR] Abstain from COMGR…
Browse files Browse the repository at this point in the history
… by default for HIP backend (revert #1253).." Keep regression test for issue-internal #4

This reverts commit edd87ed.
  • Loading branch information
atamazov committed Nov 12, 2021
1 parent 387dbd8 commit 14d6ab0
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 15 deletions.
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -321,7 +321,7 @@ else()
endif()
endif()

set_var_to_condition(MIOPEN_USE_COMGR_DEFAULT MIOPEN_EMBED_BUILD)
set_var_to_condition(MIOPEN_USE_COMGR_DEFAULT (NOT DEFINED MIOPEN_BACKEND_OPENCL) AND (NOT DEFINED MIOPEN_MODE_NOGPU))
option(MIOPEN_USE_COMGR "Use comgr to build kernels instead of offline tools" ${MIOPEN_USE_COMGR_DEFAULT})

if(MIOPEN_USE_MLIR)
Expand Down
32 changes: 18 additions & 14 deletions Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,9 @@ def cmake_build(Map conf=[:]){
cd build
"""
def setup_cmd = conf.get("setup_cmd", "${cmake_envs} cmake ${setup_args} .. ")
def build_cmd = conf.get("build_cmd", "${build_envs} dumb-init make -j\$(nproc) ${config_targets}")
// WORKAROUND_SWDEV_290754
// It seems like this W/A is not required since 4.5.
def build_cmd = conf.get("build_cmd", "LLVM_PATH=/opt/rocm/llvm ${build_envs} dumb-init make -j\$(nproc) ${config_targets}")
def execute_cmd = conf.get("execute_cmd", "")

def cmd = conf.get("cmd", """
Expand Down Expand Up @@ -219,7 +221,7 @@ def CheckDeserializePerfDb(Map conf=[:]){
/// * "GCC" is the default for OpenCL backend.
/// * The default compiler is usually not specified.
/// BuildType := { Release* | Debug | Install } [ BuildTypeModifier ]
/// * BuildTypeModifier := { COMGR | Embedded | Static | Normal-Find | Fast-Find
/// * BuildTypeModifier := { NOCOMGR | Embedded | Static | Normal-Find | Fast-Find
/// MLIR | Tensile | Tensile-Latest | Package | ... }
/// TestSet := { All | Smoke* } [ Codecov ]
/// * "All" corresponds to "cmake -DMIOPEN_TEST_ALL=On".
Expand Down Expand Up @@ -333,7 +335,8 @@ pipeline {
Tensile_setup = " -DMIOPEN_TEST_MIOTENSILE=ON -DMIOPEN_USE_MIOPENTENSILE=ON -DMIOPEN_USE_ROCBLAS=OFF"
Smoke_targets = "check doc MIOpenDriver"
MLIR_flags = " -DMIOPEN_USE_MLIR=On"
COMGR_flags = " -DMIOPEN_USE_COMGR=On"
NOCOMGR_flags = " -DMIOPEN_USE_COMGR=Off"
WORKAROUND_ISSUE_1257_flags = " -DMIOPEN_USE_COMGR=Off"
}
stages{
stage("Static checks") {
Expand Down Expand Up @@ -514,18 +517,18 @@ pipeline {
expression { params.BUILD_SMOKE_AUX1 && params.DATATYPE_FP32 }
}
parallel{
stage('Fp32 Hip Debug COMGR') {
stage('Fp32 Hip Debug NOCOMGR') {
when {
beforeAgent true
expression { params.TARGET_VEGA20 || params.TARGET_VEGA10 }
}
agent{ label rocmnode("vega") }
environment{
// See SWDEV-290754 for why LLVM_PATH is required.
COMGR_build_cmd = "LLVM_PATH=/opt/rocm/llvm CTEST_PARALLEL_LEVEL=2 MIOPEN_CONV_PRECISE_ROCBLAS_TIMING=0 MIOPEN_LOG_LEVEL=5 make -j\$(nproc) check"
// Can be removed altogether with when WORKAROUND_SWDEV_290754.
NOCOMGR_build_cmd = "CTEST_PARALLEL_LEVEL=4 MIOPEN_CONV_PRECISE_ROCBLAS_TIMING=0 MIOPEN_LOG_LEVEL=5 make -j\$(nproc) check"
}
steps{
buildHipClangJobAndReboot( build_type: 'debug', setup_flags: COMGR_flags, build_cmd: COMGR_build_cmd, test_flags: ' --verbose ')
buildHipClangJobAndReboot( build_type: 'debug', setup_flags: NOCOMGR_flags, build_cmd: NOCOMGR_build_cmd, test_flags: ' --verbose ')
}
}
stage('Fp32 Hip Debug Embedded Vega20') {
Expand Down Expand Up @@ -626,18 +629,18 @@ pipeline {
buildHipClangJobAndReboot(setup_flags: MLIR_flags + Fp16_flags, build_env: extra_log_env, config_targets: Smoke_targets, test_flags: ' --verbose ', gpu_arch: "gfx908", mlir_build: "ON")
}
}
stage('Fp32 Hip MLIR gfx908 COMGR') {
stage('Fp32 Hip MLIR gfx908 NOCOMGR') {
when {
beforeAgent true
expression { params.TARGET_GFX908 && params.DATATYPE_FP32 }
}
agent{ label rocmnode("gfx908") }
environment{
// See SWDEV-290754 for why LLVM_PATH is required.
COMGR_build_cmd = "LLVM_PATH=/opt/rocm/llvm CTEST_PARALLEL_LEVEL=2 MIOPEN_CONV_PRECISE_ROCBLAS_TIMING=0 MIOPEN_LOG_LEVEL=5 make -j\$(nproc) check"
// Can be removed altogether with when WORKAROUND_SWDEV_290754.
NOCOMGR_build_cmd = "CTEST_PARALLEL_LEVEL=4 MIOPEN_CONV_PRECISE_ROCBLAS_TIMING=0 MIOPEN_LOG_LEVEL=5 make -j\$(nproc) check"
}
steps{
buildHipClangJobAndReboot(setup_flags: MLIR_flags + COMGR_flags, build_cmd: COMGR_build_cmd, build_env: extra_log_env, config_targets: Smoke_targets, test_flags: ' --verbose ', gpu_arch: "gfx908", mlir_build: "ON")
buildHipClangJobAndReboot(setup_flags: MLIR_flags + NOCOMGR_flags, build_cmd: NOCOMGR_build_cmd, build_env: extra_log_env, config_targets: Smoke_targets, test_flags: ' --verbose ', gpu_arch: "gfx908", mlir_build: "ON")
}
}
stage('Fp32 OpenCL MLIR gfx908') {
Expand Down Expand Up @@ -863,8 +866,9 @@ pipeline {
}
environment{
WORKAROUND_iGemm_936 = " MIOPEN_DEBUG_CONV_IMPLICIT_GEMM_HIP_FWD_V4R1=0"
// WORKAROUND_ISSUE_1148:
Navi21_build_cmd = "CTEST_PARALLEL_LEVEL=2 MIOPEN_CONV_PRECISE_ROCBLAS_TIMING=0 MIOPEN_LOG_LEVEL=5 make -j\$(nproc) check"
// WORKAROUND_ISSUE_1148: "CTEST_PARALLEL_LEVEL=2"
// WORKAROUND_SWDEV_290754: "LLVM_PATH=/opt/rocm/llvm"
Navi21_build_cmd = "LLVM_PATH=/opt/rocm/llvm CTEST_PARALLEL_LEVEL=2 MIOPEN_CONV_PRECISE_ROCBLAS_TIMING=0 MIOPEN_LOG_LEVEL=5 make -j\$(nproc) check"
}
parallel{
stage('Fp32 Hip All gfx908') {
Expand Down Expand Up @@ -954,7 +958,7 @@ pipeline {
}
agent{ label rocmnode("gfx90a") }
steps{
buildHipClangJobAndReboot(setup_flags: Full_test + Fp16_flags, build_env: WORKAROUND_iGemm_936, build_install: "true", gpu_arch: "gfx90a:xnack-")
buildHipClangJobAndReboot(setup_flags: Full_test + Fp16_flags + WORKAROUND_ISSUE_1257_flags, build_env: WORKAROUND_iGemm_936, build_install: "true", gpu_arch: "gfx90a:xnack-")
}
}
}
Expand Down

0 comments on commit 14d6ab0

Please sign in to comment.