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

RFS: rocsolver/5.5.1-1 [ITP] -- ROCm library for numerical linear algebra



Hello,

I have prepared a package for the rocSOLVER library. There are a few caveats:

1. Many files in rocSOLVER are described as being derived from LAPACK. This is because the initial implementation of nearly every algorithm in rocSOLVER was done by reviewing the Netlib implementation and adapting it for execution on the GPU. I could use a second opinion on whether I've handled this correctly in d/copyright.

2. I encountered a build error that seems to be related to the library size (failed to convert GOTPCREL relocation against 'relink with --no-relax'). It seems to be a particular problem on Debian, perhaps because it is being built with debug symbols. As a workaround, I've added -DOPTIMAL=OFF to the rocSOLVER cmake arguments. When OPTIMAL is OFF, the build will omit all specialized kernels for small matrix sizes. This omission has no effect on the API or ABI of the library, since more general kernels can implement the same functionality, but it will affect the performance.

For ROCm 6.0, I plan to split the small matrix kernels out into separate code object files (like rocBLAS does for its Tensile kernels). Unlike rocBLAS, however, the rocSOLVER library will be fully functional without the optimized code objects, so they can be packaged separately. If you measure by binary size, something like 85% of the rocsolver library is just small matrix kernels, so that should end the rocsolver library size woes once and for all.

3. The rocSOLVER library depends on some rocBLAS symbols that are prefixed rocblas_internal. I have marked those as no longer being optional in the symbol tracking for rocblas 5.5.1-1~exp1. The rocBLAS development team has promised to treat the rocblas_internal symbols that rocSOLVER depends on with the same ABI guarantees as the documented rocBLAS interfaces, though, note that rocblas 5.5.1 is the last version of librocblas0 anyway. Due to a mixup in the release schedule, the rocBLAS library bumped the SOVERSION for ROCm 5.6 and will be bumping the SOVERSION again for ROCm 6.0.

I am looking for a sponsor for my package "rocsolver":

 * Package name     : rocsolver
   Version          : 5.5.1-1
 * URL              : https://github.com/rocmsoftwareplatform/rocsolver
 * License          : BSD-2-clause and BSD-3-clause-magma, BSD-2-clause, BSD-2-clause and BSD-3-clause-lapack
 * Vcs              : https://salsa.debian.org/rocm-team/rocsolver
   Section          : devel

The source builds the following binary packages:

  librocsolver0 - ROCm library for numerical linear algebra - library
  librocsolver-dev - ROCm library for numerical linear algebra - headers
  librocsolver0-tests - ROCm library for numerical linear algebra - tests
  librocsolver-doc - ROCm library for numerical linear algebra - documentation

To access further information about this package, please visit the following URL:

  https://mentors.debian.net/package/rocsolver/

Alternatively, you can download the package with 'dget' using this command:

  dget -x https://mentors.debian.net/debian/pool/main/r/rocsolver/rocsolver_5.5.1-1.dsc

Changes for the initial release:

 rocsolver (5.5.1-1) experimental; urgency=medium
 .
   * Initial release. (Closes: #1023081)

Regards,
-- 
  Cordell Bloor


Reply to: