From abcb5dc0e3480811da7d8f18d3ca904d6e1a2db7 Mon Sep 17 00:00:00 2001 From: David Galiffi Date: Tue, 10 Dec 2024 14:35:02 -0500 Subject: [PATCH] Add installers for rocm-6.3 and rhel-9.5 and update installer script template (#50) * Add installers for rocm-6.3 and rhel-9.5 * Updated the template "rocprof-sys-install.py.in". Fixed the installer for the "rocm-x.y.z" style tags. --------- Signed-off-by: David Galiffi [ROCm/rocprofiler-systems commit: 7e2242414ccbee021f47f2f8b26c0655dc95129f] --- .../.github/workflows/containers.yml | 37 ++++++++++++++++--- .../.github/workflows/cpack.yml | 37 ++++++++++++------- .../.github/workflows/redhat.yml | 4 +- .../cmake/Templates/rocprof-sys-install.py.in | 3 +- .../scripts/write-rocprof-sys-install.cmake | 32 ++++++++++++++-- 5 files changed, 87 insertions(+), 26 deletions(-) diff --git a/projects/rocprofiler-systems/.github/workflows/containers.yml b/projects/rocprofiler-systems/.github/workflows/containers.yml index f5ff05f0ae..cf57d613ac 100644 --- a/projects/rocprofiler-systems/.github/workflows/containers.yml +++ b/projects/rocprofiler-systems/.github/workflows/containers.yml @@ -91,6 +91,9 @@ jobs: - os-distro: "ubuntu" os-version: "20.04" rocm-version: "6.2" + - os-distro: "ubuntu" + os-version: "20.04" + rocm-version: "6.3" # ubuntu 22.04 - os-distro: "ubuntu" os-version: "22.04" @@ -98,6 +101,9 @@ jobs: - os-distro: "ubuntu" os-version: "22.04" rocm-version: "6.2" + - os-distro: "ubuntu" + os-version: "22.04" + rocm-version: "6.3" # opensuse 15.5 - os-distro: "opensuse" os-version: "15.5" @@ -105,6 +111,9 @@ jobs: - os-distro: "opensuse" os-version: "15.5" rocm-version: "6.2" + - os-distro: "opensuse" + os-version: "15.5" + rocm-version: "6.3" # opensuse 15.6 - os-distro: "opensuse" os-version: "15.6" @@ -112,12 +121,15 @@ jobs: - os-distro: "opensuse" os-version: "15.6" rocm-version: "6.2" - # RHEL 8.8 + - os-distro: "opensuse" + os-version: "15.6" + rocm-version: "6.3" + # RHEL 8.9 - os-distro: "rhel" - os-version: "8.8" + os-version: "8.9" rocm-version: "0.0" - os-distro: "rhel" - os-version: "8.8" + os-version: "8.9" rocm-version: "6.2" # RHEL 8.10 - os-distro: "rhel" @@ -126,12 +138,15 @@ jobs: - os-distro: "rhel" os-version: "8.10" rocm-version: "6.2" - # RHEL 9.2 - os-distro: "rhel" - os-version: "9.2" + os-version: "8.10" + rocm-version: "6.3" + # RHEL 9.3 + - os-distro: "rhel" + os-version: "9.3" rocm-version: "0.0" - os-distro: "rhel" - os-version: "9.2" + os-version: "9.3" rocm-version: "6.2" # RHEL 9.4 - os-distro: "rhel" @@ -140,6 +155,16 @@ jobs: - os-distro: "rhel" os-version: "9.4" rocm-version: "6.2" + - os-distro: "rhel" + os-version: "9.4" + rocm-version: "6.3" + # RHEL 9.5 + - os-distro: "rhel" + os-version: "9.5" + rocm-version: "0.0" + - os-distro: "rhel" + os-version: "9.5" + rocm-version: "6.3" steps: - uses: actions/checkout@v4 diff --git a/projects/rocprofiler-systems/.github/workflows/cpack.yml b/projects/rocprofiler-systems/.github/workflows/cpack.yml index 263d5101be..29f20ab7c0 100644 --- a/projects/rocprofiler-systems/.github/workflows/cpack.yml +++ b/projects/rocprofiler-systems/.github/workflows/cpack.yml @@ -40,6 +40,9 @@ jobs: - os-distro: "ubuntu" os-version: "20.04" rocm-version: "6.2" + - os-distro: "ubuntu" + os-version: "20.04" + rocm-version: "6.3" # ubuntu 22.04 - os-distro: "ubuntu" os-version: "22.04" @@ -47,6 +50,9 @@ jobs: - os-distro: "ubuntu" os-version: "22.04" rocm-version: "6.2" + - os-distro: "ubuntu" + os-version: "22.04" + rocm-version: "6.3" # opensuse 15.5 - os-distro: "opensuse" os-version: "15.5" @@ -54,6 +60,9 @@ jobs: - os-distro: "opensuse" os-version: "15.5" rocm-version: "6.2" + - os-distro: "opensuse" + os-version: "15.5" + rocm-version: "6.3" # opensuse 15.6 - os-distro: "opensuse" os-version: "15.6" @@ -61,13 +70,9 @@ jobs: - os-distro: "opensuse" os-version: "15.6" rocm-version: "6.2" - # RHEL 8.8 - - os-distro: "rhel" - os-version: "8.8" - rocm-version: "0.0" - - os-distro: "rhel" - os-version: "8.8" - rocm-version: "6.2" + - os-distro: "opensuse" + os-version: "15.6" + rocm-version: "6.3" # RHEL 8.9 - os-distro: "rhel" os-version: "8.9" @@ -82,13 +87,9 @@ jobs: - os-distro: "rhel" os-version: "8.10" rocm-version: "6.2" - # RHEL 9.2 - os-distro: "rhel" - os-version: "9.2" - rocm-version: "0.0" - - os-distro: "rhel" - os-version: "9.2" - rocm-version: "6.2" + os-version: "8.10" + rocm-version: "6.3" # RHEL 9.3 - os-distro: "rhel" os-version: "9.3" @@ -103,6 +104,16 @@ jobs: - os-distro: "rhel" os-version: "9.4" rocm-version: "6.2" + - os-distro: "rhel" + os-version: "9.4" + rocm-version: "6.3" + # RHEL 9.5 + - os-distro: "rhel" + os-version: "9.5" + rocm-version: "0.0" + - os-distro: "rhel" + os-version: "9.5" + rocm-version: "6.3" steps: - name: Free Disk Space diff --git a/projects/rocprofiler-systems/.github/workflows/redhat.yml b/projects/rocprofiler-systems/.github/workflows/redhat.yml index aee533bf03..0e9491760d 100644 --- a/projects/rocprofiler-systems/.github/workflows/redhat.yml +++ b/projects/rocprofiler-systems/.github/workflows/redhat.yml @@ -46,8 +46,8 @@ jobs: fail-fast: false matrix: compiler: ['g++'] - os-release: [ '8.8', '8.10', '9.2', '9.4' ] - rocm-version: [ '0.0', '6.2' ] + os-release: [ '8.10', '9.2', '9.4' ] + rocm-version: [ '0.0', '6.2', '6.3' ] build-type: ['Release'] steps: diff --git a/projects/rocprofiler-systems/cmake/Templates/rocprof-sys-install.py.in b/projects/rocprofiler-systems/cmake/Templates/rocprof-sys-install.py.in index 6d07cd5a45..364d2612ff 100755 --- a/projects/rocprofiler-systems/cmake/Templates/rocprof-sys-install.py.in +++ b/projects/rocprofiler-systems/cmake/Templates/rocprof-sys-install.py.in @@ -11,6 +11,7 @@ from urllib import request from urllib.error import HTTPError rocprofsys_version = "@ROCPROFSYS_VERSION@" +rocprofsys_git_tag = "@ROCPROFSYS_GIT_TAG@" _rocm_path = os.environ.get("ROCM_PATH", "/opt/rocm") _rocm_version = None @@ -232,7 +233,7 @@ if __name__ == "__main__": ) script = f"rocprofiler-systems-{rocprofsys_version}-{os_distrib}-{os_version}{rocm_version}{extensions}.sh" - url = f"https://github.com/ROCm/rocprofiler-systems/releases/download/v{rocprofsys_version}/{script}" + url = f"https://github.com/ROCm/rocprofiler-systems/releases/download/{rocprofsys_git_tag}/{script}" download_dir = ( tempfile.mkdtemp(prefix="rocprof-sys-install-") if args.download_path is None diff --git a/projects/rocprofiler-systems/scripts/write-rocprof-sys-install.cmake b/projects/rocprofiler-systems/scripts/write-rocprof-sys-install.cmake index 9552722a71..a8ce50e09a 100644 --- a/projects/rocprofiler-systems/scripts/write-rocprof-sys-install.cmake +++ b/projects/rocprofiler-systems/scripts/write-rocprof-sys-install.cmake @@ -7,14 +7,38 @@ if(NOT DEFINED ROCPROFSYS_VERSION) ROCPROFSYS_VERSION "${FULL_VERSION_STRING}") endif() +find_package(Git) + +if(Git_FOUND AND EXISTS ".git") + execute_process( + COMMAND ${GIT_EXECUTABLE} describe --tags + OUTPUT_VARIABLE ROCPROFSYS_GIT_TAG + OUTPUT_STRIP_TRAILING_WHITESPACE + RESULT_VARIABLE _GIT_DESCRIBE_RESULT + ERROR_QUIET) + if(NOT _GIT_DESCRIBE_RESULT EQUAL 0) + execute_process( + COMMAND ${GIT_EXECUTABLE} describe + OUTPUT_VARIABLE ROCPROFSYS_GIT_TAG + OUTPUT_STRIP_TRAILING_WHITESPACE + RESULT_VARIABLE _GIT_DESCRIBE_RESULT + ERROR_QUIET) + endif() +else() + message( + STATUS + "Git not found or .git directory not found; using version ${ROCPROFSYS_VERSION}" + ) + set(GIT_DESCRIBE "v${ROCPROFSYS_VERSION}") +endif() + if(NOT DEFINED OUTPUT_DIR) set(OUTPUT_DIR ${CMAKE_CURRENT_LIST_DIR}) endif() -message( - STATUS - "Writing ${OUTPUT_DIR}/rocprofiler-systems-install.py for rocprofiler-systems v${ROCPROFSYS_VERSION}" - ) +message(STATUS "Writing ${OUTPUT_DIR}/rocprofiler-systems-install.py.") +message(STATUS "rocprofiler-systems version: ${ROCPROFSYS_VERSION}.") +message(STATUS "rocprofiler-systems git describe: ${ROCPROFSYS_GIT_TAG}") configure_file(${CMAKE_CURRENT_LIST_DIR}/../cmake/Templates/rocprof-sys-install.py.in ${OUTPUT_DIR}/rocprofiler-systems-install.py @ONLY)