GPU使用指南

Copyright © Quectel Wireless Solutions Co., Ltd. 2026. All rights reserved.


GPU 是什么

GPU(Graphics Processing Unit,图形处理器)是设备中专门负责"画图"和"计算图像"的芯片。

  • CPU 负责"思考"——处理逻辑、运行程序

  • GPU 负责"画画"——把内容渲染成屏幕上显示的图像

RK3576 集成 ARM Mali-G52 MC3 GPU(最高 900 MHz)。桌面界面、视频播放、3D 游戏都靠它渲染。

日常使用中 GPU 在哪里工作

场景

GPU 做什么

桌面界面

窗口合成、动画过渡、应用切换

视频播放

视频帧的色彩处理、画面缩放

网页浏览

网页内容合成、滚动渲染

3D 应用/游戏

3D 场景渲染

视频会议

画面特效、虚拟背景

M2 的 Debian 桌面(GNOME)默认使用 GPU 合成渲染,日常操作中 GPU 一直在工作,无需手动开启。

在 M2 上使用 GPU

场景 1:播放视频(GPU 渲染输出)

使用 GStreamer 播放视频,画面由 GPU 渲染到屏幕(Wayland):

# 播放板载测试视频(硬件解码 + GPU 渲染显示)
gst-launch-1.0 filesrc location=/oem/SampleVideo_1280x720_5mb.mp4 ! \
  qtdemux ! h264parse ! mppvideodec ! waylandsink

# 桌面环境变量(GNOME 用户会话)
export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-0

播放画面正常显示即说明 GPU 渲染链路工作正常。

场景 2:运行 GPU 性能测试(glmark2)

glmark2 是一套 OpenGL 性能测试程序,跑分结果可反映 GPU 综合性能:

# 安装
sudo apt install glmark2-wayland

# 在桌面会话中运行(M2 / Debian)
XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-0 glmark2-wayland

M2 实测得分:745(全项)。运行中可观察 GPU 频率变化:

watch -n1 cat /sys/class/devfreq/27800000.gpu/cur_freq
# 跑分时频率会从 300MHz 升到 900MHz

场景 3:自己写 OpenGL 程序(开发)

M2 的 Mesa Panfrost 驱动支持 OpenGL ES 3.1 与 Desktop GL 3.1,可用标准 OpenGL 开发:

# 安装开发库
sudo apt install libgl1-mesa-dev libegl1-mesa-dev libgles2-mesa-dev

# 编译 GLES 程序(以 es2gears 为例)
sudo apt install mesa-utils-extra
es2gears

若程序报错 Could not initialize canvas,说明当前没有可用的图形会话——需要先登录 GNOME 桌面。

SMARC(Buildroot)上使用 GPU

SMARC 板使用 ARM libmali 私有驱动(仅 OpenGL ES 3.2,无 Desktop GL):

# SMARC 上跑 GLES 测试(需图形会话)
XDG_RUNTIME_DIR=/var/run WAYLAND_DISPLAY=wayland-0 glmark2-es2-wayland

SMARC 实测输出:

GL_VENDOR:   ARM
GL_RENDERER: Mali-G52
GL_VERSION:  OpenGL ES 3.2 v1.g24p0-00eac0.fe7fa84c52ed3b756cd64cb3246aafd9

OpenCL 计算(进阶)

GPU 除了画图,还能做并行计算(OpenCL):

平台

OpenCL 实现

加速方式

备注

M2 (Debian)

Mesa rusticl

CPU 软计算

需安装 mesa-opencl-icd

SMARC (Buildroot)

libmali

GPU 硬件加速

板端实测通过

SMARC 上 OpenCL 实测(GPU 真实计算):

Platform: ARM Platform
Version: OpenCL 3.0 v1.g24p0-00eac0.fe7fa84c52ed3b756cd64cb3246aafd9
Device: Mali-G52 r1p0
Kernel result: 11 22 33 44
OPENCL 2.0 WORKS (GPU)

常见问题

问题

解决

运行 3D 程序报 Could not initialize canvas

需要先登录 GNOME 图形桌面,SSH 无桌面环境跑不了

桌面卡顿、掉帧

检查 GPU 频率是否正常:cat /sys/class/devfreq/27800000.gpu/cur_freq

依赖 Desktop GL 的程序在 SMARC 跑不了

SMARC 仅 GLES 3.2,用 GLES 版或换 M2 运行

GPU 发热

RK3576 GPU 满载会发热,注意散热