Sync rocm-hipamd 5.7.1-3 (universe) from Debian unstable (main)

Bug #2058606 reported by Cory Bloor
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
rocm-hipamd (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Please sync rocm-hipamd 5.7.1-3 (universe) from Debian unstable (main)

This sync requires a FeatureFreeze exception

# Why a new upstream version is necessary

The Ubuntu Noble FeatureFreeze occurred while the ROCm stack on Debian was transitioning from ROCm 5.2 with clang-15 to ROCm 5.7 with clang-17. This has left the ROCm stack on Ubuntu Noble with a few problems:

1. Some packages in noble are based on clang-15 while others are based on clang-17. This mix of versions is not supported upstream and packages that depend on run-time compilation (such as rocfft) appear to be entirely broken. Noble will need to move rocm-hipamd to clang-17 to get all packages on one build toolchain, and the rocm-hipamd version is closely coupled to the compiler version.

2. The current version of rocm-hipamd (5.2.3) in noble is several years old and lacks support for modern hardware, such as the Radeon 7000 series of GPUs. As this is a library used for High-Performance Computing and AI, support for modern hardware is very important.

3. The current rocm-hipamd package depends on the rocm-device-libs binary package, which is not provided by any source package in noble. Ubuntu noble needs to complete the transition from rocm-device-libs to rocm-device-libs-17 and this requires updating rocm-hipamd to a newer upstream version.

4. The upstream ROCm 5.7.1 version was the last release of the ROCm 5 series. While both ROCm 5.2 and ROCm 5.7 are no longer supported upstream, there will be a much larger community using ROCm 5.7. Knowledge sharing within this larger community will be beneficial for the long-term maintenance of the noble release.

5. The versions of ROCm components included on Ubuntu Noble are very inconsistent. This FeatureFreeze exception is one of several that I will be filing in an attempt to get as much of the ROCm stack as possible onto the upstream 5.7.1 release. The narrower the range of versions, the better. Ubuntu does not have significant automated testing for the AMD GPU libraries, so it is safer to use versions that closely correspond to what upstream and Debian are using (as both do significant testing on these libraries).

I will be filing FeatureFreeze exceptions requests for rocrand, rocprim, rocthrust, rocfft, hipfft, rocsparse and hipsparse to get them all onto 5.7.1.

# d/changelog from rocm-hipamd 5.2.3-12 to 5.7.1-3

rocm-hipamd (5.7.1-3) unstable; urgency=medium

  * Add d/p/0035-optional-device-libs-find-package.patch to make
    rocm-device-libs-17 an optional dependency in hip-config.cmake.
  * Add d/p/0036-fix-clangrt-check-for-c.patch to provide consistent
    status information from hip-config.cmake about compiler-rt when
    configuring C and C++ projects.
  * Add d/p/0037-deduplicate-cmake-messages.patch to reduce the verbosity
    of hip-config.cmake.

 -- Cordell Bloor <email address hidden> Tue, 26 Mar 2024 00:42:03 -0600

rocm-hipamd (5.7.1-2) unstable; urgency=medium

  * Add d/p/0034-default-to-hip-platform-amd.patch to have hip-config.cmake
    default to building for the AMD platform if hipconfig is not available.
  * d/gbp.conf: ensure use of pristine-tar
  * d/t/hipconfig: enable hipconfig autopkgtests even if KFD is not available
  * d/control: drop dpkg-dev from hipcc depends because it is no longer used
  * d/t/control: require rocminfo (>= 5.7.1~) in autopkgtests to fix failures
    on systems without AMD GPUs

 -- Cordell Bloor <email address hidden> Wed, 20 Mar 2024 01:57:15 -0600

rocm-hipamd (5.7.1-1) unstable; urgency=medium

  * Migrate to unstable.

 -- Cordell Bloor <email address hidden> Thu, 07 Mar 2024 10:57:55 -0700

rocm-hipamd (5.7.1-1~exp2) experimental; urgency=medium

  * Fix FTBFS on arm64 by conditionally removing use of SSE intrinsics.
  * Fix gcc, clang and g++ autopkgtests.
  * Add d/p/0033-fix-hipconfig-version-githash.patch to fix hipconfig
    version number.

 -- Cordell Bloor <email address hidden> Sun, 03 Mar 2024 17:31:02 -0700

rocm-hipamd (5.7.1-1~exp1) experimental; urgency=medium

  * New upstream version 5.7.1
  * Update URLs to reflect consolidation of hipamd, rocclr and
    rocm-opencl into clr.
  * Enable hardening flags.
  * d/libamdhip64-5.symbols: mark hipRegisterTracerCallback as an
    optional symbol. This function is not found in any public header.
    It is an unstable internal interface used by ROCm profiling tools.
  * d/libhiprtc-builtins.so.5: fix lintian warning
    symbols-file-missing-build-depends-package-field
  * Add d/p/0030-disable-immintrin-on-ppc64el.patch to fix build
    on ppc64el.
  * Add d/p/0031-find-package-minimum-policy.patch to fix CMake
    policy warning in find_package(hip).
  * Expand autopkgtests with more build checks (no GPU required).
  * Add d/p/0032-hipcc-compiler-launcher.patch to provide
    HIP_CLANG_LAUNCHER environment variable in hipcc.
    Thanks to Gavin Zhao.

 -- Cordell Bloor <email address hidden> Sun, 03 Mar 2024 00:21:39 -0700

rocm-hipamd (5.6.1-1~exp1) experimental; urgency=medium

  * New upstream version 5.6.1
  * Add hipcc upstream tarball
  * Update upstream URLs
  * Update from clang-15 to clang-17 (Closes: #1061208)
  * d/control: drop mlir from build-depends
  * d/control: add graphviz to doc build dependencies (Closes: 1064721)
  * d/rules: disable build tests
  * d/rules: disable rpath rather than patching it out
  * d/hipcc.install: drop install of hip_embed_pch.sh
  * d/libamdhip64-5.symbols: mark profiling API symbols as optional

 -- Cordell Bloor <email address hidden> Tue, 27 Feb 2024 02:38:42 -0700

rocm-hipamd (5.2.3-13) unstable; urgency=medium

  * Add debian/clean (Closes: #1046076)

 -- Christian Kastner <email address hidden> Thu, 14 Sep 2023 15:48:26 +0200

Revision history for this message
Cory Bloor (slavik81) wrote :
affects: rocr-runtime (Ubuntu) → rocm-hipamd (Ubuntu)
Revision history for this message
Cory Bloor (slavik81) wrote :
Revision history for this message
Cory Bloor (slavik81) wrote :
Revision history for this message
Cory Bloor (slavik81) wrote :
Revision history for this message
Utkarsh Gupta (utkarsh) wrote :

Hey Cory,

Thanks for filing the FFe. Whilst that is quite a bump from 5.2.3-13 to 5.7.1-2, I think that ratio of benefit to cost is rather positive. Having them in Noble will be a net win.

I'd like to approve this FFe as long as the builds, autopkgtests, and adequate smoke testing is performed for the package and its reverse dependencies prior to the upload to the archive. As long as that's done, consider this FFe approved.

Changed in rocm-hipamd (Ubuntu):
status: New → Triaged
Revision history for this message
Cory Bloor (slavik81) wrote :

The rdepends for rocm-hipamd are nearly all FTBFS due to the addition of 'cf-protection=return' and 'cf-protection=branch' to the CXXFLAGS. This is not a problem introduced by rocm-hipamd 5.7.1, but occurs with the current rocm-hipamd 5.2.3 as well. As such, this update has no effect on whether the rdepends successfully build. They will fail either way.

The autopkgtests for rocm-hipamd's rdepends all depend on GPU hardware and cannot be executed using the standard autopkgtest binaries. However, the rdepends nearly all package their tests and I've manually executed a large subset of the autopkgtest suite on my Radeon VII GPU. The test logs are attached as "noble-gfx906-hip-5.7.1.txt.zst". There are a couple failures, but I still regard these results as a pass. The tests for the ROCm math libraries are very fiddly and they behave slightly differently on each of the twenty seven different GPU architectures that are enabled by this package. When 99.9999% of them pass, you're doing pretty good.

The upstream rocm-hipamd package is now on 5.7.1-3, so I suppose that should be the target version for the sync.

description: updated
summary: - Sync rocm-hipamd 5.7.1-2 (universe) from Debian unstable (main)
+ Sync rocm-hipamd 5.7.1-3 (universe) from Debian unstable (main)
Cory Bloor (slavik81)
description: updated
Revision history for this message
Cory Bloor (slavik81) wrote :

For comparison, I've uploaded a test log of the rdepends using rocm-hipamd 5.2.3-12 on the same system. Note that is that the two failures are identical to the previous log for the rdepends using the rocm-hipamd 5.7.1-3 package.

Revision history for this message
Lucas Kanashiro (lucaskanashiro) wrote :

Right now, version 5.7.1-3 fails to build in Noble because of some uninstallability issues:

The following packages have unmet dependencies:
 libobjc-13-dev : Depends: gcc-13-base (= 13.2.0-13ubuntu1) but 13.2.0-17ubuntu2 is to be installed
                  Depends: libgcc-13-dev (= 13.2.0-13ubuntu1) but 13.2.0-17ubuntu2 is to be installed

This is happening because of the ongoing transitions. Since the package build would fail in the Ubuntu archive, I'm holding this sync until those things get sorted out.

Revision history for this message
Paride Legovini (paride) wrote :

I think those issues are now gone. I tried to build the package locally in a noble schroot and it succeeded. I'm proceeding with the sync.

Revision history for this message
Paride Legovini (paride) wrote :

Request succeeded; you should get an e-mail once it is processed.

(I didn't receive the e-mail yet, but maybe this is taking a bit longer because of the Beta Freeze. I'm marking this a Fix Released; please reach out if you think the sync didn't succeed.)

Changed in rocm-hipamd (Ubuntu):
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.