您的位置:首页 > 编程语言

Nvidia gpu物理结构与编程模型简介

2017-07-12 20:01 363 查看

万千资料纷繁复杂,为你讲解最直接的资料

先上一个狂拽炫酷吊炸天的图



装逼必须用英文,不懂得单词自行百度!(哈哈哈哈哈哈哈哈哈)

用和别人不一样讲述顺序,给新手不一样的感觉,目前大多数计算机都是使用异构架构模型!



gpu就是我们常说的显卡,但是大部分对显卡的直接印象就是玩游戏是否流畅,是否能带起大型单机游戏!

现在我就告诉你们,他可以装逼的地方,全球火热的人工智能都是基于gpu开发的,大规模的并行运算(天河一号就是由众多的CPU与gpu组合而成)



这就是我们对cpu和GPU的逻辑概念模型,学过计算机组成原理的就知道cpu极其复杂(由大量的晶体管按照某种逻辑关系组合而成)

开始
4000
本文章的核心内容,以上内容纯属给大家最直观的感受







在GPU中注意一些关键词

TPC(由一系列sm组成,上图中最右边的矩形框即为一个TPC
SM(有一些sp组成,sm即为上图黄色的小矩形)
SP(上图中没有显示,stream processor deal with threads)
LOCAL MEMORY

SHARED MEMOR

GLOBAL MEMORY
关于内存问题过于复杂,本章暂时不讲(第一章图里面有最直观的感受关于内存分布问题)
接下来我们聊聊

Threads,这是gpu的编程的核心,sm是gpu的核心;

要想理解gpu编程,必须了解线程(线程的分配);



现在我们将物理结构与逻辑结构结合起来

TPC->grid

SM->block

SP->thread

现在可以理解grid,block,thread之间的结构关系了吧!(我就不总结了,大家结合图形动脑自行组织)

GPU里面有很多gird,如何区别每个线程?我们将引入几个关键词

BlockDim(告诉我们每一个block里面有多少threads)
BlockIdx(告诉我们grid里面block的编号)
threadIdx(告诉我们线程在block里面的编号)
通过下图直观的了解线程编号问题

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nvidia gpu 结构 编程