问题
使用norm()函数,在gpu和cpu上得到的结果不一致
代码
import taichi as ti
ti.init(arch=ti.gpu, debug=True, default_fp=ti.f64)
coord = ti.Vector.field(2, ti.f64, 2)
coord[0] = ti.Vector([0.0, 0.0])
coord[1] = ti.Vector([0.0, 0.3])
@ti.kernel
def cal():
a = coord[0] - coord[1]
b = a.norm()
print(b)
cal()
output:
[Taichi] version 1.1.2, llvm 10.0.0, commit f25cf4a2, win, python 3.9.12
[Taichi] Starting on arch=cuda
0.299999952316
在gpu上得到的结果为:0.299999952316,而在cpu上可以得到:0.300000000000
谢谢!