[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Running up that (HIP) hill



Hello,
Since you guys upload so fast, where is what I've done and what still
needs to be done: in more detail than the project todo bullets [1], and
in the hope that we can coordinate so that this package will not stall
the next ones for a month.

What is already done for the hipamd package (ROCm v5.0.0):
 - basic debianization
 - imported in a MUT (vendoring other github repos) way
   gbp import-orig --component=clr --component=opencl \
                   --component=hip --pristine-tar --uscan
 - d/*.symbols, d/*.install, d/watch
 - various patches:
    0001-Clang-version-munging - on the soon-to-be-old perl script.
    0002-orthograph-patch-for-rocclr
    0003-hip-config.cmake
    0004-hip-cmake-install

So the package currently installs in GNUInstallDirs -
/usr/lib/x86_64-linux-gnu, /usr/include/hip. There are two main shared
objects: libamdhip64-5 and libhiprtc-builtins-5.

What needs to be done at least:
 - installing in /usr/hip will break the header hierarchy with
   include_next, for anything that will try to call HIP...
   Cory has proposed an LLVM patch [2] which seems to solve the issue!
 - Debug - Currently, on debian:sid, HIP debugging is broken:
   - host-side (CPU). dwz does not support full DWARF5 yet [3].
   - device-side (GPU kernels), allegedly rocmgdb ioctls are not in
     the amdgpu.ko of the debian kernel yet.
   This is not nice.
   rocmgdb advertises "seamless debug sessions between CPU and GPU",
   so is fixing dwz even a requirement?
 - I am not sure if the shared objects will work for any other GPU
   than gfx906 currently...

Basically, there is work, at least for me, to undestand what hip is
about still: I don't understand clearly what is in the elf files and
I would need to dive in elf spec more for dwz, for the lintian warning
 symbols-file-contains-current-version-with-debian-revision, and
finally in order to look for the presence of GPU-code in there.

There are also at least two packages in the hip department that would
be nice packaging IMO: the hip-examples, and the hip-testsuite repos.
Maybe also hipcc and hipcpu?

This was me throwing all I have about this package, not knowing very
well what to do next / knowing that $DAYJOB will be taxing here next
weeks.

BR, Kate Bush, err, Maxime

[1] https://salsa.debian.org/rocm-team/community/team-project#per-package
[2] https://github.com/cgmb/llvm-project/commit/74fd6baf3409d6009b6264f337a3e09176a1fb62
[3] https://lists.debian.org/debian-ai/2022/02/msg00058.html


Reply to: