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

来源:互联网 发布:风控模型算法 编辑:程序博客网 时间:2024/06/05 10:16

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

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


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

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

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

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

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

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


在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里面的编号)
  • 通过下图直观的了解线程编号问题



原创粉丝点击