MPCR: Multi Precision Computing

Provides new data-structure support for multi-precision computing for R users. The package supports 16-bit, 32-bit, and 64-bit operations. To the best of our knowledge, 'MPCR' differs from the currently available packages in the following: 'MPCR' introduces a new data structure that supports three different precisions (16-bit, 32-bit, and 64-bit), allowing for optimized memory allocation based on the desired precision. This feature offers significant advantages in memory optimization. 'MPCR' extends support to all basic linear algebra methods across different precisions. Optional GPU acceleration via CUDA is available for 32-bit and 64-bit operations when CUDA Toolkit is detected during installation, while 16-bit operations are GPU-only and limited to matrix-matrix multiplication. 'MPCR' maintains a consistent interface with normal R functions, allowing for seamless code integration and a user-friendly experience.

Version: 2.1.1
Depends: R (≥ 3.6.0)
Imports: methods, Rcpp (≥ 1.0.9)
Suggests: R.rsp
OS_type: unix
Published: 2026-03-15
DOI: 10.32614/CRAN.package.MPCR
Author: David Helmy [aut, cph], Sameh Abdulah [cre, cph], KAUST King Abdullah University of Science and Technology [fnd, cph], Brightskies [cph]
Maintainer: Sameh Abdulah <sameh.abdulah at kaust.edu.sa>
License: GPL (≥ 3)
URL: https://github.com/stsds/MPCR
NeedsCompilation: yes
SystemRequirements: C++17, CMake (>=3.20), CUDA (>=11.2)
Citation: MPCR citation info
CRAN checks: MPCR results

Documentation:

Reference manual: MPCR.html , MPCR.pdf
Vignettes: MPCR: Multi-Precision Computing in R (source)

Downloads:

Package source: MPCR_2.1.1.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): not available, r-oldrel (x86_64): not available
Old sources: MPCR archive

Linking:

Please use the canonical form https://CRAN.R-project.org/package=MPCR to link to this page.