软件组件与方法论:RISC‑V ML编译器的设计和优化

软件组件与方法论:RISC‑V ML编译器的设计和优化 - 与OpenXLA合作三年的经验分享

RISC-V 的开放标准指令集架构(ISA)已带动许多处理器的创新。与 packed-SIMD 和 GPU 实现相比,矢量扩展提供了可变的矢量长度和高代码密度,用于高效的机器学习计算。 RISC-V 矢量(RVV)处理器已应用于从最小的物联网设备至最大的云服务器 SoC 中。

为了替这些尖端的 RVV 处理器提供最高质量的代码生成,大多数基于 LLVM 的机器学习编译器在 MLIR 编译器中寻找最佳的 lowering path。然而,与在 SiFive 核心库(SKL)中硬件微架构上优化的核心相比,核心性能通常较低。 SiFive 针对上述情况提出一种新方法,即双向自上而下和自下而上迭代地检查编译路径。为了支持机器学习编译器的高机器可移植性,我们扩展了 LLVM 后端优化,以适应其生成的 IR。在矩阵乘法的示例中,结果显示 SiFive Intelligence X280 核上的最佳路径是矢量外积,然后是标量-矢量 fmul-add 核心代码。我们也与 Google 的 OpenXLA 团队合作,在 MobileBERT 上使用 OpenXLA 编译器应用此种双向方法。在不到四个月的时间内,IREE 展示出与采用 SKL 的最佳基准相近的绝佳推理性能。

最后,我们将依据现今人工智能/机器学习 SoC 开发的市场趋势,分享未来的优化与合作机会。

网络研讨会信息

22分56秒

2023-10-31

简报內容

2023-10-31 

查看 PDF

讲师

許宏榮 Hong-Rong Hsu

Senior Staff Engineer

許宏榮自 2019 年以来持续领导开源软件团队,目前于 SiFive 担任团队经理。他负责 AI/ML 软件的开发并监督产品部署。在加入 SiFive 前,许宏荣曾于 2010 年至 2018 年任职联发科,并于 2018 年至 2019 年在比特大陆服务,积累了许多宝贵的经验。他的专业知识涵盖研发的各个层面,包括 AI 编译器和运行时设计以及 RISC-V Vector 的软件优化。

注册以观看更多网络研讨会

我们会定期发布网路研讨会系列影片,欢迎留下您的资讯,当最新影片发布时,我们将以 email 通知您。