Please RM arm64 binaries

Bug #2061048 reported by Cory Bloor
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
hipsparse (Ubuntu)
Fix Released
Undecided
Unassigned
rocfft (Ubuntu)
Fix Released
Undecided
Unassigned
rocm-hipamd (Ubuntu)
Fix Released
Undecided
Unassigned
rocprim (Ubuntu)
Fix Released
Undecided
Unassigned
rocrand (Ubuntu)
Fix Released
Undecided
Unassigned
rocsparse (Ubuntu)
Fix Released
Undecided
Unassigned
rocthrust (Ubuntu)
Fix Released
Undecided
Unassigned
stdgpu (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

The rocm-hipamd package has been FTBFS on arm64 in noble since the update to glibc 2.38 last year, as per https://bugs.launchpad.net/ubuntu/+source/rocm-hipamd/+bug/2032624. In fact, all libraries written in the HIP language have been FTBFS on arm64 since then. This is blocking important fixes and updates for the ROCm libraries from migrating from noble-proposed to noble. For example, the rocfft library is entirely broken on noble right now, but would be fixed by the migration of rocm-hipamd 5.7.1-3 from noble-proposed into noble.

I was the one that ported these ROCm libraries to arm64 (aside from stdgpu). To my knowledge, nobody has ever tested the ROCm libraries on arm64. I got them to compile, but I've never had access to appropriate hardware to try using the resulting packages. I've never heard of any users of these packages either. It's not worth accepting serious known breakages in ROCm on amd64 in exchange for uncertain functionality on arm64. As such, the arm64 packages should be dropped from the archive until they can successfully build from source again.

Please remove the following binary packages from noble:

hipcc 5.2.3-12 noble arm64
libamdhip64-5 5.2.3-12 noble arm64
libamdhip64-dev 5.2.3-12 noble arm64
libhiprtc-builtins5 5.2.3-12 noble arm64

libhiprand-dev 5.3.3-6 noble arm64
libhiprand1-tests 5.3.3-6 noble arm64
libhiprand1 5.3.3-6 noble arm64
librocrand-dev 5.3.3-6 noble arm64
librocrand1-tests 5.3.3-6 noble arm64
librocrand1 5.3.3-6 noble arm64

librocprim-dev 5.5.1-1 noble arm64
librocprim-tests 5.5.1-1 noble arm64

librocthrust-dev 5.3.3-4 noble arm64
librocthrust-tests 5.3.3-4 noble arm64

librocfft-dev 5.5.0-4 noble arm64
librocfft0-tests 5.5.0-4 noble arm64
librocfft0 5.5.0-4 noble arm64

librocsparse-dev 5.5.1-1 noble arm64
librocsparse0-tests 5.5.1-1 noble arm64
librocsparse0 5.5.1-1 noble arm64

libhipsparse-dev 5.5.1-1 noble arm64
libhipsparse0-tests 5.5.1-1 noble arm64
libhipsparse0 5.5.1-1 noble arm64

libstdgpu-hip-dev 1.3.0+git20220507.32e0517-5 noble arm64
libstdgpu-hip0d 1.3.0+git20220507.32e0517-5 noble arm64
libstdgpu-openmp-dev 1.3.0+git20220507.32e0517-5 noble arm64
libstdgpu-openmp0d 1.3.0+git20220507.32e0517-5 noble arm64

The ucx 1.16.0+ds-5ubuntu1 package has now migrated to noble, dropping libamdhip64-dev from its build-depends on arm64. The list of packages above is therefore now a list of all the reverse dependencies of rocm-hipamd on arm64.

Cory Bloor (slavik81)
description: updated
Cory Bloor (slavik81)
description: updated
Cory Bloor (slavik81)
description: updated
Revision history for this message
Steve Langasek (vorlon) wrote :

$ src=rocfft
$ reverse-depends src:$src -a arm64
No reverse dependencies found
$ reverse-depends src:$src -a source
Reverse-Build-Depends
=====================
* hipfft (for librocfft-dev)

$

Removing packages from noble:
 librocfft-dev 5.5.0-4 in noble arm64
 librocfft0 5.5.0-4 in noble arm64
 librocfft0-tests 5.5.0-4 in noble arm64
Comment: ANAIS
3 packages successfully removed.

Changed in rocfft (Ubuntu):
status: New → Fix Released
Revision history for this message
Steve Langasek (vorlon) wrote :

$ src=rocrand
$ reverse-depends src:$src -a arm64
Reverse-Depends
===============
* librocfft0-tests (for librocrand1)

$ reverse-depends src:$src -a source
Reverse-Build-Depends
=====================
* rocfft (for librocrand-dev)

$

Removing packages from noble:
 libhiprand-dev 5.3.3-6 in noble arm64
 libhiprand1 5.3.3-6 in noble arm64
 libhiprand1-tests 5.3.3-6 in noble arm64
 librocrand-dev 5.3.3-6 in noble arm64
 librocrand1 5.3.3-6 in noble arm64
 librocrand1-tests 5.3.3-6 in noble arm64
Comment: ANAIS
6 packages successfully removed.

Revision history for this message
Steve Langasek (vorlon) wrote :

$ src=hipsparse
$ reverse-depends src:$src -a arm64
No reverse dependencies found
$ reverse-depends src:$src -a source
No reverse dependencies found
$

Removing packages from noble:
 libhipsparse-dev 5.5.1-1 in noble arm64
 libhipsparse0 5.5.1-1 in noble arm64
 libhipsparse0-tests 5.5.1-1 in noble arm64
Comment: ANAIS
3 packages successfully removed.

Changed in hipsparse (Ubuntu):
status: New → Fix Released
Revision history for this message
Steve Langasek (vorlon) wrote :

$ src=rocsparse
$ reverse-depends src:$src -a arm64
Reverse-Depends
===============
* libhipsparse0 (for librocsparse0)

$ reverse-depends src:$src -a source
Reverse-Build-Depends
=====================
* hipsparse (for librocsparse-dev)

$

Removing packages from noble:
 librocsparse-dev 5.5.1-1 in noble arm64
 librocsparse0 5.5.1-1 in noble arm64
 librocsparse0-tests 5.5.1-1 in noble arm64
Comment: ANAIS
3 packages successfully removed.

Changed in rocsparse (Ubuntu):
status: New → Fix Released
Revision history for this message
Steve Langasek (vorlon) wrote :

$ src=stdgpu
$ reverse-depends src:$src -a arm64
No reverse dependencies found
$ reverse-depends src:$src -a source
No reverse dependencies found
$

Removing packages from noble:
 libstdgpu-hip-dev 1.3.0+git20220507.32e0517-5 in noble arm64
 libstdgpu-hip0d 1.3.0+git20220507.32e0517-5 in noble arm64
 libstdgpu-openmp-dev 1.3.0+git20220507.32e0517-5 in noble arm64
 libstdgpu-openmp0d 1.3.0+git20220507.32e0517-5 in noble arm64
Comment: ANAIS
4 packages successfully removed.

Changed in stdgpu (Ubuntu):
status: New → Fix Released
Revision history for this message
Steve Langasek (vorlon) wrote :

$ src=rocthrust
$ reverse-depends src:$src -a arm64
Reverse-Depends
===============
* libstdgpu-hip-dev (for librocthrust-dev)

$ reverse-depends src:$src -a source
Reverse-Build-Depends
=====================
* stdgpu (for librocthrust-dev)

$

Removing packages from noble:
 librocthrust-tests 5.3.3-4 in noble arm64
Comment: ANAIS
1 package successfully removed.

Changed in rocthrust (Ubuntu):
status: New → Fix Released
Revision history for this message
Steve Langasek (vorlon) wrote :

Actually, librocthrust-dev is an Arch: all package with no associated library; and stdgpu only (build-)depends on this arch: all library. So librocthrust-dev can't be removed, and I think stdgpu shouldn't be removed either - restoring those binaries.

Changed in stdgpu (Ubuntu):
status: Fix Released → Invalid
Revision history for this message
Steve Langasek (vorlon) wrote :

$ src=rocprim
$ reverse-depends src:$src -a arm64
Reverse-Depends
===============
* libhipcub-dev (for librocprim-dev)
* librocthrust-dev (for librocprim-dev)

$ reverse-depends src:$src -a source
Reverse-Build-Depends
=====================
* hipcub (for librocprim-dev)
* rocsparse (for librocprim-dev)
* rocthrust (for librocprim-dev)

$

Another case where the revdeps are on the arch: all package.

Removing packages from noble:
 librocprim-tests 5.5.1-1 in noble arm64
Comment: ANAIS
1 package successfully removed.

Changed in rocprim (Ubuntu):
status: New → Fix Released
Changed in rocrand (Ubuntu):
status: New → Fix Released
Revision history for this message
Cory Bloor (slavik81) wrote :

Oof. You're right. Thank you for catching that error .

Revision history for this message
Cory Bloor (slavik81) wrote (last edit ):

The header-only libraries are librocprim-dev, librocthrust-dev and libhipcub-dev. Those are not arm64 binaries and should not be removed. My apologies for including them in this list.

However, the arm64 binaries for stdgpu should still be removed. Not because they depend on librocthrust-dev, but because they transitively depend on libamdhip64-dev and libamdhip64-5 (which are both arm64).

Revision history for this message
Cory Bloor (slavik81) wrote :

While the build dependency on librocthrust-dev is not an issue, the build dependency on libamdhip64-dev is.

Changed in stdgpu (Ubuntu):
status: Invalid → New
Revision history for this message
Cory Bloor (slavik81) wrote :

Considering stdgpu further, it would be sufficient to only remove:

libstdgpu-hip-dev 1.3.0+git20220507.32e0517-5 noble arm64
libstdgpu-hip0d 1.3.0+git20220507.32e0517-5 noble arm64

It is straightforward to drop libamdhip64-dev from the stdgpu build depends on arm64, so the leftover openmp variants should not block any future fixes to this package. I will prepare a merge request doing that.

Revision history for this message
Steve Langasek (vorlon) wrote :

$ src=rocm-hipamd
$ reverse-depends src:$src -a arm64
Reverse-Recommends
==================
* librocsparse-dev (for libamdhip64-dev)

Reverse-Depends
===============
* libhiprand-dev (for libamdhip64-dev)
* libhiprand1 (for libamdhip64-5)
* libhiprand1-tests (for libamdhip64-5)
* libhipsparse-dev (for libamdhip64-dev)
* libhipsparse0 (for libamdhip64-5)
* libhipsparse0-tests (for libamdhip64-5)
* librocfft0 (for libamdhip64-5)
* librocfft0-tests (for libamdhip64-5)
* librocprim-dev (for libamdhip64-dev)
* librocprim-tests (for libamdhip64-5)
* librocrand-dev (for libamdhip64-dev)
* librocrand1 (for libamdhip64-5)
* librocrand1-tests (for libamdhip64-5)
* librocsparse0 (for libamdhip64-5)
* librocsparse0-tests (for libamdhip64-5)
* librocthrust-tests (for libamdhip64-5)
* libstdgpu-hip0d (for libamdhip64-5)
* libucx0 (for libamdhip64-5)

$ reverse-depends src:$src -a source
Reverse-Build-Depends
=====================
* hipblas (for libamdhip64-dev)
* hipcub (for hipcc)
* hipfft (for hipcc)
* hipsparse (for libamdhip64-dev)
* hipsparse (for hipcc)
* rccl (for hipcc)
* rocblas (for hipcc)
* rocfft (for hipcc)
* rocprim (for hipcc)
* rocrand (for libamdhip64-dev)
* rocrand (for hipcc)
* rocsolver (for hipcc)
* rocsparse (for hipcc)
* rocthrust (for hipcc)
* stdgpu (for hipcc)
* stdgpu (for libamdhip64-dev)
* ucx (for libamdhip64-dev)

$

So there seem to be some other reverse-dependencies here still impacted and not in the list of removal requests, because hipcc is used.

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

Hi Steve,

I believe the rocm-hipamd request is complete. Here is a listing of the reasoning for every reverse-depends of rocm-hipamd:

Reverse-Depends
===============
* libhiprand-dev (for libamdhip64-dev) - removed in in this request
* libhiprand1 (for libamdhip64-5) - removed in in this request
* libhiprand1-tests (for libamdhip64-5) - removed in in this request
* libhipsparse-dev (for libamdhip64-dev) - removed in in this request
* libhipsparse0 (for libamdhip64-5) - removed in in this request
* libhipsparse0-tests (for libamdhip64-5) - removed in in this request
* librocfft0 (for libamdhip64-5) - removed in in this request
* librocfft0-tests (for libamdhip64-5) - removed in in this request
* librocprim-dev (for libamdhip64-dev) - this is an arch all package and is still installable on amd64 and ppc64el
* librocprim-tests (for libamdhip64-5) - removed in this request
* librocrand-dev (for libamdhip64-dev) - removed in this request
* librocrand1 (for libamdhip64-5) - removed in this request
* librocrand1-tests (for libamdhip64-5) - removed in this request
* librocsparse0 (for libamdhip64-5) - removed in this request
* librocsparse0-tests (for libamdhip64-5) - removed in this request
* librocthrust-tests (for libamdhip64-5) - removed in this request
* libstdgpu-hip0d (for libamdhip64-5) - removed in this request
* libucx0 (for libamdhip64-5) - no longer depends on libamdhip64-5 on arm64 as of 1.16.0+ds-5ubuntu1 (the current version on noble)

$ reverse-depends src:$src -a source
Reverse-Build-Depends
=====================
* hipblas (for libamdhip64-dev) - has never built successfully on arm64; no binary packages to remove
* hipcub (for hipcc) - has never built successfully on arm64; no binary packages to remove
* hipfft (for hipcc) - has never built successfully on arm64; no binary packages to remove
* hipsparse (for libamdhip64-dev) - all arm64 binaries removed in this request
* hipsparse (for hipcc) - all arm64 binaries removed in this request
* rccl (for hipcc) - has never built successfully on arm64; no binary packages to remove
* rocblas (for hipcc) - has never built successfully on arm64; no binary packages to remove
* rocfft (for hipcc) - all arm64 binaries removed in this request
* rocprim (for hipcc) - all arm64 binaries removed in this request
* rocrand (for libamdhip64-dev) - all arm64 binaries removed in this request
* rocrand (for hipcc) - all arm64 binaries removed in this request
* rocsolver (for hipcc) - has never built successfully on arm64; no binary packages to remove
* rocsparse (for hipcc) - all arm64 binaries removed in this request
* rocthrust (for hipcc) - all arm64 binaries removed in this request
* stdgpu (for hipcc) - all arm64 binaries removed in this request; proposed merge to drop hipcc from b-d on arm64
* stdgpu (for libamdhip64-dev) - all arm64 binaries removed in this request; proposed merge to drop libamdhip64-dev from b-d on arm64
* ucx (for libamdhip64-dev) - no longer build-depends on libamdhip64-dev on arm64 as of 1.16.0+ds-5ubuntu1

The goal is to move all of rocm-hipamd's Reverse-Build-Depends to dep-wait on arm64.

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

> It is straightforward to drop libamdhip64-dev from the stdgpu build depends on arm64, so the leftover openmp variants should not block any future fixes to this package. I will prepare a merge request doing that.

The merge request:
https://code.launchpad.net/~slavik81/ubuntu/+source/stdgpu/+git/stdgpu/+merge/464247

Revision history for this message
Cory Bloor (slavik81) wrote :

To summarize the current state of this ticket, I still request removal of:

hipcc 5.2.3-12 noble arm64
libamdhip64-5 5.2.3-12 noble arm64
libamdhip64-dev 5.2.3-12 noble arm64
libhiprtc-builtins5 5.2.3-12 noble arm64

libstdgpu-hip-dev 1.3.0+git20220507.32e0517-5 noble arm64
libstdgpu-hip0d 1.3.0+git20220507.32e0517-5 noble arm64

I hope that the comments provided when moving the stdgpu and rocm-hipamd statuses back to New help to clarify why these removals are safe.

Revision history for this message
Cory Bloor (slavik81) wrote :

The stdgpu source package no longer produces the libstdgpu-hip-dev and libstdgpu-hip0d binary packages on arm64 as of 1.3.0+git20220507.32e0517-5ubuntu1. There is a FTBFS bug affecting stdgpu on amd64 and ppc64el on both noble and noble-proposed, so this version won't migrate immediately. Regardless, the existing arm64 binaries need to be removed so that they don't block the migration once the amd64 and ppc64el issues are resolved.

Revision history for this message
Matthias Klose (doko) wrote :

stdgpu migrated yesterday

Changed in stdgpu (Ubuntu):
status: New → Fix Released
Revision history for this message
Matthias Klose (doko) wrote :

Removing packages from noble:
 hipcc 5.2.3-12 in noble arm64
 libamdhip64-5 5.2.3-12 in noble arm64
 libamdhip64-dev 5.2.3-12 in noble arm64
 libhiprtc-builtins5 5.2.3-12 in noble arm64
Comment: LP: #2061048, remove arm64 binaries
4 packages successfully removed.

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

Thank you very much. The ROCm stack is in much better shape now that rocm-hipamd 5.7.1-3 has migrated.

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.