试用 LVGL Pro — 高效构建、测试、分享和交付 UI 的完整工具包!
LVGL
案例展示

Cortex-M85 Helium 基准测试 - 编译器性能对比

在配备 Helium SIMD 指令集的 Cortex-M85 上对 GCC、LLVM 和 Ac6 编译器进行基准测试,评估 LVGL 渲染性能。

加博尔·基什-瓦莫希加博尔·基什-瓦莫希5 分钟阅读

您听说过 Cortex-M52、M55 和 M85 微控制器中的 Helium 指令集吗?Helium 是一种 SIMD(单指令多数据)指令集,允许在单个时钟周期内对多个数据点执行相同的指令。这对于 UI 相关任务特别有利,可以高效地填充或混合数千个像素。让我们探索不同编译器如何利用这个强大的指令集!

术语表#

让我们从一个术语表开始,以澄清一些关键术语:

  • Arm:MCU(Cortex-M)和 CPU(Cortex-R 和 A)核心 IP 的提供商。Arm 不制造芯片,而是向芯片供应商出售其核心的蓝图。
  • SIMD:代表单指令多数据。它是一种指令级并行形式,其中相同的指令同时在数据数组(向量)上执行。
  • Helium:Arm 为配备 Cortex-M52、Cortex-M55 和 Cortex-M85 核心的微控制器设计的 SIMD 指令集。
  • Arm2D:一个由 Arm 维护的库,可充分利用 Helium 指令集进行 2D 渲染。LVGL 内置了对它的支持。更多详细信息可以在这里找到。
  • GCC:一个免费且成熟的 C 编译器。
  • LLVM:一个灵活且现代的编译器基础设施,可以适应许多语言。
  • Ac6:Arm 的专有编译器,基于 LLVM。

测试配置#

硬件#

我们在 Renesas EK-RA8D1 开发板上测试了 Helium 指令集,该开发板具有以下特性:

软件#

在基准测试期间,我们在各种配置下测试了 GCC、LLVM 和 Ac6 编译器。可以在以下链接找到用于 Renesas EK-RA8D1 的每个编译器的即用型 LVGL 项目:

LVGL 配置#

为了获得最大速度,LVGL 被配置为部分渲染模式,使用放置在 TCM 中的 64 kB 缓冲区。其他内存选项速度较慢,无法充分利用 Helium 的性能。

LV_USE_OS 被设置为 LV_OS_NONE,以消除 LVGL 渲染管道中来自 FreeRTOS 的任何开销。

我们使用 lv_demo_benchmark 来测量性能。

LVGL 进行了轻微修改,以 0.1 毫秒精度而不是 1 毫秒精度测量渲染时间。

结果#

下图显示了使用 LVGL 基准测试演示的平均渲染时间差异:

比较 GCC、LLVM 和 Ac6 编译器在有无 Helium 支持下的基准测试结果
比较 GCC、LLVM 和 Ac6 编译器在有无 Helium 支持下的基准测试结果

那么,结果告诉我们什么?

  1. GCC 不支持 Helium,因此它作为我们的基线参考。
  2. LLVM 17 和 LLVM 18 都支持 Helium。结果比 GCC 略快,尽管 LLVM 18 比 LLVM 17 稍慢。
  3. 启用 Arm2D 提供了大约 20% 的性能提升。在这种情况下,LLVM 18 比 LLVM 17 略快。
  4. Ac6 在禁用 Helium 支持的情况下(类似于 GCC)比 GCC 略快。
  5. 启用 Helium 支持的 Ac6 但没有 Arm2D 比 LLVM 17 或 18 更好地利用了 Helium。
  6. 结合 Arm2D 的 Ac6 实现了 26% 的性能提升。

结论#

在 480x854 屏幕上,所有配置的渲染时间约为 10 毫秒。这表明,即使没有 GPU,该微控制器上的软件渲染对于大多数用例来说也足够快。

这表明微控制器,即使是为非 UI 应用程序(例如电机控制)设计的,也可以有效地驱动具有更高分辨率和丰富图形的屏幕。要最大化微控制器的性能,您可以切换到 LLVM 并添加 Arm2D,这些都是免费提供的。对于需要更高性能的用户,Arm 的商业 Ac6 编译器是一个极好的选择。(评估版本可用。)

关于作者

加博尔·基什-瓦莫希
加博尔·基什-瓦莫希

LVGL 创始人

LVGL 的创始人和首席开发者,这是一个被全球数百万设备使用的开源嵌入式图形库。

认识博客背后的作者们

了解那些分享 LVGL 知识的优秀作者们

查看作者

订阅我们的通讯 不错过任何关于 LVGL 的新闻。我们每月最多发送 2 封邮件。

LVGL

LVGL 是最受欢迎的免费开源嵌入式图形库,支持任何 MCU、MPU 和显示类型,助您构建精美的用户界面。

我们还提供 UI 设计、实现和咨询等服务。

© 2026 LVGL。保留所有权利。
YouTubeGitHubLinkedIn