GPU架构与CUDA编程模型详解
创作时间:
作者:
@小白创作中心
GPU架构与CUDA编程模型详解
引用
CSDN
1.
https://blog.csdn.net/qq_64091900/article/details/143472200
随着人工智能和高性能计算的快速发展,GPU(图形处理器)和CUDA(Compute Unified Device Architecture)编程模型已成为重要的技术基础。本文将详细介绍GPU的体系结构和CUDA编程模型,帮助读者深入理解GPU的工作原理和编程方法。
GPU架构与CUDA编程模型
1. GPU体系结构
1.1 计算单元组织架构
结构 | 功能 |
---|---|
CUDA核心 | 类似ALU(算术逻辑单元),但远不如CPU灵活,可执行浮点运算/张量运算/光线追踪(高级核心) |
Warp | 多核心共用一个取指/译码器,按SIMT(单指令多线程)工作(所有线程指令相同/数据可不同) |
SM(流式多处理器) | 包含多组Warps,所有CUDA核心共用一套执行上下文(缓存)&共享内存 |
1.2 存储层次架构
- 不同SM能够访问相同的L2 Cache
- 显存与缓存之间的带宽极高,但是相比GPU的运算能力仍然有瓶颈
2. CUDA编程模型
2.1 CUDA程序简述
- CUDA程序的两部分
程序 | 运行位置 | 主要职责 |
---|---|---|
Host程序 | CPU | 任务管理/数据传输/启动GPU内核 |
Device程序 | GPU | 执行内核/处理数据 |
- Kernel即在GPU上运行的函数,如下简单内核定义示例
//通过__global__关键字声明内核函数
__global__ void VecAdd(float* A, float* B, float* C)
{
int i = threadIdx.x;
C[i] = A[i] + B[i];
}
int main()
{
//通过<<<...>>>中参数指定执行kernel的CUDA thread数量
VecAdd<<<1, N>>>(A, B, C);
}
2.2 线程并行执行架构
- 线程层次
结构 | 地位 | 功能 |
---|---|---|
Thread | 并行执行最小单元 | 执行Kernel的一段代码 |
Warp(32Threads) | 线程调度的基本单位 | 所有线程以SIMD方式执行相同指令 |
Block | GPU执行线程基本单位 | 使块内线程内存共享/指令同步 |
Grid | 并行执行的最大单元 | 执行整个内核(启动内核时必启动整个Grid) |
- 线程在计算单元的映射:线程层次↔ 层次对应 GPU
- 注意SM和Block不必1v1对应也可Nv1对应
- 线程在存储单元的映射
线程结构 | 可Access的内存结构 | 访问速度 |
---|---|---|
Thread | 每线程唯一的Local Memory | 极快 |
Block | 每块唯一的Shared Memory(块中每个线程都可访问) | 较快 |
所有线程 | 唯一且共享的Global Memory | 较慢 |
3. CPU与GPU
3.1 CPU/GPU结构对比
GPU | CPU | |
---|---|---|
ALU | 功能强但数量少(只占GPU小部),时钟频率极高 | 功能弱但数量大,时钟频率低 |
Cache | 容量大并分级,缓存后续访问数据 | 容量很小,用于提高线程服务 |
控制 | 复杂串行逻辑,如流水/分支预测/乱序执行 | 简单(但大规模)并行逻辑 |
3.2 CPU ↔ 数据 / 指令传输 PCIe GPU交互
设备 | 逻辑地位 | IO模块 | 任务分配 |
---|---|---|---|
GPU | 外设 | IO Block(南桥) | 控制逻辑和任务调度 |
CPU | 主机 | Copy Engine | 执行大量并行计算任务 |
热门推荐
上海“吴淞口日出指数”首发,测试预报准确率可达80%左右
怎么设置cad快捷键命令是什么原因
医生提醒:过度追求“抗炎饮食”或致营养失衡
鼻炎有血丝是什么症状
三国演义中赤壁之战谁的功劳最大?曹操、刘备、孙权能力简介
岳西县中医院:创新"茯苓饮+穴位埋线"双疗法 构建中医体重管理新范式
标准化管理委员会的标准制定流程包括哪些步骤?
T1战队3-0横扫TES晋级S14全球总决赛四强
料酒可以用啤酒代替吗?料酒的替代品全攻略
啤酒和料酒的区别
柠檬茶能减肥吗?科学分析柠檬茶的减肥效果
武则天母性光辉下的阴影:为何对儿子狠心,却独宠太平公主?
张东林:中越战争期间选择叛国,幻想荣华富贵,结局尴尬
重磅 | 中国癌症中心发布恶性肿瘤流行数据,年新发482万,死亡257万
如何放下执念不再胡思乱想?教你5个有效的方法
人为什么会产生执念,根源在哪里?如何放下?
非全日制法律硕士可以考律师资格证
执业律师资格证考试的科目有哪些
各国高考制度全景分析
为什么建议你多吃荞麦?它有三大益处
糖尿病患者能喝苦荞茶吗
揭秘偏头痛与眩晕的10大隐形“元凶”,这些“导火索”要避开
荒野大镖客2人物志:亚瑟·摩根——忠心的囚徒,迟到的救赎
荒野大镖客2人物志:亚瑟·摩根——忠心的囚徒,迟到的救赎
航天中心医院神经外科创新手术,为丘脑痛患者带来新希望!
选择一个合适的鱼缸是养鱼过程中非常重要的一步
2024财务分析师职业详解:技能、发展与未来前景
“生前预嘱”入法一年多,你会选择吗?
清醒思考:如何保持决策的理性与冷静
中国新能源出海 助力全球绿色低碳转型