显卡GPU的架构和工作原理

显卡GPU(图形处理单元)是专为并行计算和图形处理设计的芯片,广泛应用于游戏、科学计算、人工智能和数据中心等领域。以下详细介绍GPU的架构和工作原理,涵盖核心组件、计算流程和关键技术,尽量简洁清晰。

一、GPU架构概述

GPU架构与CPU不同,专注于高并行计算,适合处理大量简单、重复的任务。其核心设计目标是最大化吞吐量,而非单任务的低延迟。主流GPU厂商(如NVIDIA、AMD、Intel)架构虽有差异,但基本原理一致,以下以通用架构说明。

1. 核心组件
  • 计算单元(Compute Units / Streaming Multiprocessors)
    • GPU的基本计算模块,NVIDIA称为SM(Streaming Multiprocessor),AMD称为CU(Compute Unit)。
    • 每个计算单元包含多个处理核心(如NVIDIA的CUDA核心、AMD的Stream Processor),负责执行浮点运算、整数运算等。
    • 例如,NVIDIA Ada Lovelace架构的SM包含128个CUDA核心,AMD RDNA 3架构的CU包含64个流处理器。
  • 寄存器和缓存
    • 寄存器:每个计算单元有大量寄存器(如NVIDIA SM约256KB),用于快速存储线程数据。
    • L1/L2缓存:用于减少内存访问延迟。L1缓存靠近计算单元,L2缓存共享于多个单元。
  • 内存层次结构
    • 显存(VRAM):高带宽显存(如GDDR6、HBM3),容量从4GB到数百GB,存储纹理、帧缓冲区等数据。
    • 全局内存:显存的整体地址空间,带宽高但延迟较高。
    • 共享内存:计算单元内部的快速内存,供线程组共享数据。
  • 调度单元
    • 负责线程分配和任务调度。GPU采用SIMD(单指令多数据)或SIMT(单指令多线程)模型,同一计算单元内的核心执行相同指令,处理不同数据。
  • 光栅化单元
    • 处理几何数据,将3D模型转化为2D像素(光栅化),包括顶点着色、图元组装等。
  • 纹理单元
    • 负责纹理映射和过滤,优化图像质量(如各向异性过滤)。
  • 光线追踪单元(NVIDIA RT Core、AMD Ray Accelerator):
    • 专为实时光线追踪设计,处理光线与场景的交点计算,模拟真实光影效果。
  • AI加速单元(NVIDIA Tensor Core):
    • 专为矩阵运算优化,加速深度学习和AI推理任务。
2. 典型架构示例
  • NVIDIA Ada Lovelace(2022)
    • 每个SM包含128个CUDA核心、4个Tensor Core(第4代)、1个RT Core(第3代)。
    • 支持FP8精度,优化AI性能;DLSS 3技术通过AI提升帧率。
    • 高带宽GDDR6X显存,L2缓存增至96MB(RTX 4090)。
  • AMD RDNA 3(2022)
    • 每个CU包含64个流处理器,双指令流SIMD单元。
    • 引入芯片let设计(分片式架构),降低成本;Infinity Cache作为高带宽缓存,减少显存依赖。
    • 支持光线追踪和AI加速,但性能稍逊于NVIDIA。
  • Intel Arc Alchemist(2022)
    • 基于Xe-HPG架构,包含Xe核心(类似CU),每个核心有16个矢量引擎。
    • 支持光线追踪和XeSS(类似DLSS的超采样技术)。
    • 性能在入门至中端市场竞争力较强。

二、GPU工作原理

GPU通过并行计算处理图形渲染和通用计算任务,其工作流程分为以下阶段:

1. 输入数据
  • 来源:GPU接收来自CPU的任务,包括3D模型(顶点数据)、纹理、着色器程序等。
  • API接口:通过DirectX、Vulkan或OpenGL等图形API与应用程序通信。
2. 渲染管线(Graphics Pipeline)

GPU的图形渲染遵循固定功能管线或可编程管线,现代GPU以可编程为主,流程如下:

  • 顶点处理(Vertex Shader)
    • 处理3D模型的顶点数据,计算位置、变换(如旋转、缩放)、光照等。
    • 输出:变换后的顶点数据。
  • 图元组装(Primitive Assembly)
    • 将顶点连接成图元(如三角形、线段)。
  • 光栅化(Rasterization)
    • 将图元投影到2D屏幕空间,生成像素片段(Fragment)。
  • 片段处理(Fragment Shader)
    • 为每个像素片段计算颜色、纹理、阴影等。
    • 涉及纹理采样、颜色混合等操作。
  • 测试与混合
    • 执行深度测试、模板测试,剔除不可见像素。
    • 混合颜色,生成最终像素值,写入帧缓冲区。
  • 输出:最终图像显示在屏幕上。
3. 并行计算(GPGPU)

