一个线程满足一定条件后,如何使得整个kernel结束?

困扰如题,偶是直接在kernel中满足if 条件就return,但是整个kernel似乎是把所有开的线程都运算完了才返回。。。。

设置一个全局变量 device unsigned int global_mutex=0;

global void kernel_***( … )
{

//some code change the state of global_mutex

if( global_mutex ) return;


}

当然,这样实际上每个线程还是会执行到if语句

哦,了解了!谢谢!!

可是如果global_mutex是0的话,线程还是会执行啊?

实际上是条件负值……
.

External Media

开源图形处理器体系结构论坛(OpenGPU论坛) http://www.opengpu.org/bbs/

OpenGPU Graphics Open Source community图形开源社区),聚焦领域(focus domain)包括:
* GPU Architecture(图形处理器体系结构).
* Graphics Algorithm(图形算法).
* GPGPU Programming (面向通用的图形处理器编程).
* Open Source Rendering Engine(开源渲染器).
* Open Source GPU Simulator/RTL Implement(开源GPU模拟器).