Public bug reported:
[ Impact ]
hipify 7.2.3 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.3 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.3+dfsg-0ubuntu1 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.3 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.3
* Target: Resolute
** Affects: hipify (Ubuntu)
Importance: Undecided
Assignee: Igor Luppi (igorluppi)
Status: In Progress
** Changed in: hipify (Ubuntu)
Assignee: (unassigned) => Igor Luppi (igorluppi)
** Changed in: hipify (Ubuntu)
Status: New => In Progress
** Description changed:
[ Impact ]
- hipify 7.2.3 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:
+ hipify 7.2.3 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.
+ 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.3 adds a search for the v999
- variant so cuDNN 9.10.2+ installations are detected correctly.
+ 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.3 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):
+ 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).
+ 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.
+ 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.3+dfsg-0ubuntu1 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:
+ 1. Build:
+ - sbuild or dpkg-buildpackage succeeds.
+ - dpkg --compare-versions 7.2.3+dfsg-0ubuntu1 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.
+ 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.
+ 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.3 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.3
+ * 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.3 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.3
+ * 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.3
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