将繁重的工作负荷卸载到Adreno图形处理器上:在骁龙移动平台上对H.266/VVC软件解码器的自适应环路滤波器加速
发表于 2024-04-23 15:23:01

最新的先进视频压缩标准,H.266,也被称为多功能视频编码(VVC)有希望被广泛应用于各种应用程序和设备。利用该标准,可确保用户高效地流式传输高质量视频,进行视频通话,并以其他编解码器无法比拟的保真度和效率享受沉浸式内容。

该标准最初依赖于基于软件的多功能视频解码器,有助于弥合基于硬件及专用加速器的解码器可用性之间的差距。但是,由于多功能视频编码的巨大计算需求,为移动设备实现高质量和高性能的软件解码器(例如:在高级安卓智能手机上以60帧/秒的速率渲染4K内容)带来了重大挑战。

高通Adreno™图形处理器的演化已经超越了单纯的图形加速范畴。Adreno图形处理器凭借其先进的架构、低时钟频率和精细的电源管理,在性能和能效指标方面领先业界。该图形处理器目前用作多功能计算引擎,并支持各种不同的应用程序,包括:

  • 图像/视频处理
  • 物理模拟
  • 机器学习
  • 生成式人工智能/大型语言模型工作负载

本篇博文介绍了如何通过开放计算语言将自适应环路滤波器(ALF)(通用视频编码中要求最高的模块之一)运行在Adreno图形处理器上。在Adreno的帮助下,基于软件的多功能视频解码器可以在 骁龙8第2代移动平台 上以60帧/秒的速率实现实时4K视频解码。

如要了解更为深入的技术见解,请参阅 本白皮书

利用 OpenCL 在骁龙移动平台上释放Adreno图形处理器的并行计算能力

OpenCL是跨平台的并行编程行业标准框架,可以解锁包括骁龙移动平台在内的不同架构移动设备的计算能力。OpenCL充分利用Adreno图形处理器的能力,在各种移动应用程序中实现高性能和高效能的计算。以下是有关OpenCL和Adreno的某些值得注意的方面和事实:

1. Adreno图形处理器和OpenCL3.0:

  • Adreno图形处理器 可充分支持最新版本的 OpenCL 3.0应用程序接 ,包括通过 Khronos的KHR/EXT扩展 实现的诸多可选功能。
  • 高通从一开始就积极参与 Khronos OpenCL 的标准化进程,并一直致力于 OpenCL标准的推进

2. 创新和供应商扩展:

  • 我们将继续创新并为OpenCL的开发做出贡献。
  • 除了支持各种KHR/EXTOpenCL扩展外,高通还引入了强大的供应商扩展功能。
  • 值得注意的是,可记录命令队列和片上全局内存等特性显著提高了处理效率,并为多项工作负载(如基于帧的视频处理)节省了电力。

Adreno图形处理器的一项关键优势是其统一的内存架构,即中央处理器和图形处理器共享一个地址空间。这样可消除数据传输瓶颈,确保直接在共享内存上运行ALF等计算任务而不需要数据拷贝。有关更多细节,请参阅 OpenCL 编程指南以及 Adreno OpenCL SDK 示例。

为什么要将自适应环路滤波器卸载到图形处理器上?

在涉及大量数据输入、高并行性和容忍延迟的场景中,图形处理器表现出色。其中包括涉及大量卷积、矩阵乘法和信号处理(如快速傅里叶变换、滤波和去噪)的机器学习任务。

但是,从本质而言,自适应环路滤波器并非最适合于图形处理器并行处理。由于位置分类、块分类和菱形过滤器等因素的差异,自适应环路滤波器面临诸多挑战。尽管如此,与多功能视频解码器的许多其他块相比,自适应环路滤波器仍然是可以卸载到图形处理器的更直观块之一。但是,这并不妨碍其他块(例如:块间解码)从图形处理器加速中受益。事实上,已有多个块被卸载到解码器内的图形处理器。

如要深入了解,请参阅 本白皮书 ,其中涵盖了工作负载分区、中央处理器和图形处理器同步之间的开销处理、以及其他重要的设计决策。

如何通过Adreno图形处理器实现最佳性能

OpenCL代码通常可以在不同供应商以及具有一致版本和功能的几代图形处理器之间移植。但是,其性能有赖于实施情况,因为它严重依赖于底层架构和硬件。

本白皮书 重点介绍了如何利用骁龙8第2代移动平台中的Adreno图形处理器对自适应环路滤波器进行优化,以实现最佳性能。本白皮书提供了一种整体观点,包括算法角度、对数据流的理解及在每个阶段检查精度灵敏度。本白皮书为卸载和优化复杂的OpenCL用例提供了很有价值的说明。

将自适应环路滤波器成功卸载到Adreno上,证明除传统图形渲染之外,还可以将Adreno图形处理器用于各种通用用例。如要了解有关针对Adreno进行开放计算语言优化的更多信息,请参阅 开放计算语言编程指南 以及Adreno图形处理器的最佳做法。

Written by Hongqiang Wang

Apr 16, 2024

  • 这一成就是高通技术公司图形处理器团队和腾讯通用视频编码团队共同努力的结果。
  • 高通图形处理器研究团队:林正豪
  • 腾讯媒体实验室:马雪瑞、郭宇、欧阳彤、李宇晨、李一鸣

在所发布内容中表达的观点仅为原作者的个人观点,并不代表高通公司或其子公司(以下简称为“高通公司”)的观点。所提供的内容仅供参考之用,而并不意味着高通公司或任何其他方的赞同或表述。本网站同样可以提供非高通公司网站和资源的链接或参考。高通公司对于可能通过本网站引用、访问、或链接的任何非高通公司网站或第三方资源并没有做出任何类型的任何声明、保证、或其他承诺。