Skip to main content
QUICK REVIEW

[论文解读] MicroRec: Efficient Recommendation Inference by Hardware and Data Structure Solutions

Wenqi Jiang, Zhenhao He|arXiv (Cornell University)|Oct 12, 2020
Advanced Image and Video Retrieval Techniques参考文献 54被引用 11
一句话总结

MicroRec 提出了一种高性能推荐推理引擎,通过利用笛卡尔积优化数据结构,并在FPGA上采用高带宽内存(HBM)实现并行嵌入查找,有效缓解了基于深度学习的推荐系统中的内存瓶颈问题。该方案在嵌入查找上实现了13.8–14.7倍的加速,在吞吐量上相比CPU基线提升2.5–5.4倍,推理延迟从毫秒级降至微秒级。

ABSTRACT

Deep neural networks are widely used in personalized recommendation systems. Unlike regular DNN inference workloads, recommendation inference is memory-bound due to the many random memory accesses needed to lookup the embedding tables. The inference is also heavily constrained in terms of latency because producing a recommendation for a user must be done in about tens of milliseconds. In this paper, we propose MicroRec, a high-performance inference engine for recommendation systems. MicroRec accelerates recommendation inference by (1) redesigning the data structures involved in the embeddings to reduce the number of lookups needed and (2) taking advantage of the availability of High-Bandwidth Memory (HBM) in FPGA accelerators to tackle the latency by enabling parallel lookups. We have implemented the resulting design on an FPGA board including the embedding lookup step as well as the complete inference process. Compared to the optimized CPU baseline (16 vCPU, AVX2-enabled), MicroRec achieves 13.8~14.7x speedup on embedding lookup alone and 2.5$~5.4x speedup for the entire recommendation inference in terms of throughput. As for latency, CPU-based engines needs milliseconds for inferring a recommendation while MicroRec only takes microseconds, a significant advantage in real-time recommendation systems.

研究动机与目标

  • 为解决深度学习推荐推理中因嵌入表查找期间高延迟的随机DRAM访问而导致的内存瓶颈问题。
  • 通过高效的数据结构设计,减少稀疏特征嵌入检索过程中的内存访问次数。
  • 利用FPGA上的高带宽内存(HBM)实现并发嵌入查找,降低推理延迟。
  • 实现低延迟、高吞吐量的推荐推理,适用于实时生产系统。
  • 提供一种实用的、硬件感知的解决方案,避免依赖专用DRAM架构或大规模框架优化。

提出的方法

  • 通过笛卡尔积重新设计嵌入数据结构,以最小化查找过程中的随机内存访问次数。
  • 实现深度流水线化的FPGA架构,以充分利用HBM宽内存接口带来的并行性。
  • 将嵌入表分布到多个HBM内存通道上,以提升并发访问带宽。
  • 将优化后的嵌入查找模块与FPGA加速器上的完整推理流水线集成。
  • 采用混合内存系统,结合HBM以提升内存带宽,降低稀疏特征处理的延迟。
  • 通过将计算和内存访问卸载至定制硬件,优化推理流水线,以最小化框架层面的开销。

实验结果

研究问题

  • RQ1基于笛卡尔积的数据结构能否减少推荐模型嵌入查找中的随机内存访问次数?
  • RQ2基于HBM的FPGA加速器能否实现足够的并行性,以克服推荐推理中的内存墙问题?
  • RQ3硬件感知的数据结构与内存系统协同设计在多大程度上能提升端到端推理吞吐量与延迟?
  • RQ4与优化后的CPU基线推理引擎相比,所提系统在延迟与吞吐量方面表现如何?
  • RQ5所提方案能否在工业规模推荐工作负载中,同时满足实时延迟要求(数十毫秒)并保持高吞吐量?

主要发现

  • 与优化后的16核AVX2 CPU基线相比,MicroRec在嵌入查找阶段实现了13.8–14.7倍的加速。
  • 与CPU基线相比,完整推荐推理的吞吐量提升了2.5–5.4倍,展现出显著的系统级性能增益。
  • 推理延迟从CPU上的毫秒级降至MicroRec的微秒级,使实时推荐部署成为可能。
  • 使用笛卡尔积显著减少了所需嵌入表查找的次数,直接缓解了内存访问瓶颈。
  • 基于HBM的FPGA并行化机制实现了嵌入查找的高并发性,有效消除了该工作负载的内存墙问题。
  • 端到端系统设计结合了数据结构优化与硬件加速,成功消除了推荐推理中的主要性能瓶颈。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。