Release Notes#
This section lists significant changes, new features, performance improvements, and various issues. Unless noted, listed issues should not impact functionality. When functionality is impacted, we offer a work-around to avoid the issue (if available).
0.1.0#
The first early access (EA) release of cuSolverDx library.
New Features#
Support for batched or non-batched Cholesky decomposition.
Support for batched or non-batched linear system solves with multiple right-hand sides using Cholesky factors.
Support for batched or non-batched LU decomposition without pivoting.
Support for batched or non-batched linear system solves with multiple right-hand sides using LU factors without pivoting.
Support for SM70 - SM90 CUDA architectures.
Multiple examples included.
Known Issues#
For CUDA Toolkits older than 12.1 Update 1 when using NVRTC and nvJitLink to perform runtime compilation of kernels that use cuSolverDx it is required to use fatbin file
libcusolverdx.fatbinwhen linking instead oflibcusolverdx.a. Path to the fatbin library file is defined incusolverdx_FATBINcmake variable.NVCC compiler in CUDA Toolkit from 12.2 to 12.4 reports incorrect compilation error when
value_typetype of a solver description type is used. The affected code with workarounds are presented below. The issue is fixed in CTK 12.5 and newer.using Solver = decltype(Size<32>() + Precision<double>() + Type<type::complex>() + Function<function::potrf>() + SM<800>() + Block()); using type = typename Solver::value_type; // compilation error // Workaround #1 using type = typename decltype(Solver())::value_type; // Workaround #2 (used in cuSolverDx examples) template <typename T> using value_type_t = typename T::value_type; using type = value_type_t<Solver>;