并行循环之间同步吗,类似__syncthreads,glMemoryBarrier

taichi有barrier或者sync吗,又或者是自动的?

Hi,如果是parallel for之间的同步,直接调用ti.sync()就行。这个相当于CUDA中的cudaStreamSynchronizeI()

如果是对应__syncthreads()的这种block wise的语义,对应是ti.simt.block.sync(),只有cuda和vulkan后端能用。但是因为我们目前没有非常清晰的关于block的定义,所以这个API现在藏得比较深,仅仅是给SharedArray配合读写同步用的。

1 个赞