MulticoreWare

实例探究

在新一代人工智能加速器上启用 PyTorch 2.0 模型

June 10, 2025

客户介绍

客户是一家专门从事AI硬件的下一代计算公司。他们的使命是提供针对人工智能工作负载优化的高性价比、可扩展计算系统。他们的硬件生态系统原生支持 PyTorch 和 ONNX,能够使研究人员和开发者以最小的阻力部署 AI 模型。

面临的挑战

随着 PyTorch 2.0 的发布,客户希望在其定制的人工智能加速器上实现人工智能模型的无缝执行,同时保持与标准 PyTorch 工作流程的兼容性。具体挑战包括:

1 . 缺乏对定制硬件的原生支持:

  • PyTorch 2.0 引入了 torch.compile,这需要一个能够将计算高效映射到硬件的后端。
  • 客户的 AI 加速器没有专用的 PyTorch 后端,导致模型执行效率低下甚至不可行。

2 . 桥接 PyTorch 的计算图与定制硬件:

  • PyTorch 2.0 模型在降低到硬件特定执行之前依赖于 Aten IR。
  • 客户需要实现 Aten IR 转换,以将 PyTorch 操作映射到其硬件的操作。

3 . 最小化开发者的代码更改:

  • AI 研究人员和开发者更倾向于与 PyTorch 兼容并开箱即用。
  • 目标是在不显著重写或重构模型的情况下,让模型能够在 AI 加速器上执行。

解决方案

为了实现 PyTorch 2.0 模型在客户 AI 加速器上的无缝执行,设计并实现了一个定制的 PyTorch 后端。这确保了模型能够在硬件上高效运行,同时保持 PyTorch 的易用性,并且几乎不需要代码修改。解决方案包括以下关键组成部分:

1 . 自定义后端

开发了一个专用的 PyTorch 后端,以便与 torch.compile 无缝集成,并将 PyTorch 操作转换为硬件特定的操作符。该后端可利用加速器的计算能力高效执行模型,同时与 PyTorch 的标准工作流程保持兼容。

2 . Aten IR 转换通道

对各种 torch aten 操作进行处理,并将其降级为客户操作库中的操作。转换通道支持各种类别中缺失的操作,包括一元、二元和还原操作。例如 LayerNorm、AvgPool、Softmax、expand、squeeze、slice 等 Aten 操作在转换通道中被降低。

3 . 数据移动相关通道

实施了多个优化过程,包括数据进出设备、常量折叠、内存使用分析和驱逐策略—每个通道都旨在提高目标硬件的执行效率和资源利用率。

4 .  验证与准确性测试

为确保正确性,我们根据 PyTorch 的参考实现对转换操作进行了严格验证。使用 PCC 指标来衡量数值的准确性,
确保与预期结果的偏差最小。

5 . 使用真实世界模型进行运行时测试

为了评估真实世界的性能,我们使用以下工具对后端进行了测试:

  • Torchvision 模型,如 ResNet、MobileNet 和 YOLO 等,用于基于视觉的推理。
  • 大型语言模型,以评估 NLP 任务的执行效率,包括 GPT、Bloom 等。
  • 端到端推理基准测试,以验证性能和正确性。

这种全面的测试方法确保了后台的稳健性、性能和生产就绪性,以便在人工智能应用中进行部署。

技术栈

解决方案概述

为了在客户的人工智能加速器上无缝执行 PyTorch 2.0 模型,我们在操作员支持、后台集成和实际验证方面进行了关键改进。

 

支持 50 多个 PyTorch 核心 Aten IR 操作系统

实现了以下 50 多个常用的 PyTorch 操作的转换和执行逻辑,确保了广泛的模型兼容性,且干预最少。

  • 数学和激活函数(ReLU、Softmax、Log、Exp)
  • 归一化和池化(LayerNorm、BatchNorm、AvgPool)
  • 张量操作和归约操作(Reshape、Transpose、Sum、Mean)

与 torch.compile API 和模型基准无缝集成

使开发人员能够使用 PyTorch 的 torch.compile() API 进行轻松部署。

o 无需手动修改,即可自动优化人工智能加速器模型。

o 使用各类模型(包括 ResNet、MobileNet、VGG、YOLO、Faster R-CNN、BERT、GPT、Falcon 等)验证了各种实现的性能和正确性、

o 对每个模型的准确性、延迟和稳定性进行测试,确保可靠执行。

