** Description changed:

  [ Impact ]
  
      rocALUTION 7.2.3 (librocalution1) fixes a correctness regression in how
      preconditioners are moved between host and accelerator memory when used
      inside iterative Krylov solvers:
  
      1. Preconditioner MoveToHost/MoveToAccelerator missing in Krylov solvers
         (regression introduced in 7.2.x, reverted in commit "Revert 279") —
         The MoveToHost() and MoveToAccelerator() calls for the preconditioner
         object were removed from the CG, CR, FCG, FGMRES, GMRES, and
         base_multigrid solvers. As a result, when a solver was moved between
         host and accelerator (e.g. via MoveToAccelerator()), the preconditioner
         was left stranded on the original device, leading to incorrect solver
         behaviour or crashes for any preconditioned iterative solve that used
         MoveToAccelerator(). Fix: restore the missing preconditioner
         Move{ToHost,ToAccelerator}() calls in all affected solver classes, and
         restore the missing EXPECT_EQ assertions in the
         local_vector_test.extract_coarse_mapping_int test.
  
      The 7.2.3 release also carries two build-quality improvements with no
      runtime impact:
  
      2. Missing ROCALUTION_EXPORT annotations on public API methods — Multiple
         public methods in GlobalMatrix, GlobalVector, IterationControl,
         BaseAMG, BaseMultiGrid, MultiColored, and related classes were missing
         the ROCALUTION_EXPORT macro required for symbol visibility on Windows.
         This caused linking errors when building downstream consumers on
         Windows. On Linux the macro is a no-op, so this change has no ABI
         impact here.
  
      3. Nodiscard warning fixes — HIP API calls (hipMalloc, hipFree, hipMemcpy,
         hipDeviceSynchronize, rocprim::reduce/exclusive_scan, etc.) are now
         wrapped in DISCARD_HIP_ERROR() where the return value was intentionally
         discarded (errors are caught by the subsequent CHECK_HIP_ERROR macro).
         Additionally, the backend initialisation sequence now captures the
         hipGetLastError() return value correctly. No behaviour change at
         runtime.
  
      Packaging fixes in this upload:
  
      a. d/watch: updated to v5 RFC 822 stanza format and corrected upstream
         repository name capitalisation (rocALUTION).
      b. d/copyright: upstream AMD copyright year updated to 2025.
      c. d/control: Standards-Version bumped to 4.7.4 (no changes required).
      d. d/rules: DPKG_GENSYMBOLS_CHECK_LEVEL migrated from
         override_dh_makeshlibs to the exported-variable form.
  
      Reverse dependencies: librocalution-dev, librocalution1-tests.
  
  [ Test Plan ]
  
      1. Build:
         - dpkg-buildpackage or sbuild succeeds.
         - dpkg --compare-versions 7.2.3-0ubuntu1 gt 7.1.1-0ubuntu1 confirms
           the new version is greater.
         - No debian/*.symbols file exists for this package; dpkg-gensymbols
           check is not applicable.
      2. Installability:
         - apt install librocalution1 librocalution-dev succeeds.
         - Confirm reverse dependencies remain installable without rebuild.
      3. Autopkgtest (command1 / upstream-binaries librocalution1-tests) on a
         GPU-equipped testbed (resolute amd64, lxd --profile=rocm-gpu):
  
  [----------] Global test environment tear-down
  [==========] 9633 tests from 43 test suites ran. (366848 ms total)
  [  PASSED  ] 9151 tests.
  [  SKIPPED ] 482 tests, listed below:
  [  SKIPPED ] 
mixed_precision/parameterized_mixed_precision.mixed_precision_double_float/0
  ...
  autopkgtest [01:08:47]: test command1:  - - - - - - - - - - results - - - - - 
- - - - -
  command1             PASS
  autopkgtest [01:08:47]: @@@@@@@@@@@@@@@@@@@@ summary
  command1             PASS
  2026-05-27 01:08:47 - Autopkg tests ended for rocalution in 
ppa:igorluppi/rocalution-7.2.3.
  Tests took: 0h 19m 39s. Logs saved in ./rocalution_20260527_004910.log
  
  [ Where problems could occur ]
  
      1. Preconditioned solvers that use MoveToAccelerator() (moderate risk if
         regression was present): Any application that calls
         solver.MoveToAccelerator() with a preconditioner attached now correctly
         moves the preconditioner too. Code that worked around the missing move
         by manually calling precond->MoveToAccelerator() is unaffected (the
         call is idempotent). Code that relied on the preconditioner staying on
         the host while the solver moved to the accelerator would break, but
         such a split is not a supported configuration.
      2. Infrastructure issues during build (low risk): No GPU is required on
         Launchpad builders; override_dh_auto_test-arch is skipped there and
         the build is expected to pass without a GPU.
  
  [ Other Info ]
  
-  * No ABI breakage: no debian/*.symbols file is maintained for this package.
-    The SONAME remains librocalution.so.1. The ROCALUTION_EXPORT additions
-    only affect Windows symbol export; they have no effect on ELF visibility.
+  * No ABI breakage: abidiff between librocalution.so.1.0 from 7.1.1-0ubuntu1
+    (resolute archive) and 7.2.3-0ubuntu1 (ppa:igorluppi/rocalution-7.2.3)
+    reports zero changed functions, zero changed variables, and zero type
+    changes (exit code 0). The SONAME remains librocalution.so.1. The
+    ROCALUTION_EXPORT additions only affect Windows symbol export; they have
+    no effect on ELF visibility. No debian/*.symbols file is maintained for
+    this package.
   * This update is part of the coordinated ROCm 7.2.3 stack release.
   * PPA: https://launchpad.net/~igorluppi/+archive/ubuntu/rocalution-7.2.3
   * Upstream version comparison:
     https://github.com/ROCm/rocALUTION/compare/rocm-7.1.1...rocm-7.2.3
   * Target: resolute 26.04 LTS
   * Known pre-existing build failures (not addressed in this SRU):
     armhf FAILEDTOBUILD and s390x MANUALDEPWAIT. These failures exist across
     all previous rocalution uploads and are known to the maintainers. A fix
     is possible but out of scope for this update.

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

Title:
  SRU: New upstream version 7.2.3

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


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

Reply via email to