版本发布 8
## CUDA v5.9.4 [Diff since v5.9.3](https://github.com/JuliaGPU/CUDA.jl/compare/v5.9.3...v5.9.4) **Merged pull requests:** - XsyevBatched! interface accepting 3D StridedCuArray (#2951) (@quantumsteve) - Fix complex CSC * dense vec (#2957) (@kshyatt) - Fixes zero-dim matmatmul & matvecmul (#2958) (@tam724) - Update Project.toml (#2969) (@kshyatt) - Add @inbounds to SparseArrays.nzrange for CuSparseDeviceMatrixCSC (#2970) (@Zinoex) **Closed issues:** - `rmul!` does not respect "strong zero": `NaN*false=0.0` (#2607) - Wrong sparse matrix-vector multiplication after v5.9+ (#2945) - Wrong matmul with empty matrices (#2952) - Old dependencies is killing CI (#2959) - RTX 5080 (Blackwell, sm_120) is very slow in CUDA.jl compared to native CUDA (on WSL2) (#2964) - Accessing cuCollections from CUDA.jl --- static_map in particular (#2966)
## CUDA v5.9.1 [Diff since v5.9.0](https://github.com/JuliaGPU/CUDA.jl/compare/v5.9.0...v5.9.1) **Merged pull requests:** - Make `resize!` run faster (#2828) (@huiyuxie) - Add SparseArrays functionality for CuSparseDeviceColumnView (#2904) (@Zinoex) - Fix typo in kernel compilation requirements section (#2905) (@J-C-Q) - Change `device!` function parameter type from `Int32` to `Int` (#2906) (@simone-silvestri) - Fix memory corruption in mapreduce (#2907) (@christiangnrd) - Increase test timeout (#2909) (@christiangnrd) - Fix copying between Symmetric and Hermitian matrices. (#2913) (@maleadt) - Add support for 3-arg dot (#2914) (@maleadt) - Change input and output strides to use Int64 (#2915) (@J-C-Q) - Backports for 5.8.5 (#2916) (@christiangnrd) - Fix `CUDA.return_type` in 1.12 (#2917) (@christiangnrd) - Simplify test runner. (#2918) (@maleadt) - Remove wrappers for deprecated CUSPARSE functions (#2919) (@kshyatt) - Fix type instability in `KA.allocate` and friends (#2920) (@christiangnrd) - CompatHelper: bump compat for BFloat16s to 0.6, (keep existing compat) (#2921) (@github-actions[bot]) - WIP: CI tweaks for special jobs. (#2922) (@maleadt) - Unbreak cusolver test on 1.12 (#2923) (@kshyatt) - GPUToolbox compat v1 (#2924) (@christiangnrd) - Regenerate the wrappers for CUDA 13.0.1 (#2925) (@amontoison) - [CUSPARSE] Drop old code from CUDA 11 (#2926) (@amontoison) - Adding troubleshooting tips and command line execution info to profiling.md (#2927) (@evelyne-ringoot) - Extend symm/herm from Linalg on 1.12 (#2928) (@kshyatt) - Device RNG: test complex number types. (#2931) (@maleadt) - Actually fix the 1.12 symm/herm issue (#2932) (@kshyatt) - Update buildkite for the 1.12 release (#2933) (@kshyatt) - Avoid LLVM 18- generate non-existing min/max instructions (#2937) (@giordano) - Fix compatibility check. (#2939) (@maleadt) **Closed issues:** - Support for Julia 1.12 (#2866) - Tensor contractions on CUDA 13 cause CUTENSOR_STATUS_INTERNAL_ERROR (#2881) - LLVM 18- generates non-existing `min.NaN.f64`/`max.NaN.f64` instructions (#2886) - Docs - Minor issues in Tutorials section (#2895) - GPU stuck in OOM state (#2898) - New release with PrettyTables.jl v3 support (#2902) - Memory corruption in `sum(...; dims = 1)` (#2903) - sum(...; dims=(...)) on CuArrays gives large nondeterministic errors until warm-up with sequential reductions (#2910) - CUSOLVER test failure (#2912) - Incorrect bound for CUDA version support error - 7.5 is minimum for 13.0 (#2934)
## CUDA v5.8.4 [Diff since v5.8.3](https://github.com/JuliaGPU/CUDA.jl/compare/v5.8.3...v5.8.4) **Merged pull requests:** - Add a note suggesting users prefer PTX MMA over WMMA (#2816) (@kshyatt) - Benchmark reverse on bigger arrays (#2833) (@christiangnrd) - Always use generated `aligned_sizeof` (#2838) (@christiangnrd) - Test oldest set of dependencies on CI. (#2841) (@maleadt) - Update headers for CUDA 13. (#2842) (@maleadt) - Decode the CUPTI version. (#2843) (@maleadt) - [CUBLAS] Update wrapppers to use the ILP64 API (#2845) (@amontoison) - Ignore NVIDIA driver store CUDA libraries from system path warnings on Windows (#2847) (@huiyuxie) - CompatHelper: bump compat for PrettyTables to 3, (keep existing compat) (#2853) (@github-actions[bot]) - Extend LinearAlgebra norm2 (#2854) (@kshyatt) - Loosen compat bounds for CUDA_Runtime_Discovery for cudNN (#2855) (@kshyatt) - Support in-place rmul/lmul for Diagonals (#2856) (@kshyatt) - Loosen compat bounds for cuTENSOR (#2857) (@kshyatt) - Support rmul/lmul for mixed eltypes (#2858) (@kshyatt) - Support norm for Diagonal (#2860) (@kshyatt) - Fix cuDNN compat (#2861) (@kshyatt) - More mul extensions (#2862) (@kshyatt) - Bump actions/checkout from 4 to 5 (#2864) (@dependabot[bot]) - Relax cuDNN compat again. (#2865) (@kshyatt) - Try supporting CUDA 13 (and dropping CUDA 11) on CI (#2867) (@kshyatt) - mapreduce: remove block optimization. (#2869) (@maleadt) - Initial attempt to purge CUDA 11 (#2870) (@kshyatt) - Fix rmul for transpose/adjoint (#2871) (@kshyatt) - Backports for v5.8.4 (#2872) (@maleadt) - Test subpackages on CUDA 13 (#2873) (@kshyatt) - Update Project.toml for CUTENSOR (#2874) (@kshyatt) - Let cuQuantum soft fail on CI (#2875) (@kshyatt) - Update Project.toml for cuStateVec and cuTensorNet (#2876) (@kshyatt) - Update README to describe CI flags [skip tests] (#2877) (@kshyatt) - mapreduce: reinstate and fix block optimization (#2880) (@christiangnrd) - Add compatibility entry for B200 and other GPUs (#2882) (@giordano) - explicitly qualify Base constructors. (#2883) (@oscardssmith) - Remove CUPTI check now that CUDA 13 update 1 is out (#2884) (@kshyatt) - Trial support for Julia 1.12-rc (#2888) (@kshyatt) - Use new ScopedValues testsets on nightly (#2889) (@kshyatt) - Switch to texthighlighter to unbreak profile (#2891) (@kshyatt) - Revert "CompatHelper: bump compat for PrettyTables to 3, (keep existing compat)" (#2892) (@maleadt) **Closed issues:** - Illegal memory access after aligned_sizeof changes (#2790) - System library detection should ignore `nvcudart` (#2836) - Add version override preference to CUDA_Compiler_jll (or re-use CUDA_Runtime_jll's) (#2839) - PTX code compilation failure (#2844) - CUDA Driver 13.0 support (with cuDNN) (#2848) - Fails to respect local CUDA_Runtime_jll's request to compile with local ptxas (#2852) - CUDA Driver 13.0 support (with cuTENSOR) (#2850) - CUDA_Compiler_jll does not invalidate when changing CUDA_Runtime_jll's preferences (#2851) - Any strong reason to have DataFrames.jl as a dependency? (#2859) - Invalid kernel config generated by `mapreducedim!` with `SubArray` input and output (#2863) - Building or Precompiling CUDA errors in the Pkg prompt for CUDA_Compiler_jll (#2878) - Precompiling CUDA fails (#2879) - Bug? | Warning: CUDA runtime library `nvcudart_hybrid64.dll` was loaded from a system path (#2894) - Failed to compile PTX code (#2896)
## CUDA v5.8.1 [Diff since v5.8.0](https://github.com/JuliaGPU/CUDA.jl/compare/v5.8.0...v5.8.1) **Merged pull requests:** - CUSPARSE: Bugfixes for sparse vector broadcast. (#2780) (@maleadt)
## CUDA v5.8.0 [Diff since v5.7.3](https://github.com/JuliaGPU/CUDA.jl/compare/v5.7.3...v5.8.0) **Merged pull requests:** - SparseMatricesCSR Dispatch (#2720) (@Abdelrahman912) - Very rough implementation of bcast for CuSparseVector (#2733) (@kshyatt) - Possible fix for #2745, change args in call to `cusparseCreateBsr` (#2747) (@manuelbb-upb) - Simple tests for check and explain_eltype (#2748) (@kshyatt) - Test for printing OutOfGPUMemoryError (#2749) (@kshyatt) - Fix log_message pileup (#2750) (@fps) - Test for parse_limit (#2751) (@kshyatt) - unsafe_wrap for symbols (#2753) (@vchuravy) - Use thread adoption to handle log messages. (#2754) (@maleadt) - Add pre-commit configuration (#2755) (@vchuravy) - Broaden check for eltypes to make sure we don't allow invalid stuff (#2756) (@kshyatt) - Prefer aligned_sizeof (#2757) (@vchuravy) - More array tests (#2758) (@kshyatt) - A few more tests for CUSOLVER Q mats (#2759) (@kshyatt) - More tests for CuArrayPtr (#2760) (@kshyatt) - [CUSOLVER] Update gesvdp! (#2763) (@amontoison) - Get rid of unneeded version checks (#2765) (@kshyatt) - Remove second import of aligned_sizeof (#2767) (@vchuravy) - CUSPARSE SpGEMM: Support algorithms 2 and 3 (#2769) (@maleadt) - Update to CUDA 12.9. (#2772) (@maleadt) - Fix SPGEMM_ALGOS setup (#2773) (@jonas-schulze) - Support new functionality from KA 0.9.32 (#2774) (@michel2323) - cuTENSOR: Preserve storage type when multiplying (#2775) (@christiangnrd) - Update subpackages. (#2776) (@maleadt) - Remove the unnecessary reshape during mapreduce. (#2778) (@maleadt) **Closed issues:** - Type conversions in broadcast fails when compiling with `always_inline=true` (#2722) - cuDNN loses memory to log messages in Pluto.jl context (#2743) - `Xgesvdp!` failure when only requesting singular values (#2761) - CUDA 5.7.3 fails to precompile on Julia 1.12.0-beta2 (#2762) - aligned_sizeof with an existing identifier (#2766) - CUSPARSE_SPGEMM_ALG2 not working (#2768) - `sum!` throws dispatch error beyond a threshold number of rows (#2777)
## CUDA v5.7.3 [Diff since v5.7.2](https://github.com/JuliaGPU/CUDA.jl/compare/v5.7.2...v5.7.3) **Merged pull requests:** - Merge CSC/CSR broadcast kernels (#2731) (@kshyatt) - GPUToolbox v0.2 take 2 (#2736) (@christiangnrd) - Add dispatches to access device matrix data via SparseArrays interface (#2738) (@termi-official) - More tests for CuContext (#2739) (@kshyatt) - Fill in missing KA functionality (KA.functional + sparse matrices adaption from CUDAbackend) (#2740) (@Abdelrahman912) - Small tests and changes for coverage (#2742) (@kshyatt) - More tests and better error type for cusparse generic (#2744) (@kshyatt) - Restore the descriptors in CUSPARSE (#2746) (@amontoison)
## CUDA v5.7.2 [Diff since v5.7.1](https://github.com/JuliaGPU/CUDA.jl/compare/v5.7.1...v5.7.2) **Merged pull requests:** - Support disabling implicit synchronization (#2662) (@vchuravy) - More tests and bugfixes for CUSOLVER (#2707) (@kshyatt) - Set neutral element to zero for sparse reduce (#2710) (@kshyatt) - Bugfix and tests for cusolver/base (#2712) (@kshyatt) - Small fixes and missed tests for CUTENSORNET (#2713) (@kshyatt) - Even more tests and small fixes for CUTENSORNET (#2715) (@kshyatt) - Tests for CUSTATEVEC errors (#2716) (@kshyatt) - Add compat entries for recent devices and toolkits. (#2717) (@maleadt) - Split out copyto for texture arrays and add more tests (#2719) (@kshyatt) - Add a docstring for pointer (#2721) (@maleadt) - More CUSOLVER dense tests (#2723) (@kshyatt) - Tests for some helper functions (#2724) (@kshyatt) - More tests and bugfixing for CUSPARSE (#2725) (@kshyatt) - Add more methods for all versions to unstick tests (#2726) (@kshyatt) **Closed issues:** - Ability to opt out of / improved automatic synchronization between tasks for shared array usage (#2617) - maximum(abs, CuSparseMatrixCSR) returns Inf (#2705) - mapreduce(f, op, A) for sparse A is wrong if f(0) =/= 0 (#2709)
## CUDA v5.7.1 [Diff since v5.7.0](https://github.com/JuliaGPU/CUDA.jl/compare/v5.7.0...v5.7.1) **Merged pull requests:** - Tests for MIME printing and indexing (#2686) (@kshyatt) - Loosen VERSION check for sketchy test (#2688) (@kshyatt) - CompatHelper: bump compat for GPUToolbox to 0.2, (keep existing compat) (#2689) (@github-actions[bot]) - Even more sparse printing and tril/triu tests (#2692) (@kshyatt) - Even more sparse tests (#2695) (@kshyatt) - More tests and a matmatmul fix (#2697) (@kshyatt) - Sparse conversion tests (#2698) (@kshyatt) - Tests for descriptors (#2700) (@kshyatt) - More tests for some missing kron methods (#2701) (@kshyatt) - Don't duplicate const defs (#2703) (@kshyatt) - Exclude device-side sorting code from coverage (#2704) (@kshyatt) - More tests for CuRef/CuRefArray (#2706) (@kshyatt) - Update Project.toml (#2708) (@kshyatt) **Closed issues:** - GC corruption on 1.10 during cusparse/reduce tests (#2027) - Launch bounds interface (#2674) - Precompilation errors: `ERROR: LoadError: invalid redefinition of constant CUSPARSE.CuSparseUpperOrUnitUpperTriangular` (#2690)