面向CPU-GPU异构片上系统的深度学习神经网络功耗优化调度方法

文档序号:37587835发布日期:2024-04-18 12:17阅读:9来源:国知局
面向CPU-GPU异构片上系统的深度学习神经网络功耗优化调度方法

本发明属于图像处理领域,具体涉及一种面向cpu-gpu异构片上系统的深度学习神经网络功耗优化调度方法。


背景技术:

1、在广泛应用于图像处理、图像目标识别的前向传播神经网络中,图形处理单元(下称gpu)用于在桌面系统和服务器上加速大计算量的算法。近年来根据gpu的内存带宽和核的数量,以及具体算法对gpu的优化,各种应用程序能得到几十倍甚至几百倍的加速效果。但对于异构的多处理器片上系统(mpsoc)中,其可能会被安装到无人机等边缘端设备上来用于直接对拍摄的相片进行处理识别,从而使其运行在电量有限的环境内。若直接完全使用机载的gpu进行图像加速,则会降低该系统的续航性能,若需要其执行长时间任务时则可能需要多次充电,降低其完成任务的能力,而完全仅使用cpu进行运算,则尽管其功耗会降低,但却会图像处理性能,导致无法达到完成任务的需求。

2、近年来,随着边缘技术的发展,已经有学者对深度学习网络上各种网络层是否适合卸载到cpu上进行了研究,测试了各类型网络层分别运行在cpu或gpu上时对其计算性能和电量的影响,但是仍没有将相关测试结果和理论应用在实际应用下的电量最优化的技术。

3、因此,如何根据系统的剩余电量灵活有效地调整算法对cpu-gpu资源、电量的消耗是亟待解决的问题。


技术实现思路

1、本发明的目的在于提供一种面向cpu-gpu异构片上系统的深度学习神经网络功耗优化调度方法,其中包括网络层的分割、每种分割方式的测试和运行时按电量对运行方式的调整,来权衡运算速度和处理时间,在必要时合理地牺牲部分计算性能,调整设备的运行功率,来换取设备的续航时间,来保证有更多时间完成任务。

2、为了达到上述目的,本发明采用的技术方案为:一种面向cpu-gpu异构片上系统的深度学习神经网络功耗优化调度方法,包括以下步骤:

3、步骤1,在深度学习神经网络上确立分割点,选择每一层在cpu上运行还是在gpu上运行,实现将网络层计算任务按需迁移至cpu上执行,在相应的cpu-gpu异构片上系统测试所有网络层在cpu和gpu上性能和功耗数据,并记录下来;

4、步骤2,在cpu-gpu异构片上系统运行在电量受限的环境下时,在电池剩余电量发生改变时使用步骤1得到的数据,根据剩余电量,使用元启发式算法搜索可能的网络层切割方式,得到近似最优解并应用。

5、一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法的步骤。

6、一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。

7、本发明与现有技术相比,其显著优点在于:

8、(1)基于启发式算法并通过感知电量,高效且自适应地根据片上系统的电量选出最适合的运行模式,也就是,剩余电量较多时选择识别速度较快,但功耗较大的片上系统功耗模式和切割方式,电量较低时选择功耗较小,但识别速度较慢的片上系统功耗模式和切割方式,从而找到功耗和识别性能之间的平衡,且使用基于fitness函数的元启发式算法快速地找到近似最优的运行模式;

9、(2)可以根据需要,无视电量使用某实时度/功耗权重,来强行选择性能优先或功耗优先的模式,提高了灵活性;

10、(3)所使用的运行模式均来自实测数据,兼顾了理论和经验。

11、下面结合附图详细说明本发明提供的基于启发式算法的cpu-gpu异构片上系统功耗最优化方法。



技术特征:

1.一种面向cpu-gpu异构片上系统的深度学习神经网络功耗优化调度方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的面向cpu-gpu异构片上系统的深度学习神经网络功耗优化调度方法,其特征在于:步骤1中,在深度学习神经网络上确立分割点,选择每一层在cpu上运行还是在gpu上运行,将部分网络层的计算任务转移到cpu上,包括如下具体步骤:

3.根据权利要求1所述的面向cpu-gpu异构片上系统的深度学习神经网络功耗优化调度方法,其特征在于,步骤2所述的在片上系统运行在电量受限的环境下时,适时使用剩余电量计算并使用元启发式算法选择近似最佳的功耗模式;

4.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-3中任一所述的方法的步骤。

5.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-3中任一所述的方法的步骤。


技术总结
本发明公开了一种面向CPU‑GPU异构片上系统的深度学习神经网络功耗优化调度方法,包括:修改神经网络的实现代码以拆分神经网络,允许定义神经网络的运行模式,选择每一层网络是在CPU上运行还是在GPU上运行,在相应的CPU‑GPU异构片上系统平台测试所有可能的运行模式的时间和功耗数据,并保存;针对电池供电的CPU‑GPU异构片上系统设备,设计电量感知的深度学习神经网络功耗元启发式优化调度算法,根据电量状态并结合任务的实时性要求,使用元启发式算法寻找最适合当前状态的切割方式。本发明能够权衡深度学习神经网络在CPU‑GPU异构边缘设备上运行的实时性和能耗,通过在低电量状态下采用网络层迁移技术和动态电压调整技术,提高异构边缘设备运行深度学习神经网络的续航时间。

技术研发人员:韦志辉,黄祉峄,吴泽彬,徐洋,周俊龙,孙晋,张毅
受保护的技术使用者:南京理工大学
技术研发日:
技术公布日:2024/4/17
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1