Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Jenkins][Tests] Add stage with -DMIOPEN_USE_COMPOSABLEKERNEL=Off after #2517 #2630. #2631

Merged
merged 7 commits into from
Dec 21, 2023
20 changes: 19 additions & 1 deletion Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -406,7 +406,7 @@ def CheckPerfDbValid(Map conf=[:]){
/// * The default compiler is usually not specified.
/// BuildType := { Release* | Debug | Install } [ BuildTypeModifier ]
/// * BuildTypeModifier := { NOCOMGR | Embedded | Static | Normal-Find | Fast-Find
/// CK | NOMLIR | Tensile | Tensile-Latest | Package | ... }
/// NOCK | NOMLIR | Tensile | Tensile-Latest | Package | ... }
/// TestSet := { All | Smoke* | Performance Dataset } [ Codecov ]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
/// TestSet := { All | Smoke* | Performance Dataset } [ Codecov ]
/// TestSet := { All | Smoke* | <Performance Dataset> | Build-only } [ Codecov ]

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

/// * "All" corresponds to "cmake -DMIOPEN_TEST_ALL=On".
/// * "Smoke" (-DMIOPEN_TEST_ALL=Off) is the default and usually not specified.
Expand Down Expand Up @@ -533,6 +533,7 @@ pipeline {
Smoke_targets = " check MIOpenDriver"
NOCOMGR_flags = " -DMIOPEN_USE_COMGR=Off"
NOMLIR_flags = " -DMIOPEN_USE_MLIR=Off"
NOCK_flags = " -DMIOPEN_USE_COMPOSABLEKERNEL=Off"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[R] Used only once and complicates the source.

Suggested change
NOCK_flags = " -DMIOPEN_USE_COMPOSABLEKERNEL=Off"

BTW the leading space should not be necessary.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

}
triggers{

Expand Down Expand Up @@ -729,6 +730,23 @@ pipeline {
buildHipClangJobAndReboot( build_type: 'debug', setup_flags: NOMLIR_flags, build_cmd: NOMLIR_build_cmd, test_flags: ' --verbose ')
}
}
stage('Fp32 Hip Debug NOCK AnyGPU Build-Only') {
when {
beforeAgent true
expression { params.TARGET_VEGA20 || params.TARGET_VEGA10 || params.TARGET_GFX908 || params.TARGET_GFX90A }
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[R] Add TARGET_ANYGPU and use it here and everywhere.

Suggested change
expression { params.TARGET_VEGA20 || params.TARGET_VEGA10 || params.TARGET_GFX908 || params.TARGET_GFX90A }
expression { params.TARGET_ANYGPU }

Use case: The user wants to avoid usage of any gfx908 nodes. Clearing the params.TARGET_GFX908 flag does not guarantee this because ANYGPU stages occupy the 1st available node, which could be gfx908. Disabling ANYGPU stages is only possible via disabling Vega, gfx908 and gfx90a targets, which is not what the user wants.

With the new flag, the user can clear params.TARGET_GFX908 and params.TARGET_ANYGPU and obtain the desired effect.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hold off on this one. While we are adding targets, I'll make sure they do not immediately becomes CI bottleneck.

}
options {
retry(2)
}
agent{ label rocmnode("vega || gfx908 || gfx90a") }
environment{
// Can be removed altogether with when WORKAROUND_SWDEV_290754.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Irrelevant comment.

Suggested change
// Can be removed altogether with when WORKAROUND_SWDEV_290754.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done. This whole section of environment is removed too.

NOCK_build_cmd = "make -j\$(nproc)"
}
steps{
buildHipClangJobAndReboot( build_type: 'debug', setup_flags: NOCK_flags, build_cmd: NOCK_build_cmd )
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[R]

Suggested change
NOCK_build_cmd = "make -j\$(nproc)"
}
steps{
buildHipClangJobAndReboot( build_type: 'debug', setup_flags: NOCK_flags, build_cmd: NOCK_build_cmd )
}
steps{
buildHipClangJobAndReboot( build_type: 'debug', setup_flags: "-DMIOPEN_USE_COMPOSABLEKERNEL=Off", config_targets: "")

Empty config_targets leads to the default make command without any targets which is what we want.

Also I recommend renaming config_targets -> make_targets everywhere.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

}
}
stage('Fp32 Hip Debug Embedded Vega20') {
when {
beforeAgent true
Expand Down