论文部分内容阅读
近年来随着互联网视频规模的不断增大,为了加速视频在服务器的编解码速度,提升系统性能和服务质量,视频硬件加速技术不断发展。DPU-m是一款高通量多核视频加速芯片,主要用于服务器视频的编解码处理。为了有效地利用加速芯片的负载能力,均衡调度算法的研究就显的尤为重要,调度算法的好坏直接影响到视频的响应速度和编解码速度。 对于DPU-m视频加速平台均衡调度技术的研究具有两个方面的意义:第一,通过资源的均衡分配来提高DPU-m的处理性能;第二,通过分层调度技术来改善DPU-m的负载均衡情况,减少单点过载和视频等待的现象发生。 DPU-m具有这样的层次结构:服务器上具有多个DPU-m加速卡,每一个加速卡中具有5个可以进行视频加速处理的VPU IP核,一个VPU核可以同时处理多路视频。本文基于DPU-m这样一个结构环境,自底向上,建立了三层均衡调度模型:VPU层均衡调度、DPU-m加速卡层均衡调度和服务器层均衡调度。每一层调度算法的研究都建立在前一层最优算法的基础之上。服务器层的调度算法的效果代表了整个DPU-m平台的均衡调度效果。本文首先研究和设计了VPU层的均衡调度算法,研究了并行化在VPU多视频实例调度上的应用。然后针对DPU-m加速卡层,研究了固定实例数算法、轮询算法和最大剩余能力算法。对于更高层次的服务器层,研究了多DPU-m加速卡的调度算法,提出了直接最大剩余能力算法和间接最大剩余能力算法。 本文对三个层次的均衡调度算法进行了实现和实验评估。首先针对VPU层的并行优化进行了实验验证,实验结果证明了多路视频的并行化处理能够有效地提高一个VPU的解码速度,相对于串行化的加速比达到了1.96。然后对DPU-m加速卡上的固定实例数法、轮询算法和最大剩余能力算法进行评估和分析,评估结果说明了最大剩余能力算法的均衡效果优于轮询算法和固定实例数算法。通过对服务器层的直接最大剩余能力算法和间接最大剩余能力算法的评估,发现间接最大剩余能力算法可以让多个DPU-m加速卡的视频任务分配和资源分配更加均衡。 最后,本文对整个三层均衡调度模型的性能做了分析,改进后的三层均衡调度算法使视频任务的处理速度提高到原来的2.22倍,视频等待时间缩短到原来的13.29%,视频等待时间在总任务时间的占比也缩小到原来的27.85%。这一结果充分说明了三层均衡调度算法模型比原来的DPU-m平台的调度算法更加有效,能够更加均衡的分配视频任务,减小视频等待时间,提高视频的处理速度。