GPU不仅限于图形渲染,还通过CUDA(NVIDIA)、ROCm(AMD)等框架执行通用计算:

  • 任务划分:将计算任务拆分为大量线程(如数千到数百万),分配到计算单元。
  • SIMT执行:同一计算单元内的线程执行相同指令,处理不同数据。
  • 应用场景:深度学习(矩阵运算)、科学模拟、加密货币挖矿等。
4. 光线追踪(Ray Tracing)
  • 原理:模拟光线与场景物体的交互,计算反射、折射、阴影等,生成逼真图像。
  • 流程
    • 光线生成:从相机发射光线。
    • 交点计算:使用BVH(边界体层次结构)加速光线与物体交点检测。
    • 着色:根据材质和光源计算颜色。
  • 硬件加速:RT Core或Ray Accelerator专用单元大幅提升性能。
5. 内存管理
  • 显存访问:GPU通过高带宽显存(如GDDR6,带宽可达1TB/s)存储数据,优化吞吐量。
  • 缓存优化:L1/L2缓存和共享内存减少全局内存访问,降低延迟。
  • 统一内存(UMA):部分架构(如AMD APU)支持CPU与GPU共享内存,提升数据传输效率。

三、关键技术与优化

  • 多线程并行:GPU支持数千个线程同时运行,适合数据并行任务。线程束(NVIDIA Warp,32线程)或波前(AMD Wavefront,64线程)是调度单位。
  • 流水线优化:GPU通过深流水线设计隐藏延迟,保持计算单元高占用率。
  • AI加速:Tensor Core(NVIDIA)或矩阵核心(AMD)优化矩阵运算,加速AI训练和推理。
  • 超采样技术:DLSS(NVIDIA)、FSR(AMD)、XeSS(Intel)通过AI或算法提升分辨率,降低性能开销。
  • 芯片let设计:AMD RDNA 3引入分片式架构,降低制造成本,类似CPU的chiplet趋势。

四、GPU与CPU的对比

特性GPUCPU
设计目标高吞吐量,并行处理低延迟,通用计算
核心数量数百至数千个简单核心几个至几十个复杂核心
线程管理大量线程,SIMT模型少量线程,复杂调度
缓存小容量高带宽缓存大容量多级缓存
应用场景图形渲染、AI、科学计算通用计算、操作系统管理

五、未来趋势

  • AI驱动:GPU将进一步优化AI工作负载,如NVIDIA H200 Tensor Core GPU针对大模型推理。
  • 工艺进步:3nm、2nm制程提升性能和能效,台积电和三星为主力代工厂。
  • 生态竞争:NVIDIA CUDA生态领先,AMD ROCm和Intel oneAPI迎头赶上。
  • 国产GPU:中国厂商(如摩尔线程、景嘉微)基于自研架构(如MUSA)进入市场,但性能和生态仍落后。

六、总结

GPU通过高度并行的计算单元、高带宽显存和专用加速单元(如RT Core、Tensor Core),高效处理图形渲染和通用计算任务。其架构围绕SIMT模型和渲染管线设计,优化吞吐量和数据并行。NVIDIA、AMD和Intel在技术上各有侧重,NVIDIA在AI和高性能计算领先,AMD注重性价比,Intel在入门市场发力。未来,AI应用、先进制程和生态竞争将推动GPU持续演进。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/90514.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/90514.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AndFix、Robust 与 Tinker 热修复框架深度对比

AndFix、Robust 与 Tinker 热修复框架深度对比 在 Android 热修复领域,AndFix、Robust 和 Tinker 是三种主流的解决方案,它们在实现原理、使用场景和限制条件上有显著差异。以下是三者的详细对比分析: 一、核心原理对比特性AndFixRobustTinke…

FlashAttention 快速安装指南(避免长时间编译)

简介:FlashAttention 编译太慢?本篇提供无需编译的预编译 wheel 快速安装方案,适配多版本 Python、PyTorch 和 CUDA,极大节省部署时间! 💡 背景介绍 FlashAttention 是由 DAO Labs 提出的一种高性能 atten…

openresty增加tcp端口转发

