详解CUDA核函数及运行时参数
来源:互联网 发布:淘宝网汉服 编辑:程序博客网 时间:2024/06/17 00:26
详解CUDA核函数及运行时参数
核函数是GPU每个thread上运行的程序。必须通过__gloabl__函数类型限定符定义。形式如下:
__global__ void kernel(param list){ }
核函数只能在主机端调用,调用时必须申明执行参数。调用形式如下:
Kernel<<<Dg,Db, Ns, S>>>(param list);
<<<>>>运算符内是核函数的执行参数,告诉编译器运行时如何启动核函数,用于说明内核函数中的线程数量,以及线程是如何组织的。
<<<>>>运算符对kernel函数完整的执行配置参数形式是<<<Dg, Db, Ns, S>>>
- 参数Dg用于定义整个grid的维度和尺寸,即一个grid有多少个block。为dim3类型。Dim3 Dg(Dg.x, Dg.y, 1)表示grid中每行有Dg.x个block,每列有Dg.y个block,第三维恒为1(目前一个核函数只有一个grid)。整个grid中共有Dg.x*Dg.y个block,其中Dg.x和Dg.y最大值为65535。
- 参数Db用于定义一个block的维度和尺寸,即一个block有多少个thread。为dim3类型。Dim3 Db(Db.x, Db.y, Db.z)表示整个block中每行有Db.x个thread,每列有Db.y个thread,高度为Db.z。Db.x和Db.y最大值为512,Db.z最大值为62。 一个block中共有Db.x*Db.y*Db.z个thread。计算能力为1.0,1.1的硬件该乘积的最大值为768,计算能力为1.2,1.3的硬件支持的最大值为1024。
- 参数Ns是一个可选参数,用于设置每个block除了静态分配的shared Memory以外,最多能动态分配的shared memory大小,单位为byte。不需要动态分配时该值为0或省略不写。
- 参数S是一个cudaStream_t类型的可选参数,初始值为零,表示该核函数处在哪个流之中。
0 0
- 【走进CUDA】~详解CUDA核函数及运行时参数
- 详解CUDA核函数及运行时参数<<<>>>
- 详解CUDA核函数及运行时参数<<<>>>
- 详解CUDA核函数及运行时参数
- 详解CUDA核函数及运行时参数
- CUDA核函数及运行时参数
- CUDA编程系列--详解CUDA核函数及运行时参数
- CUDA/ GPU: CUDA核函数的运行参数
- GPU编程自学4 —— CUDA核函数运行参数
- CUDA deviceQuery参数详解
- larbin运行参数及配置文件详解
- cuda内核(kernel)参数详解
- cuda内核(kernel)参数详解
- 用CPU计时器统计CUDA核函数的运行时间
- cuda 核函数中的参数说明<<<Dg, Db, Ns, S>>>
- C# main函数详解及参数应用
- getopt函数详解及__shortopts参数…
- C# main函数详解及参数应用
- NPOI2.2.0.0实例详解(十)—设置EXCEL单元格【文本格式】
- php-fpm – 启动参数及重要配置详解
- 我的html 初学第一步 编译器的选择和代码的简单使用
- 自学Python爬虫遇到的一些问题
- 版本控制工具SourceTree使用一-----注册GitHub账号,使用SourceTree上传、提交、推送程序
- 详解CUDA核函数及运行时参数
- python 与hadoop之pyhdfs的append
- 将任意表数据导出为CSV文件的过程
- 一款单选框radio样式
- Spring+Struts2
- jquery.autocomplete.js 插件的自定义搜索规则
- 20151210编译高通的qca9531的wireless版本 修改版本4
- JavaEE_post乱码和乱码的解决方法
- 装饰者设计模式的使用