商业影响

  • 更快的 AI 模型部署– 实现了 PyTorch 模型在客户 AI 加速器上的无缝执行,显著缩短了 AI 应用的上市时间。
  • 开发者采用率提高– 消除了复杂的集成工作,使 AI 开发者更容易利用硬件,推动生态系统的发展。
  • 更强的竞争定位– 提升了 AI 加速器的价值主张,提供了轻松的 PyTorch 支持,并使其成为现有 AI 计算平台的有力替代品。

结论

通过将定制 PyTorch 2.0 后端与其人工智能加速器集成,客户显著提高了硬件的可访问性和可用性。这一努力不仅提高了执行效率,还使其人工智能生态系统成为对寻求可扩展、高性能人工智能计算解决方案的人工智能研究人员、企业和开发人员极具吸引力的解决方案。无缝的入门体验确保更多的人工智能从业人员可以利用客户的硬件,而无需修改他们现有的 PyTorch 工作流程,最终推动更多的采用和生态系统的扩展。

MulticoreWare展示了在Com-pilers、Python、PyTorch和人工智能加速器方面的专业知识,我们的综合方法确保了性能均等和稳定性。欲了解更多有关我们的专业知识,或了解我们如何帮助贵组织实现创新和高性能成果,请联系 info@multicorewareinc.com。

Share Via

Explore More

May 29 2026

优化 Android 应用在远程 GPU 渲染平台上的性能

客户 该客户是一家专注于GPU虚拟化中间件的技术公司,其产品能够将独立计算单元聚合到共享资源池中,并通过标准网络基础设施进行远程访问。他们的平台旨在帮助企业和汽车开发团队将图形密集型计算工作负载卸载到集中式或分布式GPU基础设施。 问题陈述 随着图形密集型Android应用程序越来越多地利用远程GPU基础设施,在分布式环境中保持接近原生体验的 UI 响应性和渲染性能成为一项重大挑战。通过该平台在基于远程服务器-客户端的架构上运行Android Automotive应用程序引入了性能瓶颈,对渲染效率和最终用户体验产生了负面影响。 客户观察到,与原生Android执行相比,通过该平台执行Android模拟器工作负载时,帧速率降低,渲染延迟增加。远程渲染管线在帧生成、同步和呈现过程中引入了延迟,导致UI响应速度下降,交互体验下降。 该平台面临以下几个关键挑战: 在远程渲染环境下,Android Automotive 模拟器执行时帧率低 由于渲染管线和同步瓶颈,导致每帧延迟增加 在非原生 Vulkan 路径中,由 Mesa 转译引入的额外开销导致渲染效率低下 Vulkan 的阻塞式等待机制影响帧调度和渲染吞吐量 远程执行期间,对 GPU 及渲染管线层级性能瓶颈的可观测性有限 为了应对这些挑战,客户需要一个结构化的优化框架来对性能进行基准测试,识别渲染瓶颈,并提升整个平台的帧传输与交付效率。 解决方案概述 MulticoreWare 开展了一项全面的性能优化计划,旨在提升客户平台上 Android 模拟器的运行性能。该计划首先对 Android 应用的性能与原生 Android 应用的性能进行基准测试,以建立帧率(FPS)和延迟的性能基线。 MulticoreWare 利用先进的性能分析工具,对渲染管线进行了端到端的分析,以识别帧生成、同步与显示过程中的瓶颈。基于这些发现,团队对渲染栈实施了针对性的优化,从而降低帧延迟并提高吞吐量。 该解决方案的主要功能包括: 基于队列的帧呈现机制 实现了将帧接收与渲染解耦的带缓存的解耦帧呈现机制,从而减少等待时间和延迟瓶颈。 工作负载感知超时优化 在 Mesa 中用基于计算公式的超时机制替换了无限 Vulkan 等待,提高了同步效率并减少了渲染停顿。 启用原生 Vulkan 渲染能力 启用了 Android 模拟器 Vulkan 模式所需的缺失 Vulkan 功能,绕过了 Mesa  … Read more

Read more
May 14 2026

面向无线接入网(RAN)可观测性、可解释性和编排的智能体人工智能

客户
一家全球性的电信和网络基础设施公司,致力于为构建、管理和优化大型电信及企业网络提供先进的软件、硬件和服务。

Read more
May 13 2026

先进无人机系统的嵌入式平台优化:激光雷达与电机控制的集成

客户 一家领先的无人机与机器人公司,致力于开发高性 能无人机平台,用于复杂或受限环境中的自主作业、工业检测及测绘。

Read more

GET IN TOUCH