如何在julia中实现128bit浮点数的支持?

相关研究中需要128bit 浮点数运算。查询最新版julia文档中,现在已有对128 bit 整数的支持,但浮点数只支持到64位。如何在julia中实现128bit浮点数的支持,并使得主要数值运算库支持相关运算?

在Julia中,可以使用BigFloat类型来定义高精度浮点数。默认情况下,BigFloat类型的精度是256位,但是可以通过设置precision参数来更改精度。要定义一个128位的BigFloat,可以这样做:

x = BigFloat(2.0, precision=128)

这将创建一个128位精度的BigFloat类型的变量x,并将其初始化为值为2.0的BigFloat

您还可以使用字符串来初始化BigFloat类型的变量,例如:

x = parse(BigFloat, "1.23456789012345678901234567890123456789", precision=128)

这将创建一个128位精度的BigFloat类型的变量x,并将其初始化为字符串表示的值。

请注意,由于高精度浮点数类型的计算成本较高,因此在处理大量数据时,使用高精度浮点数类型可能会导致性能问题。


以上是AI的回答,您128位精度的足够了。

128 位不要用 BigFloat,很慢的。
用 DoubleFloats.jl 或者 Quadmath.jl。

3 个赞