CUDA学习笔记(一) CUDA编程模型1
2010-11-23 20:28
197 查看
一、主机与设备
1、 CPU--逻辑性强的串行事务计算
2、 GPU--线程化、并行处理
3、CUDA程序包括:
串行代码
并行kernel
串行代码
并行kernel
4、 串行代码完成:
数据准备
设备初始化
清理上一个内核函数,启动下一个内核函数
5、kernel函数:
kernel包括grid(线程网格),grid包括block(线程块),block包括thread(线程)
二、kernel函数定义、调用
1、-global-
2、VecAdd<<1,N>>(A,B,C)
1表示有一个block,N表示一个block中有N个线程
3、先为用到的数组和变量分配好足够空间后再调用kernel函数
4、每个线程都有自己的blockID和threadID
它们只能在kernel中通过内建变量访问
内建变量由设备(GPU)专用寄存器提供,只读
三、线程结构
1、线程以block为单位执行
2、各block间并行执行,无法通信
3、CUDA使用了dim3类型(由三个unsigned int组成的结构体)的内建变量
1、 CPU--逻辑性强的串行事务计算
2、 GPU--线程化、并行处理
3、CUDA程序包括:
串行代码
并行kernel
串行代码
并行kernel
4、 串行代码完成:
数据准备
设备初始化
清理上一个内核函数,启动下一个内核函数
5、kernel函数:
kernel包括grid(线程网格),grid包括block(线程块),block包括thread(线程)
二、kernel函数定义、调用
1、-global-
2、VecAdd<<1,N>>(A,B,C)
1表示有一个block,N表示一个block中有N个线程
3、先为用到的数组和变量分配好足够空间后再调用kernel函数
4、每个线程都有自己的blockID和threadID
它们只能在kernel中通过内建变量访问
内建变量由设备(GPU)专用寄存器提供,只读
三、线程结构
1、线程以block为单位执行
2、各block间并行执行,无法通信
3、CUDA使用了dim3类型(由三个unsigned int组成的结构体)的内建变量
相关文章推荐
- CUDA C 编程权威指南 学习笔记:第二章 CUDA编程模型
- CUDA学习(2)--编程模型
- CUDA学习笔记之 CUDA存储器模型
- cuda 编程学习笔记
- Hadoop学习笔记—4.初识MapReduce 一、神马是高大上的MapReduce MapReduce是Google的一项重要技术,它首先是一个编程模型,用以进行大数据量的计算。对于大数据
- CUDA学习笔记之CUDA存储器模型
- CUDA学习笔记之 CUDA存储器模型 [转]
- 看cuda初级教程视频笔记(周斌讲的)--CUDA、GPU编程模型
- JAVA学习笔记4---两种基础编程模型、JAVA库、类的成员
- arm学习笔记一(arm概述及其基本编程模型)
- CUDA学习笔记之 CUDA存储器模型
- CUDA学习笔记之 CUDA存储器模型
- arm学习笔记一(arm概述及其基本编程模型)
- CUDA学习笔记之 CUDA存储器模型
- CUDA学习笔记之Tesla图形与计算架构和通用计算模型
- CUDA学习笔记之 CUDA存储器模型
- CUDA学习笔记之Tesla图形与计算架构和通用计算模型
- Windows网络编程之Select模型学习笔记
- asp.net mvc 4 高级编程学习笔记:第四章 模型
- arm学习笔记一(arm概述及其基本编程模型)