请教关于griddim和blockdim如何设置的问题

时间:2022-08-03 19:06:59
最近使用CUDA,突然遇到一个关于griddim和blockdim如何设置的问题
问题举例如下:
int bX=128;
int gX=100;
dim3 blockdim(bX,gX,1);
dim3 griddim(1,1,1);
fun<<<griddim,blockdim>>>(...);
CUT_CHECK_ERROR("failed");
程序执行到CUT_CHECK_ERROR("failed")检测到错误返回退出。但代码改为下面则能正常通过
int bX=128;
int gX=100;
dim3 blockdim(bX,1,1);
dim3 griddim(gX,1,1);
fun<<<griddim,blockdim>>>(...);
CUT_CHECK_ERROR("failed");
很是迷惑,请教高手这是因为什么??
另外griddim和blockdim如何设置更为合理???

2 个解决方案

#1


bx*gx=12800 >> 每个block的最大线程数512,请参看CUDA编程手册!

#2


ok!感谢

#1


bx*gx=12800 >> 每个block的最大线程数512,请参看CUDA编程手册!

#2


ok!感谢