MPCR: Multi- and Mixed-Precision Computations Package in R

Mary Lai O. Salvana, Sameh Abdulah, Minwoo Kim, David Helmy, Ying Sun, Marc G. Genton
{"title":"MPCR: Multi- and Mixed-Precision Computations Package in R","authors":"Mary Lai O. Salvana, Sameh Abdulah, Minwoo Kim, David Helmy, Ying Sun, Marc G. Genton","doi":"arxiv-2406.02701","DOIUrl":null,"url":null,"abstract":"Computational statistics has traditionally utilized double-precision (64-bit)\ndata structures and full-precision operations, resulting in\nhigher-than-necessary accuracy for certain applications. Recently, there has\nbeen a growing interest in exploring low-precision options that could reduce\ncomputational complexity while still achieving the required level of accuracy.\nThis trend has been amplified by new hardware such as NVIDIA's Tensor Cores in\ntheir V100, A100, and H100 GPUs, which are optimized for mixed-precision\ncomputations, Intel CPUs with Deep Learning (DL) boost, Google Tensor\nProcessing Units (TPUs), Field Programmable Gate Arrays (FPGAs), ARM CPUs, and\nothers. However, using lower precision may introduce numerical instabilities\nand accuracy issues. Nevertheless, some applications have shown robustness to\nlow-precision computations, leading to new multi- and mixed-precision\nalgorithms that balance accuracy and computational cost. To address this need,\nwe introduce MPCR, a novel R package that supports three different precision\ntypes (16-, 32-, and 64-bit) and their combinations, along with its usage in\ncommonly-used Frequentist/Bayesian statistical examples. The MPCR package is\nwritten in C++ and integrated into R through the \\pkg{Rcpp} package, enabling\nhighly optimized operations in various precisions.","PeriodicalId":501215,"journal":{"name":"arXiv - STAT - Computation","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2024-06-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - STAT - Computation","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2406.02701","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Computational statistics has traditionally utilized double-precision (64-bit) data structures and full-precision operations, resulting in higher-than-necessary accuracy for certain applications. Recently, there has been a growing interest in exploring low-precision options that could reduce computational complexity while still achieving the required level of accuracy. This trend has been amplified by new hardware such as NVIDIA's Tensor Cores in their V100, A100, and H100 GPUs, which are optimized for mixed-precision computations, Intel CPUs with Deep Learning (DL) boost, Google Tensor Processing Units (TPUs), Field Programmable Gate Arrays (FPGAs), ARM CPUs, and others. However, using lower precision may introduce numerical instabilities and accuracy issues. Nevertheless, some applications have shown robustness to low-precision computations, leading to new multi- and mixed-precision algorithms that balance accuracy and computational cost. To address this need, we introduce MPCR, a novel R package that supports three different precision types (16-, 32-, and 64-bit) and their combinations, along with its usage in commonly-used Frequentist/Bayesian statistical examples. The MPCR package is written in C++ and integrated into R through the \pkg{Rcpp} package, enabling highly optimized operations in various precisions.
MPCR:R 中的多精度和混合精度计算软件包
计算统计传统上使用双精度(64 位)数据结构和全精度运算,导致某些应用的精度高于所需的精度。最近,人们对探索低精度方案的兴趣日益浓厚,这种方案既能降低计算复杂度,又能达到所需的精度水平。英伟达™(NVIDIA®)V100、A100 和 H100 GPU(针对混合精度计算进行了优化)中的张量内核、具有深度学习(DL)功能的英特尔 CPU、谷歌张量处理单元(TPU)、现场可编程门阵列(FPGA)、ARM CPU 等新硬件的出现放大了这一趋势。然而,使用较低精度可能会带来数值不稳定性和精度问题。尽管如此,一些应用已经显示出对低精度计算的鲁棒性,从而产生了兼顾精度和计算成本的新型多精度和混合精度算法。为了满足这一需求,我们介绍了 MPCR,这是一个支持三种不同精度类型(16 位、32 位和 64 位)及其组合的新型 R 软件包,并介绍了它在常用的 Frequentist/Bayesian 统计示例中的用法。MPCR 软件包用 C++ 编写,并通过 \pkg{Rcpp} 软件包集成到 R 中,实现了各种精度下的高度优化操作。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信