The no-change rebuild is done and this package now ships gfx1150 code
objects.

  https://launchpad.net/~aurascoper/+archive/ubuntu/rocm-
gfx1150-rebuild/+build/33518650

Built against pkg-rocm-tools 0.9.6ubuntu4~26.04.1ppa1 in
ppa:aurascoper/rocm-gfx1150-rebuild. The chroot log has:

    Setting up pkg-rocm-tools (0.9.6ubuntu4~26.04.1ppa1) ...
    
-DGPU_TARGETS="gfx908;gfx90a;gfx942;gfx950;gfx1030;gfx1100;gfx1101;gfx1150;gfx1151;gfx1200;gfx1201"

gfx1150 occurs 138 times in that build log. It occurred 0 times in the archive 
build and
0 times in the ppa:bullwinkle-team/rocm build I reported above, where gfx1151 
occurred
165 times.

The shipped library carries the code objects, not just the flags. Both of these 
are the
15 bundles in the .hip_fatbin section of librocrand.so.1.1, listed with entry 
count and
total bytes per target.

Archive librocrand1 7.1.1-0ubuntu1, as installed on this machine from
resolute/universe:

    15   10335936  gfx1030
    15   11069440  gfx1100
    15   11050456  gfx1101
    15   10864328  gfx1151
    15   10898320  gfx1200
    15   11010712  gfx1201
    15    9876304  gfx908
    15   10043568  gfx90a
    15    9854320  gfx942

Nine targets, no gfx1150. The rebuild, same version string, from the PPA
above:

    15   10335928  gfx1030
    15   11069432  gfx1100
    15   11050448  gfx1101
    15   10827552  gfx1150
    15   10864320  gfx1151
    15   10898312  gfx1200
    15   11010704  gfx1201
    15    9876296  gfx908
    15   10043560  gfx90a
    15    9854312  gfx942
    15    9835416  gfx950

gfx1150 in all 15 bundles, 10.8 MB of device code, in line with gfx1151's 10.9 
MB rather
than a stub. llvm-objdump --offloading gives the same eleven-target list.

gfx950 is the other new row and it is not from my patch. That is
pkg-rocm-tools 0.9.6ubuntu4~26.04.1, LP #2159601, already in resolute-proposed. 
It makes
a useful control: the same no-change rebuild that picks up Canonical's gfx950 
addition
picks up gfx1150.

One correction to my earlier comment. I said rocSPARSE's code objects were not
enumerable locally because it builds with -DBUILD_WITH_OFFLOAD_COMPRESS=ON and
llvm-objdump 21.1.8 fails on the compressed bundles. The tool does fail, but the
conclusion was wrong. Its .hip_fatbin holds 319 concatenated compressed 
bundles. Each is a
24-byte CCOB v2 header in front of a zstd frame wrapping an ordinary
__CLANG_OFFLOAD_BUNDLE__. Both llvm-objdump and clang-offload-bundler stop at 
the first
one and report a decompression error rather than a count mismatch, which is 
what sent me
the wrong way. Walking the
frames by hand enumerates all 319 fine. I have posted the archive-versus-rebuild
comparison for rocSPARSE on LP #2162811. If that method is useful to you 
elsewhere, say
so and I will write it up properly rather than leaving it in a bug comment.

Scope: I downloaded and extracted the .debs rather than installing them, so 
this is a
static check of shipped artifacts. I have not re-run the rocrand reproducer 
against the
rebuilt library on this gfx1150 machine yet. Happy to do that and post the 
result.

The debdiff and the SRU discussion are on LP #2162810, now targeting
0.9.6ubuntu4~26.04.2 rather than the 0.9.6ubuntu5 I first proposed.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2162809

Title:
  librocrand1 ships no gfx1150 code objects; any generator use segfaults
  on Strix Point (Radeon 890M)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/rocrand/+bug/2162809/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to