** Description changed:
[ Impact ]
hipify 7.2.4 extends the CUDA-to-HIP translation toolchain (hipify-clang
and hipify-perl) with support for CUDA 13.0.0 APIs and fixes a cuDNN
version detection regression that affected users of cuDNN 9.10.2 and
later:
1. CUDA 13.0.0 API coverage — New compute targets (CU_TARGET_COMPUTE_110,
110A, 110F), device attributes (HOST_MEMORY_POOLS_SUPPORTED,
HOST_VIRTUAL_MEMORY_MANAGEMENT_SUPPORTED, HOST_ALLOC_DMA_BUF_SUPPORTED,
ONLY_PARTIAL_HOST_NATIVE_ATOMIC_SUPPORTED), atomic operation enums, and
new memory allocation/location types are now mapped to their HIP
equivalents. Driver API functions whose signatures changed in CUDA 13.0
(cuCtxCreate, cuCtxCreate_v2, cuGraphAddNode, cuMemAdvise,
cuMemPrefetchAsync, cuStreamGetCaptureInfo,
cuStreamUpdateCaptureDependencies, cuGraphGetEdges,
cuGraphNodeGetDependencies, cuGraphNodeGetDependentNodes) are now
marked
HIP_UNSUPPORTED or flagged with CUDA_DRIVER_FUNCTION_CHANGED_VER_MAP so
that consumers receive an actionable diagnostic instead of a silent
mistranslation. New batch variants (cuMemPrefetchBatchAsync,
cuMemDiscardBatchAsync, cuMemDiscardAndPrefetchBatchAsync) and
cuEventElapsedTime_v2 are mapped.
2. cuDNN version detection fix — Starting with cuDNN 9.10.2, the version
header is distributed as cudnn_version_v999.h rather than the
traditionally named cudnn_version.h. The 7.1.x detection logic failed
to
find the header on affected systems, causing hipify-clang to silently
fall back to older cuDNN API mappings. 7.2.4 adds a search for the v999
variant so cuDNN 9.10.2+ installations are detected correctly.
Packaging changes in this upload (no user-visible behaviour change once
installed):
a. LLVM toolchain bumped from 21 to 22 — hipify-clang now links against
clang-22/llvm-22-dev and installs libclang-common-22-dev as a runtime
dependency. This aligns with the default system LLVM version in Ubuntu
Stonking and removes the need for the clang-21-compat patch.
b. debian/tests split into hipify (smoke, no CUDA) and hipify-cuda
(translation tests requiring nvidia-cuda-toolkit).
hipify-clang and hipify-perl are standalone developer tools with no
reverse dependencies in the Ubuntu archive.
[ Test Plan ]
1. Build:
- sbuild or dpkg-buildpackage succeeds.
- - dpkg --compare-versions 7.2.4+dfsg-0ubuntu1 gt 7.1.1+dfsg-0ubuntu1
+ - dpkg --compare-versions 7.2.4+dfsg-1~exp1 gt 7.1.1+dfsg-0ubuntu1
returns true.
- No debian/*.symbols file exists for hipify (tool packages, not
libraries); no symbol diff check required.
2. Installability:
- apt install hipify-clang hipify-perl succeeds.
- Confirm libclang-common-22-dev is pulled in as a dependency of
hipify-clang (replaces previous llvm-21 dependency).
3. Autopkgtest:
- Run autopkgtest suite (hipify, hipify-cuda).
- hipify requires only hipify-clang and hipify-perl (smoke tests).
- hipify-cuda additionally requires nvidia-cuda-toolkit and is marked
skippable on hosts without a CUDA installation.
- All tests pass. Output from GPU-equipped testbed:
autopkgtest [12:17:24]: test hipify: [-----------------------
[TEST 1] hipify-clang --version...
[TEST 1] PASS: Ubuntu LLVM version 22.1.2
Optimized build.
[TEST 2] hipify-perl include translation...
[TEST 2] PASS: cuda_runtime.h -> hip/hip_runtime.h
All hipify smoke tests passed.
autopkgtest [12:17:25]: test hipify: -----------------------]
autopkgtest [12:17:25]: test hipify: - - - - - - - - - - results - - - - - -
- - - -
hipify PASS
autopkgtest [12:18:00]: test hipify-cuda: [-----------------------
CUDA detected: path=/usr/lib/cuda include=/usr/lib/cuda/include
[TEST 3] hipify-clang kernel launch translation...
[HIPIFY] CUDA Installation Path: /usr/lib/cuda
[HIPIFY] CUDA_VERSION: 12040
[TEST 3] PASS: kernel launch translated to hipLaunchKernelGGL
#include <hip/hip_runtime.h>
__global__ void kernel() {}
int main() { hipLaunchKernelGGL(kernel, dim3(1), dim3(1), 0, 0); return 0; }
[TEST 4] hipify-perl API call translation...
[TEST 4] PASS: cudaMalloc -> hipMalloc
[TEST 4] PASS: cudaMemcpy -> hipMemcpy
[TEST 4] PASS: cudaDeviceSynchronize -> hipDeviceSynchronize
[TEST 4] PASS: cudaFree -> hipFree
All hipify CUDA tests passed.
autopkgtest [12:18:01]: test hipify-cuda: -----------------------]
autopkgtest [12:18:01]: test hipify-cuda: - - - - - - - - - - results - - -
- - - - - - -
hipify-cuda PASS
autopkgtest [12:18:02]: @@@@@@@@@@@@@@@@@@@@ summary
hipify PASS
hipify-cuda PASS
[ Where problems could occur ]
1. CUDA 13.0 function remapping (low risk): CUDA driver API functions with
ABI changes in CUDA 13.0 are now flagged as unsupported rather than
translated. Users invoking hipify-clang on code using these specific
functions against a CUDA 13.0 SDK will receive a diagnostic where
previously they would have received a (potentially incorrect) mapping.
On CUDA 12.x SDKs there is no change in behaviour.
2. LLVM 22 runtime dependency (low risk): hipify-clang now requires
libclang-common-22-dev at runtime. On Ubuntu Stonking, LLVM 22 is the
default and will be present; on older releases this upload does not
apply.
[ Other Info ]
* hipify packages (hipify-clang, hipify-perl) are standalone tools, not
libraries. There are no shared library symbols to track and no SONAME.
* This update is part of the coordinated ROCm 7.2.4 stack release.
* PPA: https://launchpad.net/~igorluppi/+archive/ubuntu/hipify-7.2.3
* Upstream version comparison:
https://github.com/ROCm/hipify/compare/rocm-7.1.1...rocm-7.2.4
* Target: Resolute
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2153789
Title:
SRU: New upstream version 7.2.4
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/hipify/+bug/2153789/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs