首页> 外文期刊>図書館情報メデイア研究 >Scilabにおける高精度演算環境MuPATの実装
【24h】

Scilabにおける高精度演算環境MuPATの実装

机译:在Scilab中实现高精度计算环境MuPAT

获取原文
获取原文并翻译 | 示例
           

摘要

浮動小数点演算では,丸め誤差の影響は避けられず,演算結果の検証などには現在主流の倍精度演算よりも高精度な演算が必要となる.そこでわれわれは,高精度演算環境MuPAT(Multiple Precision Arithmetic Toolbox)を対話型数値計算ソフトウェアScilab上に実装した.MuPATでは,倍精度,4倍精度,8倍精度演算で共通の演算子や関数を使用できる.プログラムの変更が最小限で済むため高精度演算への切り替えが簡単にでき,部分的な高精度化や混合精度演算も可能である.また,C言語の外部関数を利用することで,演算の高速化を達成している.外部関数を利用したMuPATの高精度演算は,Scilabの機能のみの実装よりも180~1200倍高速である.今回,新たに疎行列形式を導入し,より少ないメモリと実行時間で高精度演算が利用できるようになった.8倍精度演算の場合,行列の非零要素率が80%以下の場合,使用メモリ量は密行列データ型よりも小さくなる.行列べクトル積では密行列データ型の1~2倍,行列加算では7~21倍,行列積では83~900倍高速に実行できる.本稿では,8倍精度演算を中心に,Scilabにおける高精度演算の具体的な実装方法,外部関数を利用した高速化,疎行列形式への対応について詳細を報告する.%To analyze errors in numerical computation, easily usable high precision arithmetic is important. We have developed a quadruple and octuple precision arithmetic toolbox named MuPAT(Multiple Precision Arithmetic Toolbox) on Scilab. Using MuPAT, the users can use the same operators and functions to double, quadruple and octuple precision numbers and mixed precision arithmetic is also available. We have also developed a high speed implementation with external C routines. MuPAT with external routines can perform 180~1200 times faster than MuPAT without external routine. MuPAT has sparse data structure for quadruple and octuple precision and the users can treat large matrices with lower memory consumption and small computation time. If the spaxsity is less than 80%, the memory consumption of sparse data structure for octuple precision is smaller than that of dense data structure. Compared with dense data structure, the computation speed of octuple precision arithmetic with sparse data structure is 1~2 times faster at matrix vector product, 7~21 times faster at matrix addition and 83~900 times faster at matrix multiplication. In this paper, we describe the detail of the basic implementation method and acceleration of MuPAT, and the implementation method of sparse data structures on Scilab.
机译:在浮点运算中,舍入误差的影响是不可避免的,为了验证运算结果,需要比当前主流的双精度算法更高的精度,因此,我们使用MuPAT(多精度算术环境)。已在交互式数值计算软件Scilab上实现了Toolbox),MuPAT允许在双精度,四精度和八精度运算中使用常见的运算符和函数。转换到算术运算很容易,可以实现部分精度和混合精度算术,并且通过使用C语言的外部函数,可以实现高速算术。 MuPAT的高精度算法比仅Scilab函数的实现快180到1200倍,这一次,我们引入了一种新的稀疏矩阵格式,从而可以以较少的内存和执行时间使用高精度的算法。在8精度算术的情况下,当矩阵的非零元素比率为80%或更小时,所使用的内存量将小于密集矩阵数据类型的内存量。两倍或矩阵加法的执行速度可以提高7到21倍,矩阵乘法的执行速度可以达到83到900倍,本文重点研究八倍精度算法,并在Scilab和外部函数中使用了高精度算法的具体实现方法。我们报告了加速的详细信息,并支持稀疏矩阵格式。%为了分析数值计算中的错误,易于使用的高精度算术非常重要。我们已经开发了一个名为MuPAT的四重和八重精度算术工具箱(Multiple Precision Arithmetic Toolbox)。 Scilab。使用MuPAT,用户可以使用相同的运算符和函数对双精度,四精度和八精度数进行运算,并且还可以使用混合精度算术。使用外部C例程进行调试。使用外部例程的MuPAT的执行速度比不使用外部例程的MuPAT的执行速度快180-1200倍.MuPAT的数据结构稀疏,具有四倍和八倍的精度,并且用户可以以较低的内存消耗和较小的计算时间处理大型矩阵。稀疏度小于80%,八进制精度的稀疏数据结构的内存消耗小于密集数据结构的内存消耗。与密集数据结构相比,八进制精度算法与稀疏数据结构的计算速度快1-2倍在矩阵向量乘积上,矩阵相加的速度快7〜21倍,矩阵相乘的速度快83〜900倍。本文详细介绍了MuPAT的基本实现方法和加速,以及稀疏数据结构的实现方法。 Scilab。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号