Eric Guthmuller;César Fuguet;Andrea Bocco;Jérôme Fereyre;Riccardo Alidori;Ihsane Tahir;Yves Durand
{"title":"Xvpfloat:用于可变扩展精度浮点运算的 RISC-V ISA 扩展","authors":"Eric Guthmuller;César Fuguet;Andrea Bocco;Jérôme Fereyre;Riccardo Alidori;Ihsane Tahir;Yves Durand","doi":"10.1109/TC.2024.3383964","DOIUrl":null,"url":null,"abstract":"A key concern in the field of scientific computation is the convergence of numerical solvers when applied to large problems. The numerical workarounds used to improve convergence are often problem specific, time consuming and require skilled numerical analysts. An alternative is to simply increase the working precision of the computation, but this is difficult due to the lack of efficient hardware support for extended precision. We propose \n<i>Xvpfloat</i>\n, a RISC-V ISA extension for dynamically variable and extended precision computation, a hardware implementation and a full software stack. Our architecture provides a comprehensive implementation of this ISA, with up to 512 bits of significand, including full support for common rounding modes and heterogeneous precision arithmetic operations. The memory subsystem handles IEEE 754 extendable formats, and features specialized indexed loads and stores with hardware-assisted prefetching. This processor can either operate standalone or as an accelerator for a general purpose host. We demonstrate that the number of solver iterations can be reduced up to \n<inline-formula><tex-math>$5\\boldsymbol{\\times}$</tex-math></inline-formula>\n and, for certain, difficult problems, convergence is only possible with very high precision (\n<inline-formula><tex-math>$\\boldsymbol{\\geq}$</tex-math></inline-formula>\n384 bits). This accelerator provides a new approach to accelerate large scale scientific computing.","PeriodicalId":13087,"journal":{"name":"IEEE Transactions on Computers","volume":"73 7","pages":"1683-1697"},"PeriodicalIF":3.6000,"publicationDate":"2024-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10488759","citationCount":"0","resultStr":"{\"title\":\"Xvpfloat: RISC-V ISA Extension for Variable Extended Precision Floating Point Computation\",\"authors\":\"Eric Guthmuller;César Fuguet;Andrea Bocco;Jérôme Fereyre;Riccardo Alidori;Ihsane Tahir;Yves Durand\",\"doi\":\"10.1109/TC.2024.3383964\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"A key concern in the field of scientific computation is the convergence of numerical solvers when applied to large problems. The numerical workarounds used to improve convergence are often problem specific, time consuming and require skilled numerical analysts. An alternative is to simply increase the working precision of the computation, but this is difficult due to the lack of efficient hardware support for extended precision. We propose \\n<i>Xvpfloat</i>\\n, a RISC-V ISA extension for dynamically variable and extended precision computation, a hardware implementation and a full software stack. Our architecture provides a comprehensive implementation of this ISA, with up to 512 bits of significand, including full support for common rounding modes and heterogeneous precision arithmetic operations. The memory subsystem handles IEEE 754 extendable formats, and features specialized indexed loads and stores with hardware-assisted prefetching. This processor can either operate standalone or as an accelerator for a general purpose host. We demonstrate that the number of solver iterations can be reduced up to \\n<inline-formula><tex-math>$5\\\\boldsymbol{\\\\times}$</tex-math></inline-formula>\\n and, for certain, difficult problems, convergence is only possible with very high precision (\\n<inline-formula><tex-math>$\\\\boldsymbol{\\\\geq}$</tex-math></inline-formula>\\n384 bits). This accelerator provides a new approach to accelerate large scale scientific computing.\",\"PeriodicalId\":13087,\"journal\":{\"name\":\"IEEE Transactions on Computers\",\"volume\":\"73 7\",\"pages\":\"1683-1697\"},\"PeriodicalIF\":3.6000,\"publicationDate\":\"2024-04-02\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10488759\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"IEEE Transactions on Computers\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://ieeexplore.ieee.org/document/10488759/\",\"RegionNum\":2,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q2\",\"JCRName\":\"COMPUTER SCIENCE, HARDWARE & ARCHITECTURE\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"IEEE Transactions on Computers","FirstCategoryId":"94","ListUrlMain":"https://ieeexplore.ieee.org/document/10488759/","RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q2","JCRName":"COMPUTER SCIENCE, HARDWARE & ARCHITECTURE","Score":null,"Total":0}
引用次数: 0
摘要
科学计算领域的一个关键问题是数值求解器在应用于大型问题时的收敛性。用于提高收敛性的数值变通方法往往针对具体问题,耗费时间,而且需要熟练的数值分析人员。另一种方法是简单地提高计算的工作精度,但由于缺乏对扩展精度的有效硬件支持,这种方法很难实现。我们提出了 Xvpfloat,一种用于动态可变和扩展精度计算的 RISC-V ISA 扩展、硬件实现和完整的软件栈。我们的架构提供了该 ISA 的全面实施,具有高达 512 位的示值,包括对常见舍入模式和异构精度算术运算的全面支持。内存子系统可处理 IEEE 754 扩展格式,并具有专门的索引加载和存储功能以及硬件辅助预取功能。该处理器既可独立运行,也可作为通用主机的加速器。我们证明,求解器迭代次数最多可减少 5 美元(oldsymbol{times}$),而且对于某些困难问题,只有在精度非常高(384 位)的情况下才有可能收敛。该加速器为加速大规模科学计算提供了一种新方法。
Xvpfloat: RISC-V ISA Extension for Variable Extended Precision Floating Point Computation
A key concern in the field of scientific computation is the convergence of numerical solvers when applied to large problems. The numerical workarounds used to improve convergence are often problem specific, time consuming and require skilled numerical analysts. An alternative is to simply increase the working precision of the computation, but this is difficult due to the lack of efficient hardware support for extended precision. We propose
Xvpfloat
, a RISC-V ISA extension for dynamically variable and extended precision computation, a hardware implementation and a full software stack. Our architecture provides a comprehensive implementation of this ISA, with up to 512 bits of significand, including full support for common rounding modes and heterogeneous precision arithmetic operations. The memory subsystem handles IEEE 754 extendable formats, and features specialized indexed loads and stores with hardware-assisted prefetching. This processor can either operate standalone or as an accelerator for a general purpose host. We demonstrate that the number of solver iterations can be reduced up to
$5\boldsymbol{\times}$
and, for certain, difficult problems, convergence is only possible with very high precision (
$\boldsymbol{\geq}$
384 bits). This accelerator provides a new approach to accelerate large scale scientific computing.
期刊介绍:
The IEEE Transactions on Computers is a monthly publication with a wide distribution to researchers, developers, technical managers, and educators in the computer field. It publishes papers on research in areas of current interest to the readers. These areas include, but are not limited to, the following: a) computer organizations and architectures; b) operating systems, software systems, and communication protocols; c) real-time systems and embedded systems; d) digital devices, computer components, and interconnection networks; e) specification, design, prototyping, and testing methods and tools; f) performance, fault tolerance, reliability, security, and testability; g) case studies and experimental and theoretical evaluations; and h) new and important applications and trends.