Quadruple 128 bit Floating Point Library 1.0

许可: 免费 ‎文件大小: 83.97 KB
‎用户评分: 2.3/5 - ‎9 ‎评分

已签名的 128 位浮点数据类型库,具有 64 个有效精度位(内置 Double 类型为 53 位)和 64 位指数(双精度为 11 位)。对于精度更高、范围更大,Quads 在处理非常大或非常小的值(如概率模型中的值)时特别有用。 采用较大的固定精度而不是任意精度类型(如 Java 的 BigDecimal)意味着,虽然比内置算术慢,但惩罚只是数量级或更少,因此在许多数学重的应用中仍然可行。例如,在英特尔酷睿 i5-2410M 笔记本电脑上,十亿倍数需要 17 秒的双精度值,使用重载 * 运算符的 Quad 值需要 135 秒,使用 Multiply() 方法只需 76 秒(* 的较高开销是由于 .compiler Net/JIT 优化器的内联逻辑差)。相比之下,乘法下溢和溢出的常用解决方法(求和对数)需要 130 秒。除了比日志算术更快、更精确之外,Quads 还无需记住哪些变量是 log'd 并来回转换为 log'd 值,从而简化了代码。 Quadruple 库以 C#(包括源代码)和目标 .Net 4.0 编写;它也应该很容易移植到 .Net 2.0 和类似的语言(如 Java),并直接进行修改。

版本历史记录

  • 版本 1.0 发布于 2011-06-15
    初始版本

软件信息