屏幕卡顿/撕裂
屏幕卡顿/撕裂 是指屏幕在显示图形图像时出现的一些显示异常的现象。
- 撕裂:是图形图片显示错位
- 掉帧:是重复显示同一帧图片数据
那么为什么会出现这样的显示问题呢?接下来详细解说一下。
在分析之前,先了解一下 CPU和GPU的一些知识,以及 屏幕成像 的演变过程
CPU 和 GPU
- CPU:是整个计算机的运算核心和控制核心,处理复杂的逻辑和数据,依赖非常高,靠时间片切换实现并发
- GPU:绘图运算工作准用的微处理器,单元计算,高并发,依赖非常低
屏幕成像
计算机的显示方式是经过最开始的 随机扫描显示
演变到现在的光栅扫描显示
的
图形图像
是有像素阵列
组成的,图像的显示和图像的复杂度无关,光栅扫描
都是从左上角开始扫描显示,是显示整个光栅的时间。
简单扫描光栅系统结构如下:
比如:要显示一个60 * 60 的位图
,需要开辟的内存为60 * 60 * 4(RGBA) = 14400
,在早期没有显卡时期,图片要先通过CPU
解码到内存中,然后显示控制器通过系统总线从系统主存中读去显示的图片,这样读取慢,就演变出了常用扫描光栅系统结构
,结构如下:
常用扫描光栅系统结构
是在系统主存中开辟一块作内存为帧缓存