openresty增加tcp端口转发 1.配置文件nginx.conf 增加stream模块 stream {include /etc/nginx/conf.d/stream/*.conf; }2.在nginx/conf/目录下创建个stream文件夹 新增个10000.conf配置文件server {listen 10000;proxy_pass data_tcp; upstream data_tcp {server 10.10.10.2:10…

动态物体滤除算法

图像层面:2D图像分割反投影到3D点云滤除 基于分割 原理:通过2D语义分割(如DeepLab、Mask R-CNN)识别动态物体(车辆、行人),将分割结果反投影至3D点云中滤除。优化方向: 结合时序一致…

Redisson是如何实现分布式锁的?

Redisson 如何实现分布式锁?(核心原理与思考) Redisson 是一个功能强大的 Redis 客户端,它提供了许多分布式对象和服务,其中就包括分布式锁。Redisson 的分布式锁是基于 Redis 的 Lua 脚本实现的,这保证了操…

Java 导出word 实现饼状图导出--可编辑数据

📊 支持图表导出功能! 支持将 柱状图、折线图 图表以 Word 文档格式导出,并保留图例、坐标轴、颜色、数据标签等完整信息。 如需使用该功能,请私聊我,备注 “导出柱状图 / 折线图”。 生成的效果图如下:示例…

AI大模型平台

在科技浪潮迅猛推进的当下,AI大模型平台宛如一颗璀璨的新星,强势闯入大众视野,以其独特的魅力和强大的功能,深刻地变革着我们生活与工作的每一处角落。从日常智能助手的贴心陪伴,到专业内容创作的灵感激发;…

C# Console App生成的 dll文件

在使用 dotnet 8.0 创建一个 C# console app后,执行完编译操作,会发现除了生成可执行文件外,还生成一个 dll文件。 $ls ConsoleApp1 ConsoleApp1.dll ConsoleApp1.runtimeconfig.json ConsoleApp1.deps.json ConsoleApp1.pdb $ …

【AI】环境——深度学习cuda+pytorch配置

文章目录关键组件及关系显卡驱动GPU DriverCUDACUDA ToolkitcuDNNPytorch各组件版本选择驱动程序CUDA查看驱动及CUDA的最大支持版本CUDA Toolkit选自定义安装检验无法识别nvcccuDNNcondapip换源conda管理py包conda 换源查看列表、创建、克隆、激活、删除conda包管理包安装原则设…

观众信息设置与统计(视频高级分析与统计功能)

Web播放器(POLYV-html5-player)支持设置观众信息参数,设置后在播放器上报的观看日志中会附带观众信息,这样用户就可以通过管理后台的统计页面或服务端API来查看特定观众的视频观看情况了。 一、观众信息设置 播放器设置观众信息参…

《数据库》 MySQL库表操作

1. SQL语句基础 1.2 SQL简介 SQL:结构化查询语言(Structured Query Language),在关系型数据库上执行数据操作、数据检索以及数据维护的标准语言。使用SQL语句,程序员和数据库管理员可以完成如下的任务 改变数据库的结构 更改系统的安全设置…

DSP的基础平台搭建

1、CCS6.0的安装安装步骤这里就不说了,只谈论最可能遇到的问题:可以看到为需要关闭防火墙和扫描;在这里将其都关闭,然后可以断掉网络,关闭联想管家,可能还是会出现防火墙提示,但是可以安装&…

下一代防火墙-终端安全防护

实验设备1、 山石网科(hillstone)系列下一代防火墙(实训平台v1.0中hillstone设备)2、 三层交换机一台(实训平台v1.0中cisco vios l2设备)3、 二层交换机一台(实训平台v1.0中cisco iol switch设备…

Scala实现网页数据采集示例

Scala 可以轻松实现简单的数据采集任务,结合 Akka HTTP(高效HTTP客户端)和 Jsoup(HTML解析库)是常见方案。Scala因为受众比较少,而且随着这两年python的热门语言,更让Scala不为人知,…

【IO复用】五种IO模型

文章目录五种IO模型Linux设计哲学BIONIOAIOSIOIO多路复用五种IO模型 Linux设计哲学 在linux系统中,实际上所有的I/O设备都被抽象为了文件这个概念,一切皆文件,磁盘、网络数据、终端,甚至进程间通信工具管道pipe等都被当做文件对…

FeatherScan v4.0 – 适用于Linux的全自动内网信息收集工具

前言 在平时渗透打靶的时候,经常要自己手工输入命令,做各种基本的信息收集,非常的繁琐,所以自研了一款工具,这款工具没有接入AI,因为不合适,接入了AI的话在一些不能上网的环境下进行信息收集&a…

如何精准筛选优质SEO服务资源?

核心要点: 中小企业选择SEO服务常陷困惑——效果难量化、承诺不透明、策略模糊化。本文剖析核心痛点,拆解技术合规性、策略透明度、行业经验匹配度等关键筛选维度,提供一套清晰的评估路径,助您在复杂市场中找到真正专业的合作伙伴…

在教育领域中,如何通过用户ID跑马灯来对视频进行加密?

文章目录前言一、什么是用户跑马灯二、用代码如何实现用户ID跑马灯的功能三、如何通过用户ID跑马灯来对视频进行加密?总结前言 在教育领域,优质视频课程易遭非法传播。为强化版权保护与责任追溯,引入基于用户ID的跑马灯水印技术成为有效手段…

MCP协议:AI时代的“万能插座”如何重构IT生态与未来

MCP协议:AI时代的“万能插座”如何重构IT生态与未来 在人工智能技术爆炸式发展的浪潮中,一个名为Model Context Protocol(MCP) 的技术协议正以惊人的速度重塑IT行业的底层逻辑。2024年11月由Anthropic首次发布,MCP在短…

同步,异步复位问题

1.同步复位的基本原理是,复位信号仅在时钟的有效边沿影响或重置触发器的状态。复位的主要目标之一是使 ASIC 在仿真时进入已知状态。由于复位树的扇出较大,复位信号相对于时钟周期可能成为 “晚到信号”。即使复位信号会通过复位缓冲树进行缓冲&#xff…