我正在阅读有关 GPU 的文章,他们说 CPU 通常无法执行转换图像的二进制数据以创建实际图像所需的复杂计算,但这到底是什么意思?发送到显示器的数据格式是什么?换句话说,GPU 如何告诉显示器要显示什么?
答案1
图像的二进制数据和 GPU 发送到显示器的翻译数据之间有什么区别?
无论出于何种目的,没有什么;数据就是数据。图像的二进制数据取决于其格式,但最终,所有图像都会以位图的形式出现,位图指示图像每行和每列中每个像素的颜色。然后,视频适配器将该数据发送到显示器,显示器以这些颜色和强度打开或关闭这些像素,我们将结果视为图像。
我正在阅读有关 GPU 的文章,他们说 CPU 通常无法执行转换图像的二进制数据以创建实际图像所需的复杂计算,但这到底意味着什么?
在这种情况下,它几乎肯定是在谈论高级视频渲染,例如 3D 图形或特效处理。
过去,CPU 负责游戏和视频编辑程序中的大部分渲染工作,但是随着对图形复杂性的需求增加,CPU(通用处理器)已经无法执行高级图形相关操作所需的高级数学计算,尤其是如果它已经必须执行大量其他处理,例如处理游戏中的物理、AI 等。
为了应对这种情况,GPU 变得更加先进,开始包含更复杂、更专业的电路,以便它们能够自行处理。现在,CPU 不再需要处理像光线追踪图像或着色器,它可以直接发送到 GPU 进行处理。然后视频适配器可以将结果返回给 CPU 进行进一步处理,或者简单地将其输出到屏幕。
发送到显示器的数据格式是什么?换句话说,GPU 如何告诉显示器要显示什么?
这里不适合做复杂的规范(你可以询问电气工程),但显示器只接收关于点亮哪些像素的信息;它实际上并没有得到数据比如文件或字节。
答案2
图像被压缩。进入显示器的数据被调整大小、抗锯齿/子像素渲染并复制到桌面图像中。