cuda核函数再调用核函数,多层并行
#include__global__ void childKernel(int i){int tid = blockIdx.x*blockDim.x+threadIdx.x;printf("parent:%d,child:%d\n",i,tid);for(int j=i;j<i+10;j++){printf(",%d",j);}printf("\n");
·
#include <stdio.h>
__global__ void childKernel(int i)
{
int tid = blockIdx.x*blockDim.x+threadIdx.x;
printf("parent:%d,child:%d\n",i,tid);
for(int j=i;j<i+10;j++)
{
printf(",%d",j);
}
printf("\n");
}
__global__ void kernel()
{
int tid = blockIdx.x*blockDim.x+threadIdx.x;
childKernel<<<1,2>>>(tid);
}
int main()
{
kernel<<<1,1>>>();
cudaDeviceSynchronize();
return 0;
}
欢迎来到FlagOS开发社区,这里是一个汇聚了AI开发者、数据科学家、机器学习爱好者以及业界专家的活力平台。我们致力于成为业内领先的Triton技术交流与应用分享的殿堂,为推动人工智能技术的普及与深化应用贡献力量。
更多推荐
所有评论(0)