Faster Scientific Simulations with New FP64 Algorithms in NVIDIA cuBLAS NVIDIA's cuBLAS in CUDA Toolkit 13.4.2 now runs double-precision DGEMM and ZGEMM on integer Tensor Cores with no application code changes, using two new algorithms, Ozaki-II and the 2M method, built on NVIDIA's Automatic Dynamic Precision framework. NVIDIA reports cuBLAS DGEMM with Ozaki-II runs 5.5x and 3.9x faster than native FP64 on NVIDIA VR NVL72 and NVIDIA GB200 respectively and 2x faster than Ozaki-I on GB200, while ZGEMM with the 2M algorithm achieves a 5x speedup over native complex FP64 on GB200. NVIDIA validated the algorithms on quantum chemistry CCSD, which reached 2x and 1.4x end-to-end speedup over native FP64 on VR NVL72 and GB200, and on materials science code BerkeleyGW, which reached 6.6x and 3.9x speedup over native ZGEMM on VR NVL72 and GB200. Many scientific simulations, from molecular chemistry to materials science, spend the majority of their execution time computing high-precision dense general matrix multiplications GEMM . These operations are called DGEMM for real 64-bit floating-point numbers and ZGEMM for complex 64-bit floating-point numbers. cuBLAS is widely used by HPC and AI applications to accelerate GEMM and other Basic Linear Algebra Subprograms BLAS on NVIDIA GPUs. Rapid advances in lower-precision hardware have motivated exploration of a new class of algorithms that deliver full double-precision results on the faster integer Tensor Cores. With CUDA Toolkit 13.4.2, cuBLAS no longer has to choose between accuracy and speed. cuBLAS breaks each double-precision number into integer pieces, multiplies them on the GPU’s Tensor Cores, and reassembles the exact result. The answers keep full double-precision accuracy, but the work runs on faster hardware. Two new algorithms make this more efficient: Ozaki-II https://doi.org/10.48550/arXiv.2504.08009 needs fewer integer multiplications than the earlier Ozaki-I https://dl.acm.org/doi/10.1145/3731599.3767539 approach, and the 2M method https://research.nvidia.com/publication/2026-06 2m-multiplication-algorithm-complex-matrices cuts a complex matrix multiplication from four real multiplications to two. This builds on the Automatic Dynamic Precision ADP framework https://dl.acm.org/doi/10.1145/3773656.3773670 introduced in Unlocking Tensor Core Performance with Floating Point Emulation in cuBLAS https://developer.nvidia.com/blog/unlocking-tensor-core-performance-with-floating-point-emulation-in-cublas/ , which delivers higher double-precision FP64 matrix-multiplication performance by mapping FP64 arithmetic onto integer Tensor Cores while preserving native FP64 accuracy. cuBLAS delivers automatic acceleration of DGEMM and ZGEMM with no application code changes. Because speed matters only when accuracy is not compromised, we validate both on real-world applications: coupled cluster singles and doubles CCSD in quantum chemistry, and BerkeleyGW in materials science. This post explains how the algorithms work, shows benchmark and application results, and covers how to get started. Performance highlights cuBLAS in CUDA Toolkit 13.4.2 delivers the following performance gains: 1. cuBLAS DGEMM with Ozaki-II runs 5.5x and 3.9x faster than native FP64 on NVIDIA VR NVL72 and NVIDIA GB200, respectively. It’s also 2x faster than Ozaki-I on NVIDIA GB200. 2. CCSD case study using cuBLAS DGEMM with Ozaki-II achieves 2x and 1.4x end-to-end speedup over native FP64 on NVIDIA VR NVL72 and NVIDIA GB200 in FP64. In domain-specific mixed-precision mode, end-to-end speedup over native FP64 is 5x and 3.5x on NVIDIA VR NVL72 and NVIDIA GB200 respectively. 3. cuBLAS ZGEMM with 2M algorithm achieves a 5x speedup over native Complex FP64 CFP64 on NVIDIA GB200. 4. BerkeleyGW case study using cuBLAS ZGEMM with 2M algorithm achieves 6.6x and 3.9x speedup over native ZGEMM on NVIDIA VR NVL72 and NVIDIA GB200 respectively. 5. cuBLAS DGEMM with Ozaki-II achieves up to 175, 147, and 37 TFLOPS on NVIDIA VR NVL72, NVIDIA GB200, NVIDIA RTX PRO 6000 respectively. From Ozaki-I to Ozaki-II Ozaki-I and Ozaki-II schemes share a common first step, but differ in how the big integer multiplication is performed. Both the schemes align the exponents of the input matrices and convert them to a shared-exponent, variable-length integer representation so that products accumulate exactly on integer Tensor Cores. cuBLAS uses heuristics to automatically choose between Ozaki-I and Ozaki-II for best performance. The integer width is chosen by ADP at runtime or can also be set explicitly by the user. Ozaki-I breaks each big integer into 8-bit slices and multiplies slices of A against slices of B in a triangular pattern, so the number of Tensor Core GEMMs grows with the square of the slice count. Ozaki-II uses a faster big-integer multiplication algorithm based on the Chinese Remainder Theorem CRT . It reduces each quantized operand modulo a set of small pairwise-coprime integers, performs exactly one integer GEMM per modulus, and reconstructs the exact product from the residues. With Ozaki-II, the GEMM count is linear in the number of moduli, whereas Ozaki-I grows with the square of the slice count, so the advantage widens as the accuracy target rises. At the accuracy required to match FP64, Ozaki-I needs roughly twice as many Tensor Core GEMMs as Ozaki-II. Because Ozaki-II materializes one residue pair per modulus, a naive implementation would carry a much larger workspace than Ozaki-I. However, cuBLAS already applies the memory-parsimonious tiling introduced for Ozaki-I in CTK 13.3 to Ozaki-II scheme as well, discarding each residue pair immediately after its GEMM. This results in a more manageable workspace size. cuBLAS ADP framework is designed to provide accuracy guarantees comparable to, or better than, standard floating-point GEMM algorithms. More information on the accuracy of fixed-point methods can be found in the references. If at run-time, the number of mantissa bits required to preserve FP64-equivalent accuracy exceeds the library default or a user-supplied maximum, cuBLAS falls-back to a code path that utilizes the native FP64 MMA instructions. So, applications can safely use cuBLAS in their production deployments without worrying about numerical accuracy. Figure 1, below, shows the speedup of cuBLAS DGEMM using Ozaki-II over Ozaki-I on GB200. DGEMM performance NVIDIA Rubin Rubin introduces a new numeric format, TI16 12-bit integer in sign-magnitude format with range of -2047, +2047 , that is aptly suited for the acceleration of Ozaki scheme computations. cuBLAS 13.4 uses TI16 type for acceleration of Ozaki-I and Ozaki-II computations through the tcgen05.mma instruction on NVIDIA Rubin GPUs compute capability 10.7 . Figure 2, below, shows the speedup of cuBLAS DGEMM using Ozaki-II over native FP64 on VR NVL72. DGEMM application performance – CCSD in quantum chemistry To demonstrate the potential application performance of Ozaki-II DGEMM, we consider the use case of coupled cluster singles and doubles CCSD . CCSD is a foundational post-DFT method in electronic structure that together with the T perturbative correction not considered here forms the “gold standard” of quantum chemistry. Moreover, the response of CCSD to various perturbations yields the EOM-CCSD treatment of electronic excited states and the CCSD lambda treatment of property computations. CCSD is noteworthy for its very high cost of dense FP64 tensor contractions, which the Ozaki-II scheme in cuBLAS can significantly accelerate. A small CCSD demonstration was implemented using cuBLAS in CTK 13.4.2 for the main tensor contractions, with the coupled cluster problem setup accelerated by cuEST v0.2.2. A standard FP64 single-GPU T1-transformed restricted CCSD approach was constructed in the density fitting representation. Figure 3, below, shows performance data for frozen-core CCSD/cc-pVTZ for five mid-sized members of the S22 database — these systems contain 24–28 atoms and roughly 590–630 atomic orbitals. Ozaki-II DGEMM with ESC guaranteeing full FP64 precision causes performance to rise monotonically with generation, yielding a total speedup of 4.7x of Rubin over A100. Another compelling possibility is to use an application-specific mixed precision mode with a fixed Ozaki-II mantissa bit budget, here selected to be 32 mantissa bits. This also yields monotonic performance gains, with total speedup now at 11.5x native FP64 A100. With ESC at full FP64 quality, results are indistinguishable from native FP64 precision – errors in the CCSD correlation energy are <10