Skip to main content
QUICK REVIEW

[论文解读] The OoO VLIW JIT Compiler for GPU Inference

Paras Jain, Xiangxi Mo|arXiv (Cornell University)|Jan 28, 2019
Parallel Computing and Optimization Techniques参考文献 26被引用 4
一句话总结

本文提出了一种受VLIW启发的乱序(Out-of-Order)即时编译(JIT)编译器,用于GPU推理,该编译器在运行时将来自多个执行流的异构核函数进行合并与重排,以在满足严格延迟SLO的前提下最大化吞吐量。通过动态打包核函数为超级核(superkernels)并利用流间并行性,该方法相比时间分片技术实现了高达7.7倍的吞吐量提升,显著提高了交互式推理工作负载中的GPU利用率。

ABSTRACT

Current trends in Machine Learning~(ML) inference on hardware accelerated devices (e.g., GPUs, TPUs) point to alarmingly low utilization. As ML inference is increasingly time-bounded by tight latency SLOs, increasing data parallelism is not an option. The need for better efficiency motivates GPU multiplexing. Furthermore, existing GPU programming abstractions force programmers to micro-manage GPU resources in an early-binding, context-free fashion. We propose a VLIW-inspired Out-of-Order (OoO) Just-in-Time (JIT) compiler that coalesces and reorders execution kernels at runtime for throughput-optimal device utilization while satisfying latency SLOs. We quantify the inefficiencies of space-only and time-only multiplexing alternatives and demonstrate an achievable 7.7x opportunity gap through spatial coalescing.

研究动机与目标

  • 为解决交互式DNN推理工作负载中GPU利用率低下这一关键问题,该问题由低并行性与严格的延迟SLO限制了效率。
  • 克服静态预编译工具(如TensorRT)的局限性,后者无法适应动态、突发性的推理工作负载。
  • 实现在多个执行流之间动态合并与重排异构核函数,以最大化GPU计算与内存利用率。
  • 探索一种受VLIW启发的编译模型,将复杂性从硬件转移到JIT编译器,实现在GPU上的高效时空调度。
  • 证明动态核函数打包能够弥合简单时间分片与最优时空利用率之间的7.7倍效率差距。

提出的方法

  • JIT编译器在运行时对多个独立的推理流进行操作,将小型、独立的核函数合并为更大的超级核,以提升内存与计算利用率。
  • 采用动态乱序调度策略,在不同流之间重排核函数执行顺序,优先处理可满足延迟SLO的核函数,同时最大化吞吐量。
  • 通过自动调优预先计算常见核函数簇的最优配置(如分块参数),以减少运行时编译开销。
  • 核函数合并基于矩阵乘法操作的形状进行聚类,最小化填充开销,并通过类似cuBLAS的内核实现高效批量执行。
  • 编译器动态延迟或重排尚无法合并的核函数,将等待时间与其它流的计算重叠。
  • 通过监控每个核函数的延迟,支持多租户GPU环境,实现实时资源再分配与工作负载隔离。

实验结果

研究问题

  • RQ1在严格延迟SLO约束下,动态运行时核函数合并与重排是否能显著提升交互式DNN推理中的GPU利用率?
  • RQ2在GPU推理中,简单时间分片与最优时空调度之间的可实现性能差距是多少?
  • RQ3受VLIW启发的JIT编译器在多个执行流之间合并异构DNN核函数方面效果如何?
  • RQ4核函数配置的自动调优是否能提升运行时动态超级核生成的效率?
  • RQ5与静态预编译相比,动态JIT编译在提升吞吐量与资源利用率方面具有多大优势?

主要发现

  • 所提出的OoO VLIW JIT编译器在ResNet-18中间卷积层上,相比时间分片实现7.71倍的几何平均吞吐量加速,相比Hyper-Q空间复用实现3.23倍加速。
  • 在RNN/LSTM推理中合并矩阵-向量乘法可实现2.48倍的吞吐量加速,表明该方法在各类DNN中均具广泛适用性。
  • 分块配置的自动调优使共租优化核函数的峰值吞吐量提升1.25倍,即使在孤立运行时性能下降20%的情况下依然有效。
  • 通过将核函数合并导致的空闲时间与其它流的活跃计算重叠,编译器有效缓解了GPU利用率瓶颈。
  • 通过监控每个核函数的延迟,该方法实现了租户间的动态资源再分配,提升了可预测性与隔离性。
  • 本研究识别出当前时间分片方法与理论最优时空调度之间存在7.7倍的GPU利用率机会差距。

更好的研究,从现在开始

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

无需绑定信用卡

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