MPCR: Multi- And Mixed-Precision Computations

Designed for multi- and mixed-precision computations, accommodating 64-bit and 32-bit data structures. This flexibility enables fast execution across various applications. The package enhances performance by optimizing operations in both precision levels, which is achieved by integrating with high-speed 'BLAS' and 'LAPACK' libraries like 'MKL' and 'OpenBLAS'. Including a 32-bit option caters to applications where high precision is unnecessary, accelerating computational processes whenever feasible. The package also provides support for tile-based algorithms in three linear algebra operations: CHOL(), TRSM(), and GEMM(). The tile-based algorithm splits the matrix into smaller tiles, facilitating parallelization through a predefined Directed Acyclic Graph (DAG) for each operation. Enabling 'OpenMP' enhances the efficiency of these operations, leveraging multi-core parallelism. In this case, 'MPCR' facilitates mixed-precision execution by permitting varying precision levels for different tiles. This approach is advantageous in numerous applications, as it maintains the accuracy of the application while accelerating execution in scenarios where single-precision alone does not significantly affect the accuracy of the application.

Version: 1.1.2
Depends: R (≥ 3.6.0)
Imports: methods, Rcpp (≥ 1.0.9)
OS_type: unix
Published: 2024-05-28
DOI: 10.32614/CRAN.package.MPCR
Author: David Helmy [aut], Sameh Abdulah [cre], KAUST King Abdullah University of Science and Technology [fnd, cph]
Maintainer: Sameh Abdulah <sameh.abdulah at>
License: GPL (≥ 3)
NeedsCompilation: yes
SystemRequirements: CMake (>= 3.19.4) , C++ (>= 11) , git (>= 2.0.0)
CRAN checks: MPCR results [issues need fixing before 2024-06-27]


Reference manual: MPCR.pdf
Vignettes: mpcr


Package source: MPCR_1.1.2.tar.gz
Windows binaries: r-devel: not available, r-release: not available, r-oldrel: not available
macOS binaries: r-release (arm64): not available, r-oldrel (arm64): not available, r-release (x86_64): MPCR_1.1.2.tgz, r-oldrel (x86_64): MPCR_1.1.2.tgz
Old sources: MPCR archive


Please use the canonical form to link to this page.