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

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

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


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

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

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



  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
NVIDIA GPU(图形处理器单元)架构与原理分析如下: NVIDIA GPU架构主要分为两个部分:SM(流处理器)和内存层次结构。 SM是NVIDIA GPU的核心组件,它由多个CUDA核心组成,用于处理并行计算任务。每个SM包含一定数量的CUDA核心,可以同时执行多个线程。SM还包括一些专用硬件单元,例如寄存器文件、共享内存和高速缓存。这些单元可以提供高效的数据存储和共享机制,以及加速计算速度。 NVIDIA GPU的内存层次结构包括全局内存、共享内存和寄存器文件。全局内存是最大的内存池,在所有SM中都可见。它用于存储大量数据,并在各个SM之间共享。共享内存是每个SM私有的一块内存空间,可以在SM内的线程之间进行快速共享。寄存器文件是每个CUDA核心私有的一块内存空间,用于存储核心执行时需要的数据。 NVIDIA GPU架构的原理是基于并行计算模型的。它可以同时执行大量线程,每个线程都在不同的CUDA核心上执行,从而实现高度并行的计算。通过将计算任务划分为小的线程块和网格,NVIDIA GPU可以将任务分配给多个SM并发执行,从而提高计算效率。 此外,NVIDIA GPU还支持CUDA编程模型,它可以使用CUDA编程语言进行开发。CUDA提供了丰富的API和工具,使开发者能够利用GPU的并行计算能力,提高计算性能和效率。 总而言之,NVIDIA GPU架构是一种基于并行计算的架构,通过同时执行大量线程和高效的内存层次结构,实现了高性能的数据处理和计算能力。它在许多领域,如科学计算、机器学习和游戏开发中发挥着重要的作用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值