[论文解读] Dynamic-OFA: Runtime DNN Architecture Switching for Performance Scaling on Heterogeneous Embedded Platforms
Dynamic-OFA 通过利用预训练的 Once-for-All (OFA) 超网络,在异构嵌入式平台上实现实时 DNN 架构切换,无需微调即可在运行时动态选择最优子网络。其在 Jetson Xavier NX 上实现了高达 3.5 倍(CPU)和 2.4 倍(GPU)的推理速度提升,或在相似延迟下实现 3.8%(CPU)和 5.1%(GPU)更高的准确率。
Mobile and embedded platforms are increasingly required to efficiently execute computationally demanding DNNs across heterogeneous processing elements. At runtime, the available hardware resources to DNNs can vary considerably due to other concurrently running applications. The performance requirements of the applications could also change under different scenarios. To achieve the desired performance, dynamic DNNs have been proposed in which the number of channels/layers can be scaled in real time to meet different requirements under varying resource constraints. However, the training process of such dynamic DNNs can be costly, since platform-aware models of different deployment scenarios must be retrained to become dynamic. This paper proposes Dynamic-OFA, a novel dynamic DNN approach for state-of-the-art platform-aware NAS models (i.e. Once-for-all network (OFA)). Dynamic-OFA pre-samples a family of sub-networks from a static OFA backbone model, and contains a runtime manager to choose different sub-networks under different runtime environments. As such, Dynamic-OFA does not need the traditional dynamic DNN training pipeline. Compared to the state-of-the-art, our experimental results using ImageNet on a Jetson Xavier NX show that the approach is up to 3.5x (CPU), 2.4x (GPU) faster for similar ImageNet Top-1 accuracy, or 3.8% (CPU), 5.1% (GPU) higher accuracy at similar latency.
研究动机与目标
- 解决由于硬件资源波动和应用工作负载变化导致的异构嵌入式平台上 DNN 推理性能动态下降的问题。
- 克服传统动态 DNN 所需的高昂训练成本,这些模型需为每个部署场景重新训练。
- 通过单一共享主干模型,实现在 CPU、GPU、NPU 等多样化计算单元上的高效运行时自适应。
- 基于当前硬件可用性和应用约束,通过选择最优子网络,改善实时环境下的准确率-延迟权衡。
- 通过离线预采样和预评估子网络,消除微调需求。
提出的方法
- 从预训练的 Once-for-All (OFA) 超网络中预采样一组子网络,涵盖宽度、深度、滤波器大小和输入分辨率的变化。
- 离线在 CPU 和 GPU 上评估所有子网络,构建准确率-延迟权衡的帕累托最优查表。
- 存储预计算的批归一化统计量,以实现快速推理和子网络切换。
- 部署一个运行时管理器(RTM),通过 50 次推理的滑动窗口实时监控延迟和准确率约束。
- 根据可用硬件资源和应用需求,在运行时动态切换子网络,最小化切换开销。
- 通过协同调整子网络以满足各自延迟约束,支持多个 Dynamic-OFA 模型在相同 GPU 上共存。
实验结果
研究问题
- RQ1是否可以利用预训练的 OFA 超网络实现在无需额外训练情况下的动态 DNN 架构切换?
- RQ2Dynamic-OFA 在异构 SoC 上面对硬件资源可用性变化时,能否有效维持高准确率?
- RQ3与当前最先进方法相比,Dynamic-OFA 是否能在 CPU 和 GPU 工作负载下实现更优的准确率-延迟权衡?
- RQ4当多个 DNN 或并发工作负载共享同一 GPU 时,Dynamic-OFA 如何管理性能约束?
- RQ5子网络切换的运行时开销是多少?其对实时响应能力有何影响?
主要发现
- 在相似 ImageNet Top-1 准确率下,Dynamic-OFA 实现了比最先进方法快 3.5 倍(CPU)和 2.4 倍(GPU)的推理速度。
- 在相似延迟下,Dynamic-OFA 在 CPU 上实现 3.8% 的更高 Top-1 准确率,在 GPU 上实现 5.1% 的更高 Top-1 准确率,优于基线方法。
- 运行时管理器成功响应延迟约束变化,例如在 GPU 上从第 6 级切换至第 2 级以满足 40ms 的严格目标。
- 当 GPU 资源与并发训练任务共享时,Dynamic-OFA 将其子网络等级从 4 降至 2,以牺牲 2.6% 准确率为代价满足延迟约束。
- 两个共存于同一 GPU 的 Dynamic-OFA 模型可协同调整其子网络以满足各自的延迟约束:模型 A 从第 6 级切换至第 5 级,模型 B 从第 5 级切换至第 4 级。
- 运行时管理器每次切换仅引入约 15ms 的开销,反应时间约为 1–2 秒(约 50 次推理),适用于实际部署。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。