MulticoreWare

实例探究

机器学习与预测分析

August 25, 2023

客户

客户是业内领先的芯片制造商之一。他们正试图在高内核 CPU 上对多线程机器学习 (ML) 推理性能进行基准测试和改进。客户认识到最大限度地提高 CPU 利用率对于提高 ML 推理吞吐量和整体系统效率的重要性。

项目

该项目围绕优化 ONNX 运行时开源软件库的性能展开,ONNX 运行时是一种广泛使用的 ML 推断框架。主要目标是充分发挥高核数 CPU 的潜力,并解决 ONNX 运行时只能利用单处理器组的限制。这一限制导致拥有超过 64 个线程的 CPU 的利用率不尽人意。

挑战

  • 处理器组限制: ONNX 运行时无法在 Windows 中使用一个以上的处理器组,导致拥有超过 64 个线程的 CPU 效率低下。
  • 推理性能: 由于 ONNX 运行时对可用硬件资源利用的限制,客户在高内核 CPU 上实现最佳推理性能时面临挑战。
  • 依赖性集成: 要实现处理器组支持,不仅需要修改 ONNX 运行时,还需要修改其依赖项–Eigen 资源库。
  • CPU 使用率分析: 要找出性能问题的根本原因,剖析推理过程和分析 CPU 利用率至关重要。

MulticoreWare 的优势和方法

MulticoreWare 团队在 ML 软件堆栈优化方面拥有深厚的专业知识,在应对客户面临的挑战方面表现出了卓越的能力。我们的方法包括:

  • 剖析和分析: 对推理过程进行彻底的剖析和分析,确定缺乏处理器组支持是一个关键瓶颈。
  • 代码库分析: 深入研究 ONNX 运行时和 Eigen 的代码库,了解其中的复杂性和依赖性。
  • 添加处理器组支持:为 ONNX 运行时添加处理器组支持,并将其集成到 Eigen 资源库中,确保兼容性和最佳性能。
  • 参数优化: 通过微调参数优化推理基准,使 ML 模型有效利用可用硬件资源。
  • 并行推理功能: 在 ONNX Runtime 的性能测试套件中引入并行推理功能,以进一步最大限度地发挥高核数 CPU 的潜力,从而提取每一丝性能。

成果

通过 MulticoreWare 的专家干预,客户取得了显著的成果:

  • 提高了 CPU 利用率: 通过实施处理器组支持和参数优化,提高了高内核数 CPU 的 CPU 利用率,解决了 64 线程限制问题。
  • 提高推理吞吐量: 通过优化,推理吞吐量大幅提高,使客户能够从硬件中获取更多价值。
  • 系统效率: 该项目的成功提高了系统效率,最大限度地利用了可用硬件资源。
  • 更深入的合作: MulticoreWare 对 ML 软件堆栈和依赖关系的深入了解促进了客户与 MulticoreWare 之间的深入合作,为潜在的未来项目奠定了基础。

结论

本案例研究强调了 MulticoreWare 在根据硬件架构优化 ML 软件堆栈方面的专业知识,以及我们的创新方法如何帮助一家主要芯片制造商克服限制、优化性能并最大限度地发挥高核数 CPU 的潜力。

Share Via

Explore More

Jan 8 2026

面向自愈网络的AI驱动动态策略管理

该客户是网络管理软件领域的全球领导者,为企业、电信、工业和数据中心网络提供端到端的网络和服务管理解决方案。

Read more
Dec 8 2025

面向新一代笔记本电脑的AI驱动的可执行故障排除

一家领先的消费计算技术公司,以人工智能驱动的创新不断突破用户体验的界限而闻名。

Read more
Nov 25 2025

面向下一代多加速器平台的AI框架统一

一家领先的消费和企业计算OEM厂商,以其创新驱动的产品路线图而闻名,产品涵盖笔记本电脑、工作站和数据中心服务器。

Read more

GET IN TOUCH