当我们玩游戏、看视频,或者训练 AI 模型时,电脑屏幕上会不断显示一帧一帧的画面。
但很少有人真正思考过一个问题:这些画面是如何生成并最终显示到屏幕上的?
在这个过程中,计算机内部的多个组件需要协同工作,其中最重要的几个是:
下面这张图展示了它们之间的基本关系。
当我们理解了 CPU、GPU、内存和显存之间的关系,其实也就理解了计算机图形系统的基本工作原理。
CPU:计算机的控制中心
CPU(Central Processing Unit)通常被称为 计算机的大脑。
CPU 的主要职责是:
- 执行程序指令
- 处理逻辑计算
- 控制系统运行
- 调度各种硬件资源
当你打开一个程序时:
- 操作系统会把程序加载到 内存(RAM)
- CPU 从内存中读取指令
- 然后逐条执行这些指令
可以看出CPU 与 内存(RAM) 的关系非常紧密,简单来说:
- CPU 负责计算
- RAM 负责存储程序运行时的数据
二者之间不断进行数据交换。
GPU:专门处理图形和并行计算
如果说 CPU 是计算机的大脑,那么 GPU(Graphics Processing Unit)可以理解为 图形处理专家。
GPU 的设计目标和 CPU 不一样。
CPU 的特点是:
- 核心数量较少
- 单个核心非常强大
- 擅长复杂逻辑计算
而 GPU 的特点是:
- 拥有大量计算核心
- 擅长同时处理大量数据
- 非常适合并行计算
因此 GPU 主要用于:
- 图形渲染
- 视频处理
- 3D 游戏
- 深度学习
- 科学计算
在处理图形任务时,GPU 的效率远远高于 CPU。
什么是显存(VRAM)
GPU 在计算时,也需要存储大量数据。
这些数据通常不会放在系统内存(RAM)里,而是放在 显存(VRAM) 中。
VRAM 的全称是:Video Random Access Memory,翻译过来就是视频随机存储器。显存通常使用专门的高速内存技术,例如:
显存主要用来存储:
- 纹理数据(Texture)
- 顶点数据(Vertex)
- 深度信息
- 渲染中间结果
- AI 计算数据
因此可以简单理解为:
- CPU 使用 RAM
- GPU 使用 VRAM
帧缓冲区:存储最终画面的地方
在显存中,还有一个非常重要的区域,叫做:帧缓冲区(Frame Buffer)
帧缓冲区的作用是:存储 GPU 渲染完成的一帧画面。
整个过程大致如下:GPU 在计算完成后,会生成一张完整的画面,然后把这张画面写入 帧缓冲区。接下来,显示器会从帧缓冲区读取数据,并把画面显示出来。
如果你的显示器刷新率是 60Hz,意味着:每秒钟屏幕会刷新 60 次。也就是说:每秒需要显示 60 帧画面。而每一帧画面都会暂时存储在帧缓冲区中。
画面是如何出现在屏幕上的?
综合来看,一帧画面的生成过程大致如下:
- CPU 运行程序逻辑
- 数据存储在内存(RAM)
- CPU 把图形数据发送给 GPU
- GPU 在显存(VRAM)中进行计算
- GPU 渲染出画面
- 渲染结果写入帧缓冲区
- 显示器读取帧缓冲区数据
- 最终显示在屏幕上
这个过程会不断重复,这样我们就能看到连续的画面。
可以看到这些看似复杂的技术,本质上只是不同组件之间不断交换数据、协同计算的过程。