繁体   English   中英

以下cuda Kernel语法的含义

[英]Meaning of following syntax of cuda Kernel

以下语法的含义是什么:

Kernel_fun<<<256, 128, 2056>>>(arg1, arg2, arg3);

哪个值表示工作组,哪个值表示线程。

CUDA编程指南 ,附录B.22(截至2019年5月):

通过在函数名和带括号的参数列表之间插入<<< Dg,Db,Ns,S >>>形式的表达式来指定执行配置,其中:

  • Dg的类型为dim3(参见B.3.2节)并指定网格的尺寸和大小,使得Dg.x * Dg.y * Dg.z等于正在启动的块数; 对于计算能力为1.x的设备,Dg.z必须等于1;

  • Db的类型为dim3(参见第B.3.2节)并指定每个块的尺寸和大小,使得Db.x * Db.y * Db.z等于每个块的线程数;

  • Ns的类型为size_t,并指定除了静态分配的内存之外,每个块为此调用动态分配的共享内存中的字节数。 这个动态分配的内存被声明为外部数组的任何变量使用,如B.2.3节所述; Ns是一个可选参数,默认为0;

  • S的类型为cudaStream_t,并指定相关的流; S是可选参数,默认为0。

简而言之: <<< number of blocks, number of threads, dynamic memory per block, associated stream >>>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM