cuda核函數再調用核函數,多層並行


#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;
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM