计算机组成原理 — GPU — 体系结构

Posted 范桂飓

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算机组成原理 — GPU — 体系结构相关的知识,希望对你有一定的参考价值。

目录

文章目录

NVIDIA GPU 架构发展史

NVIDIA Ampere GPU 架构

Multi-Instance GPU

Nvidia 最新的 Ampere 架构支持 Multi-Instance GPU(MIG)技术,它能够水平切分 GPU 资源。

每个 A100 GPU 都可以被拆分成 7 个 GPU instance,每个 Instance 都有隔离的 Core、Cache 和 Memory,这不仅可以满足数据中心分割 GPU 资源的需要,还能在同一张显卡上并行运行不同的训练任务。

NVIDIA Tesla GPU 架构

以 Nvidia Tesla GPU 架构为例,介绍 GPU 的基本组成部分。

  • 1 个 Nvidia Tesla GPU 包含 7 个 TPC(Texture/Processor Cluster,纹理处理簇)。
  • 1 个 TPC 包含 2 个 SM(Stream Multiprocessor,流多处理器)。
  • 1 个 SM 包含:
    • 6 个 SP(Streaming Processor,流处理器),SP 是 GPU 最基本处理单元,指令和任务最终都是在 SP 上处理的。GPU 所谓的并行计算,也就是有很多个 SP 在同时进行计算。
    • 2 个 SFU(Special Function Unit,特殊函数的计算单元)
    • 1 个 I-Cache(指令缓存)
    • 1 个 C-Cache(常量缓存)
    • 1 个 MT Issue(多线程指令获取)
    • 1 个 Shared Memory(共享内存)
  • 1 个共享的 L1 Cache(一级缓存)
  • 1 个共享的 Fetch/Dispatch(取指/分发)部件。
  • Load/Store Queues(访问存储单元),在 SM 和 Main Memory 之间快速传输数据;
  • Warp Scheduler(线程调度器),每个 Warp(线程束)包含了 32 个并行的 Threads,它们使用不同的数据执行相同的命令,Scheduler 会负责这些 Threads 的调度;

每个 SP 再细化,包含了:

  • 1 个共享的 Fetch/Decode(取指/译码)部件。
  • 8 个 ALU(逻辑运算单元)。
  • 4 组 Execution contexts(执行环境),可 Concurrent but interleaved(并发交叉)执行 4 条 Instruction Streams(指令流)。
  • 每组 Execution contexts 有 8 个 Context,共计 32 个 Fragments(并发程序片元),即 32 个 CUDA threads。

以上是关于计算机组成原理 — GPU — 体系结构的主要内容,如果未能解决你的问题,请参考以下文章

计算机组成原理 取指令与指令译码实验

计算机组成原理 取指令与指令译码实验

不务正业系列6:计算机组成原理笔记

冯诺依曼结构原理及层次分析

计算机组成原理第4章 存储器

计算机组成原理 — GPU — CUDA 编程模型