近日,网络空间安全学院师生在FPGA异构加速与实时任务调度方向取得重要突破,研究成果“RT-DPU: Scheduling Real-time Tasks with Heterogeneous Multi-DPU Engines”被计算机体系结构领域国际顶级期刊IEEE Transactions on Computers(TC)接收。论文第一作者为山东大学网络空间安全学院硕士研究生任海,通讯作者为学院教授张伟。

随着机器人、自动驾驶等安全关键应用对CNN推理实时性和确定性的要求不断提高,FPGA凭借高能效和可预测的执行时延,成为实时CNN推理的重要加速平台。Xilinx DPU是面向CNN推理的专用可编程加速引擎,已成为Xilinx FPGA上的主流加速方案。然而,现有Vitis AI工具链仅支持同构多DPU部署,即所有核心采用相同的DPU架构。在多任务场景下,这种部署方式难以兼顾实时性能与资源效率:采用高算力DPU会造成BRAM、DSP等片上资源浪费,而较小DPU又可能无法满足计算密集型任务的实时要求。此外,不同CNN模型及其内部各计算阶段具有不同的计算-通信特征,对DPU算力的利用效率也各不相同,同构架构难以实现与任务特征的有效匹配。因此,如何在有限FPGA资源下按任务需求配置异构DPU,并保障多任务实时性,是亟需解决的关键问题。
针对上述问题,团队提出了一种面向异构多DPU架构的实时CNN任务调度方案。首先,以CNN任务的计算-通信比(CTC)表征其计算特征,将推理任务划分为多个任务段,并建立CTC与DPU计算能力之间的映射关系,使不同特征的任务段优先匹配适宜的DPU核心。在此基础上,进一步设计段级实时调度算法,综合考虑任务截止期、段间依赖、核心负载和DPU计算特性,为各任务段分配执行核心及执行时间窗口,并通过响应时间分析验证调度方案的可行性。实验结果表明,在Xilinx ZCU102平台上,该方案在保障所有测试任务实时性的同时,相比同构基线方案最高降低34.6%的BRAM资源占用,并可成功调度同构方案无法满足时限要求的任务集。