对如下代码
@ti.kernel
def ttt():
for i in range(20000000):
a[None]+=1
ti.init(ti.opengl)
a=ti.field(float, ())
ttt()
print(a[None])
输出结果为:
[Taichi] Starting on arch=opengl
16777216.0
结果错误,应为20000000.0,且运行时间长达27.9秒
而切换为cuda后端或x64后端后,都可以在一秒内输出正确的结果
[Taichi] version 1.5.0, llvm 15.0.1, commit 7b885c28, win, python 3.8.8