如下图所示:
图一为kernel块:其properties 赋值用了两种方法,并以#-------------------------- 分开。其实这个赋值很简单
图二为不同的kernel进行运行时间观察对比。
图三和图四分别为不同for循环步骤的时间对比。
从图三和图四可以看出,在for循环前15步左右,所有的kernel块运行时间大约为0秒(除了第一次编译的时间),但16次后的for循环,properties_update就猛增到37秒,其他更复杂的kernel没有什么变化。
请问在properties_update 这么简单的赋值kernel中出现这种 减速,是因为什么呢?
初步想到的一个解决办法是先 to_numpy(),在 python scope中赋值,再 from_numpy()到 taichi scope中,但不确定是否可行。
PS: 用相同的内容回复了别人,还不能发布提问了,=/=, 所以就只能加这样一个 PS