Public bug reported:
nvidia-nccl 2.29.7-1-1 fails to build on ppc64el in stonking, which
blocks its migration:
missing build on ppc64el: libnccl-dev, libnccl2 (from 2.22.3-1-1)
The failure is in nvcc, compiling src/device/common.cu:
/usr/include/c++/13/ext/numeric_traits.h(210): error: identifier "__ibm128"
is undefined
struct __numeric_traits_floating<__ibm128>
https://launchpad.net/ubuntu/+source/nvidia-
nccl/2.29.7-1-1/+build/33388522
Cause:
In libstdc++ 13 this code is only compiled when
_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT and __LONG_DOUBLE_IEEE128__ are defined.
Ubuntu's gcc-13 on ppc64el is now configured --with-long-double-format=ieee
("On ppc64el configure --with-long-double-format=ieee for upcoming distros" in
the gcc-13 changelog), so the CUDA host compiler (cuda-g++, i.e. g++-13)
defines __LONG_DOUBLE_IEEE128__. The nvcc front end in CUDA 12.4 doesn't know
the __ibm128 type. CUDA 12.4 is the last CUDA release supporting ppc64le, so no
newer toolkit will fix this, and forcing IBM long double would change the ABI.
The last successful ppc64el build of nvidia-nccl was 2.22.3-1-1 in
oracular (July 2024), before the toolchain switch. Debian doesn't build
it on ppc64el either: 2.29.7-1-1 is BD-Uninstallable there and only has
amd64 and arm64 binaries.
Related: gloo-cuda 0.0~git20250912.d97133a-3 is blocked the same way
("missing build on ppc64el ... from 0.0~git20231202.5354032-4") and
needs nvidia-nccl to migrate first. Its ppc64el build also failed on
dependency resolution (libucc1 -> libamdhip64-7, not available on
ppc64el). On ppc64el, libnccl2's only reverse dependency is libgloo-
cuda-0.
Proposed resolution:
Remove the stale ppc64el binaries from stonking so both sources can migrate:
remove-package -s stonking -a ppc64el -b -m "..." libnccl2 libnccl-dev
libgloo-cuda-0 libgloo-cuda-dev
Later, the Architecture fields could be restricted to amd64 arm64 to
avoid pointless ppc64el builds.
Note: other CUDA users on ppc64el (magma, starpu-contrib, bart-cuda)
will probably hit the same __ibm128 failure on their next rebuild.
** Affects: gloo-cuda (Ubuntu)
Importance: Undecided
Status: New
** Affects: nvidia-nccl (Ubuntu)
Importance: Undecided
Status: New
** Tags: ftbfs ppc64el update-excuse
** Tags added: ftbfs ppc64el update-excuse
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2170256
Title:
CUDA builds fail on ppc64el with IEEE long double (__ibm128 undefined
in nvcc), blocking nvidia-nccl and gloo-cuda
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gloo-cuda/+bug/2170256/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs