CN111310922A - 处理深度学习计算任务的方法、装置、设备和存储介质 - Google Patents
处理深度学习计算任务的方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN111310922A CN111310922A CN202010231027.7A CN202010231027A CN111310922A CN 111310922 A CN111310922 A CN 111310922A CN 202010231027 A CN202010231027 A CN 202010231027A CN 111310922 A CN111310922 A CN 111310922A
- Authority
- CN
- China
- Prior art keywords
- subtask
- unloading
- deep learning
- candidate
- task
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请涉及一种处理深度学习计算任务的方法、装置、计算机设备和存储介质。所述方法包括:获取包含多个子任务的深度学习任务和对应的多个候选卸载策略,子任务对应的卸载状态参数为保留或卸载;获取移动终端与目标边缘设备的实时传输速率和传输功率;获取各个子任务分别在移动终端和目标边缘设备上执行时的预设执行参数;根据卸载状态参数、传输参数、计算时长和计算功率,计算得到候选卸载策略的运行时长和能耗;根据运行时长和对应的能耗,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略,采用目标卸载策略执行深度学习任务,对深度学习任务进行决策,采用得到的决策执行深度学习任务,提高深度学习任务的执行速率。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种处理深度学习计算任务的方法、装置、设备和存储介质。
背景技术
随着人工智能的广泛应用,很多深度学习模型用于移动终端业务,例如图像识别、VR、AR、语音识别等。由于调用深度学习模型进行计算通常需要传输大量的图像、音频或者视频数据,将深度学习模型部署在云端会导致较大的传输时延。目前学术界和工业界开始将模型直接部署在移动设备中完成运算,从而减少网络传输带来的开销。但是,常见的深度学习模型通常包含庞大的参数量,层数也非常多,资源有限的移动设备往往不能满足深度学习任务的计算和存储需求。神经网络压缩是解决这一问题的有效方法,通过剪枝、量化、卷积核分解等技术,减少参数量或运算量,得到轻量级的神经网络模型。但是神经网络压缩需要较高的设计技巧,在实际工程应用中过于复杂,同时模型在压缩之后往率的下降。
随着边缘计算的发展,很多学者利用计算卸载技术将深度学习模型中的部分层卸载到边缘设备上。每个深度学习模型各不相同,卸载不同的深度学习模型需要采用不同的卸载方法。而现有的卸载方法并未说明如何卸载不同的深度学习模型,从而使得移动终端和边缘设备的协同工作后,可以有效的减轻移动终端的计算开销和减少计算耗时。
发明内容
为了解决上述技术问题,本申请提供了一种处理深度学习计算任务的方法、装置、计算机设备和存储介质。
第一方面,本申请提供了一种处理深度学习计算任务的方法,包括:
针对包含多个子任务的深度学习任务,获取深度学习任务的多个候选卸载策略,每个卸载策略中的各个子任务对应的卸载状态参数为保留参数或卸载参数;
获取移动终端与目标边缘设备之间进行数据传输的传输参数;
获取各个子任务分别在移动终端和目标边缘设备上执行时的预设执行参数;
根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数、预设执行参数,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略。
第二方面,本申请提供了一种处理深度学习计算任务的装置,包括:
策略获取模块,用于针对包含多个子任务的深度学习任务,获取深度学习任务的多个候选卸载策略,每个所述卸载策略中的各个子任务对应的卸载状态参数为保留参数或卸载参数;
数据获取模块,用于获取移动终端与目标边缘设备之间进行数据传输的传输参数,获取各个子任务分别在所述移动终端和目标边缘设备上执行时的预设执行参数;
数据处理模块,用于根据每个所述候选卸载策略中各个子任务的卸载状态参数、传输参数、预设执行参数,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略。
在其中一个实施例中,提供了一种处理深度学习计算任务的方法,包括:
接收深度学习任务,深度学习任务包括多个子任务,每个子任务携带一个卸载状态参数和执行顺序;
根据执行顺序从深度学习任务中筛选出当前子任务;
当当前子任务的卸载状态参数为保留时,执行当前子任务;
当当前子任务的卸载状态参数为卸载时,发送当前子任务至目标边缘设备,在目标边缘设备上执行当前子任务;
根据执行顺序获取下一个子任务,根据下一子任务的卸载状态参数执行下一子任务,直至当前任务为深度学习任务的最后一个子任务,得到深度学习任务的执行结果。
在其中一个实施例中,提供了一种处理深度学习计算任务的装置,包括:
任务接收模块,用于接收深度学习任务,深度学习任务包括多个子任务,每个子任务携带一个卸载状态参数和执行顺序;
任务筛选模块,用于根据执行顺序从深度学习任务中筛选出当前子任务;
任务执行模块,用于当当前子任务的卸载状态参数为保留时,执行当前子任务;
任务发送模块,用于当当前子任务的卸载状态参数为卸载时,发送当前子任务至目标边缘设备,在目标边缘设备上执行当前子任务;
循环模块,用于根据执行顺序获取下一个子任务,根据下一子任务的卸载状态参数执行下一子任务,直至当前任务为深度学习任务的最后一个子任务,得到深度学习任务的执行结果。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行所述计算机程序时实现上述处理深度学习计算任务的方法。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述处理深度学习计算任务的方法。
上述处理深度学习计算任务的方法、装置、计算机设备和存储介质。所述方法包括:针对包含多个子任务的深度学习任务,获取深度学习任务的多个候选卸载策略,每个卸载策略中的各个子任务对应的卸载状态参数为保留参数或卸载参数;获取移动终端与目标边缘设备之间进行数据传输的传输参数;获取各个子任务分别在移动终端和目标边缘设备上执行时的预设执行参数;根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数和预设执行参数,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略。通过获取到的传输速率、传输功耗和预设的多个候选卸载策略对应的卸载状态参数,计算并统计各个候选卸载策略的运行时长和能耗,根据运行时长和能耗确定目标卸载策略,并按照目标卸载策略执行深度学习任务。根据实时获取的参数从预设的多个候选卸载策略中筛选出目标卸载策略,实现深度学习任务的卸载,按照目标卸载策略通过移动终端和边缘设备的协同,减轻移动终端的计算开销并减少计算耗时。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中处理深度学习计算任务的方法的应用环境图;
图2为一个实施例中处理深度学习计算任务的方法的流程示意图;
图3为一个实施例中深度学习的任务转化图;
图4为另一个实施例中深度学习的任务转化图;
图5为另一个实施例中处理深度学习计算任务的方法的流程示意图;
图6为一个实施例中处理深度学习计算任务的装置的结构框图;
图7为一个实施例中处理深度学习计算任务的装置的结构框图;
图8为一个实施例中处理深度学习计算任务的装置的结构框图;
图9为另一个实施例中处理深度学习计算任务的装置的结构框图;
图10为一个实施例中计算机设备的内部结构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为一个实施例中处理深度学习计算任务的方法的应用环境图。参照图1,该处理深度学习计算任务的方法应用于处理深度学习任务的系统。该处理深度学习任务的系统包括移动终端110和边缘设备组120(包括边缘设备121、边缘设备122和边缘设备123)。移动终端110和边缘设备120均通过网络连接。移动终端110或边缘设备组120中的任意一个边缘设备获取包含多个子任务的深度学习任务;获取包含多个子任务的深度学习任务;获取深度学习任务的多个候选卸载策略,每个卸载策略中的各个子任务对应的卸载状态参数为保留参数或卸载参数;获取移动终端与目标边缘设备之间进行数据传输的传输参数,获取各个子任务分别在移动终端和目标边缘设备上执行时的预设执行参数;根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数、计算时长和计算功率,计算得到每个候选卸载策略对应的运行时长和能耗;根据每个候选卸载策略对应的运行时长和对应的能耗,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略。
移动终端110具体可以为手机、平板电脑、笔记本电脑等中的至少一种。边缘设备121、边缘设备122和边缘设备123是指可以实现采集边缘数据、智能的运算能力和可操作的决策反馈的设备。边缘设备120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
如图2所示,在一个实施例中,提供了一种处理深度学习计算任务的方法。本实施例主要以该方法应用于上述图1中的移动终端110来举例说明。参照图2,该处理深度学习计算任务的方法具体包括如下步骤:
步骤S201,针对包含多个子任务的深度学习任务,获取深度学习任务的多个候选卸载策略。
在本具体实施例中,候选卸载策略中每个卸载策略中的各个子任务对应的卸载状态参数为保留参数或卸载参数。
步骤S202,获取移动终端与目标边缘设备之间进行数据传输的传输参数。
步骤S203,获取各个子任务分别在移动终端和目标边缘设备上执行时的预设执行参数。
步骤S204,根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数和预设执行参数,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略。
具体地,深度学习任务是指用于在移动终端上执行的学习任务,深度学习任务中包含多个网络层。子任务通过对深度学习任务进行拆分得到,每个子任务对应一个或多个网络层。深度学习任务的执行过程可以建模为一个链式的任务图。
举例说明,任务图参照图3和图4所示。图3中AlexNet模型对应的深度学习任务图,该模型包含8个网络层,5个卷积层conv1到conv5,和3个全连接层fc6到fc8,对应8个子任务,即Task1至Task8。图4为Inception V1模型对应的深度学习任务图,其中前驱层Previouslayer对应为Task1,多个卷积核单元和池化单元组成的网络层对应为Task2,滤波器级联Filter concatenation对应为Task3。
候选卸载策略包括深度学习任务中每个子任务的卸载状态参数,卸载状态参数包括卸载参数和保留参数,当子任务的卸载状态参数为卸载参数时,子任务在边缘设备上执行,当子任务的卸载状态参数为保留参数时,子任务在移动终端上执行。获取深度学习任务对应的各个预先配置的候选卸载策略。传输参数包括出实时传输速率和传输功率等等,其中实时传输速率包括移动上传数据至目标边缘设备的上传速率和接收目标边缘设备发送的数据接收速率。传输功率是指移动终端上传数据或接收数据所需的功率。
预设执行参数包括计算时长和计算功率等,其中计算时长是指各个子任务在移动终端或目标边缘设备上执行时的时长。其中移动终端的计算时长可以是任务在移动终端运行后得到的真实计算时长,也可以是类似的设备上运行后得到的计算时长。目标边缘设备的计算时长可是为任务目标边缘设备运行后得到的真实计算时长,也可以是任务在类似的设备上运行后得到的计算时长。根据卸载参数判断各个子任务的计算时长为移动终端还是为目标边缘设备上的计算时长。当数据需要进行传输时,则可以通过实时传输速率和子任务确定传输时长,传输时长是指移动终端和目标边缘设备之间传输数据所需的时长。如根据上传速率或下载速率计算传输时长,对每个子任务的计算时长和对应的传输时长进行求和,得到子任务的运行时长。统计每个子任务的运行时长得到深度学习任务的运行时长。每个候选卸载策略都对应一个运行时长,即对应执行该深度学习任务的总运行时长。同理,根据计算时长、传输速率、传输功率和运行功率计算得到每个子任务的运行功耗,统计每个候选卸载策略对应的各个子任务的运行功耗,得到每个候选卸载策略对应的能耗。根据每个候选卸载策略对应的能耗和运行时长,从多个候选卸载策略中筛选运行时长和对应的能耗满足预设条件的候选卸载策略作为目标卸载策略。
其中,预设条件是预先设置的用于筛选卸载策略的约束条件,如筛选能耗最少的或运行时长最少的,还可以是筛选能耗满足预设能耗阈值,且耗时最少的候选卸载策略。
在一个实施例中,当移动终端对应的边缘设备为多个时,从多个边缘设备中选取其中一个边缘设备作为目标边缘设备。如根据边缘设备的负载值、网络质量等等与网络相关的参数选取其中的至少一个边缘设备作为目标边缘设备。
将深度学习模型的计算过程建模为任务图后,每个子任务可以在移动终端运行或者卸载到边缘服务器中运行。可以用一个二元变量x={0,1}来表示子任务的卸载状态参数,其中0表示子任务在移动终端运行,1表示子任务卸载到边缘服务器。整个任务的耗时包括任务的计算时间以及数据的传输时间,任务在移动终端产生的能耗包括计算能耗和通信能耗,根据执行深度所需的时长和能耗确定整个任务的执行方式,从中选择满足预设条件的执行方式,如选择能耗最小的,则可以节约能耗,选择耗时最少的,可以节约耗时,也可以选择耗时和耗能都在预设范围内的,还可以选择耗能小于预设耗能值,且耗时最小的卸载策略,在模型的执行速度较快的情况下,还可以平衡能耗。
在一个实施例中,步骤S204,包括:根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数和预设执行参数,计算得到各个候选卸载策略的运行时长和能耗;从多个候选卸载策略中筛选出能耗小于预设能耗的候选卸载策略,作为第一候选卸载策略;从第一候选卸载策略中筛选出运行时长最小的候选卸载策略,作为目标卸载策略。
具体地,根据各个子任务对应的卸载状态参数,确定每个子任务对应的时间参数和能耗参数包括哪些,并根据获取到的参数计算得到运行时长和能耗。即,若当前任务的卸载状态参数为卸载,则该子任务对应的时间参数包括在目标边缘设备上执行该子任务的计算时长。若当前子任务上一个相邻的子任务在移动终端上执行,则该子任务的时间参数还包括传输时长,其中传输时长是指从移动终端发送该子任务至目标边缘设备的时长。该任务的能耗参数包括能耗参数,其中能耗参数包括传输功率和实时传输速率。传输功率为发送该子任务至目标边缘设备所需的功率,每个移动设备的传输功率为固定值,计算时长为预先配置的时长,传输时长可以根据实时传输速率和子任务的大小计算得到。
同理,若当前任务的卸载状态参数为保留,则该子任务对应的时间参数包括在移动终端上执行该子任务的执行时长。若当前子任务上一个相邻的子任务在目标设备上执行,则该子任务的时间参数还包括传输时长。其中传输时长是指从移动终端接收该子任务的时长。该任务的能耗参数包括实时传输速率和运行功率。运行功率是指在移动终端上运行该子任务所需的功率。实时传输速率和该子任务的数据大小计算该子任务的传输时长。
根据各个子任务的卸载参数获取到的时间参数和能耗参数,计算得到各个候选卸载的运行时长和能耗之后,根据能耗从候选卸载策略中选择第一卸载策略,即从中选择能耗小于预设能耗的候选卸载策略作为第一卸载策略,从第一卸载策略中选择满足时间约束条件的卸载策略,得到目标卸载策略。时间约束条件为计算时长小于预设时长,或选择时长最小的候选卸载策略等,作为目标卸载策略。
在一个实施例中,步骤S202之前,还包括:获取深度学习任务对应的各个候选边缘设备的实时负载值;根据实时负载值从多个候选边缘设备中,筛选最小的实时负载值对应的候选边缘设备作为目标边缘设备。
具体地,候选边缘设备是指该深度学习任务对应的边缘设备,深度学习任务对应的设备是提供提交深度学习任务的移动终端所在位置确定的,不同地方设置有不同的边缘设备,同一个移动终端位于不同的位置时,该移动终端对应的边缘设备不同。实时负载值是用于实时衡量边缘设备的负载情况的值,通过实时负载值来判断边缘设备的可利用的计算资源,相同的设备,负载越高,可利用的计算资源越少,反之,负载越低可利用的负载越多。从多个候选边缘设备中选取负载值最小的边缘设备作为目标边缘设备。
在一个实施例中,获取深度学习任务对应的各个候选边缘设备的实时负载值之前,还包括:获取各个候选边缘设备的中央处理器的实时利用率;获取各个候选边缘设备的实时内存利用率;计算各个候选边缘设备的实时内存利用率和中央处理器的实时利用率的加权和,得到各个候选边缘设备的实时负载值。
具体地,中央处理器(Central Processing Unit,CPU)利用率来判断各个CPU的反应速度,利用率越高,反应速度越慢。内存用来存放CPU要执行的指令数据,内存利用率表示了存储的指令数据的多少,内存利用率越高,CPU要执行的指令就越多,反之,内存利用率越低,则表示CPU要执行的指令就越少。计算各个候选边缘设备的实时内存利用率和中央处理器的实时利用率的加权和,其中,中央处理器的实时利用率Rc的加权系数Wc和实时内存利用率Rm的加权系数Wm可自定义设置,不同的场景下可以设置不同的加权系数,如更看重实时内存利用率时,则设置实时内存利用率的加权系数Wm大于CPU实时利用率的加权系数Wc,如更看重CPU实时利用率时,则设置内存利用率的加权系数Wm小于CPU实时利用率的加权系数Wc。实时负载值R=Wc*Rc+Wm*Rm。通过CPU实时利用率和实时内存利用率共同计算各个候选边缘的实时负载值,从得到的实时负载值中选取满足预设设备筛选条件的边缘设备作为目标边缘设备。其中预设设备筛选条件可以为负载最小,当负载一致时,可以考虑网络的稳定性等等。
在一个实施例中,传输参数包括实时传输速率和传输功率,预设执行参数包括计算时长和计算功率,深度学习任务X的l个子任务分别为x1,x2,...,xl,候选卸载策略的数量为N,第k个候选卸载策略的能耗Ek的计算公式具体如下:
其中,为第k个候选卸载策略中的第i个子任务的卸载状态参数,当和分别表示在移动终端和在目标边缘设备执行第k个候选卸载策略中的第i个子任务,Cin为深度学习任务的数据的输入量,Ci为第i个子任务的输出数据量,mti为第i个子任务在移动终端的计算时长,eti为第i个子任务在目标边缘设备的计算时长,Vup和Vdown分别为移动终端上传速度和下载速度,Pi为第i个子任务在移动终端运行的计算功率,Pup和Pdown分别为移动终端的发射功耗和接收功耗。
在一个实施例中,传输参数包括实时传输速率和传输功率,预设执行参数包括计算时长和计算功率,深度学习任务X的l个子任务分别为x1,x2,...,xl,候选卸载策略的数量为N,第k个候选卸载策略的运行时长Tk的计算公式具体如下:
其中,为第k个候选卸载策略中的第i个子任务的卸载状态参数,当和分别表示在移动终端和在目标边缘设备执行第k个候选卸载策略中的第i个子任务,Cin为深度学习任务的数据的输入量,Ci为第i个子任务的输出数据量,mti为第i个子任务在移动终端的计算时长,eti为第i个子任务在目标边缘设备的计算时长,Vup和Vdown分别为移动终端上传速度和下载速度,Pi为第i个子任务在移动终端运行的计算功率,Pup和Pdown分别为移动终端的发射功耗和接收功耗。
在一个实施例中目标卸载策略对应的运行时长T=minTk,Ek<E,k=1,2,...,N,其中min表示取运行时长的最小值,E为预设能耗。
在一个实施例中,上述处理深度学习计算任务的方法,还包括:获取目标卸载策略中卸载参数为卸载的子任务,得到第一子任务集合;发送第一子任务集合至目标边缘设备,第一子任务集合中的各个子任务,均在目标边缘设备中执行。
具体地,当终端确定出该深度学习任务的目标策略后,保留目标策略中的卸载参数为保留的子任务。将目标策略中的卸载参数为卸载的任务发送至目标边缘设备,即将第一任务集合中的任务发送至目标边缘设备。按照深度学习任务中各个子任务的执行顺序执行各个子任务,即位于终端上的任务,在终端上执行,位于目标边缘设备上的子任务在目标边缘设备上执行。
在一个实施例中,提供了一种处理深度学习计算任务的方法,本实施例主要以该方法应用于上述图1中的移动终端110来举例说明。参照图5,该处理深度学习计算任务的方法具体包括如下步骤:
步骤S301,接收深度学习任务。
在本具体实施例中,深度学习任务包括多个子任务,每个子任务携带一个卸载状态参数和执行顺序。
具体地,移动终端在接收到深度学习任务后,对深度深度任务进行决策,得到决策结果,即得到深度学习任务中个子任务的卸载状态参数。也可以在接收到深度学习任务,将深度学习任务发送给对应的决策设备,决策设备对深度学习任务进行决策,得到决策结果,将决策结果返回给移动终端。深度学习任务的各个子任务的执行顺序是预先定义好的顺序,如采用深度学习模型执行目标识别、目标跟踪、分割等等,该执行顺序由该深度学习模型的各个网络层的连接关系确定。
步骤S302,根据执行顺序从深度学习任务中筛选出当前子任务。
步骤S303,当当前子任务的卸载状态参数为保留时,执行当前子任务。
步骤S304,当当前子任务的卸载状态参数为卸载时,发送当前子任务至目标边缘设备,在目标边缘设备上执行当前子任务。
步骤S305,根据执行顺序获取下一个子任务,根据下一子任务的卸载状态参数执行下一子任务,直至当前任务为深度学习任务的最后一个子任务,得到深度学习任务的执行结果。
具体地,按照执行顺序依次执行各个子任务,按照执行顺序确定当前正准备执行的子任务,将该子任务作为当前子任务。如正准备执行第一个子任务,则将第一个子任务作为当前子任务,以此类推,当执行的子任务为最后一个子任务时,执行完最后一个子任务后,得到该深度学习任务的执行结果,若执行最后一个子任务的是移动终端,则直接输出该结果,当最后一个子任务的是目标边缘设备,则目标边缘设备将该执行结果发送给移动终端。其中子任务是在移动终端上执行和还在目标边缘设备上执行,是根据各个当前子任务的卸载状态参数确定的,当当前子任务的卸载状态参数为保留时,直接在移动终端上执行该子任务,当当前子任务的卸载状态参数为卸载时,则在目标边缘设备上执行该子任务。其中,当两个相邻的子任务的执行端不一致时,需要在其中一端执行完上一个子任务后,将上一个子任务的执行结果发送给另一端。如第一子任务在移动终端上执行,第二子任务在目标边缘设备上执行,则在移动终端上执行完第一子任务后,将第一子任务的执行结果和第二子任务发送给目标边缘设备,在目标边缘设备上执行第二子任务,直至执行完深度学习任务中的全部子任务,得到深度学习的执行结果。
在一个实施例中,深度学习任务的目标卸载策略是通过对全部的卸载策略的运行时长和能耗进行筛选得到的卸载策略。
按照卸载策略通过移动端和边缘端的协同,减轻了移动端的计算负载,加速了深度学习模型的计算过程,提升用户的使用体验。从而推动了人工智能在移动业务中的应用。现有的深度学习计算任务卸载策略没有考虑多边缘服务器场景中的负载不均衡问题,造成某些边缘服务器节点负载过重导致任务执行效率低,也会导致服务器资源利用率低。提出一种面向负载均衡的深度学习计算任务卸载方法,优先选择负载值较低的边缘服务器来卸载任务,避免了服务器负载不均衡的问题。
图2或图5为一个实施例中处理深度学习计算任务的方法的流程示意图。应该理解的是,虽然图2或图5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2或图5中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图6所示,提供了一种处理深度学习计算任务的装置200,包括:
策略获取模块202,用于针对包含多个子任务的深度学习任务,获取深度学习任务的多个候选卸载策略,每个候选卸载策略中的各个子任务对应的卸载状态参数为保留参数或卸载参数。
数据获取模块202,用于实时获取移动终端与目标边缘设备之间的传输速率和传输功率,获取各个子任务分别在移动终端和目标边缘设备上执行时的预设执行参数。
决策模块203,用于根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数和预设执行参数,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略。
在一个实施例中,预设条件包括计算时长约束条件和能耗约束条件,决策模块203具体用于根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数和预设执行参数,计算得到各个候选卸载策略的运行时长和能耗;从多个候选卸载策略中,筛选出能耗小于能耗约束条件中的预设能耗的候选卸载策略,作为第一候选卸载策略;从第一候选卸载策略中筛选出满足计算时长约束条件的的候选卸载策略,作为目标卸载策略。
在一个实施例中,处理深度学习计算任务的装置200的深度学习任务X的l个子任务分别为x1,x2,...,xl,候选卸载策略的数量为N,第k个候选卸载策略的运行时长为Tk和对应的能耗Ek的计算公式具体如下:
其中,为第k个候选卸载策略中的第i个子任务的卸载状态参数,当和分别表示在移动终端和在目标边缘设备执行第k个候选卸载策略中的第i个子任务,Cin为深度学习任务的数据的输入量,Ci为第i个子任务的输出数据量,mti为第i个子任务在移动终端的计算时长,eti为第i个子任务在目标边缘设备的计算时长,Vup和Vdown分别为移动终端上传速度和下载速度,Pi为第i个子任务在移动终端运行的计算功耗,Pup和Pdown分别为移动终端的发射功耗和接收功耗;目标卸载策略的运行时长T=minTk,Ek<E,k=1,2,...,N,其中min表示取运行时长的最小值,E为预设能耗。
在一个实施例中,如图7所示,上述处理深度学习计算任务的装置200,还包括:
负载获取模块205,用于获取深度学习任务对应的各个候选边缘设备的实时负载值。
边缘设备筛选模块206,用于根据实时负载值从多个候选边缘设备中,筛选最小的实时负载值对应的候选边缘设备作为目标边缘设备。
在一个实施例中,如图8所示,上述处理深度学习计算任务的装置200,还包括:
负载参数获取模块207,用于获取各个候选边缘设备的中央处理器的实时利用率,获取各个候选边缘设备的实时内存利用率;
负载计算模块208,用于计算各个候选边缘设备的实时内存利用率和中央处理器的实时利用率的加权和,得到各个候选边缘设备的实时负载值。
在一个实施例中,上述处理深度学习计算任务的装置200,还包括:发送模块,用于获取目标卸载策略中卸载参数为卸载的子任务,得到第一子任务集合,发送第一子任务集合至目标边缘设备,第一子任务集合中的各个子任务,均在目标边缘设备中执行。
在一个实施例中,如图9所示,处理深度学习计算任务的装置300,包括:
任务接收模块301,用于接收深度学习任务,深度学习任务包括多个子任务,每个子任务携带一个卸载状态参数和执行顺序。
任务筛选模块302,用于根据执行顺序从深度学习任务中筛选出当前子任务。
任务执行模块303,用于当当前子任务的卸载状态参数为保留时,执行当前子任务。
任务发送模块304,用于当当前子任务的卸载状态参数为卸载时,发送当前子任务至目标边缘设备,在目标边缘设备上执行当前子任务。
循环模块305,用于根据执行顺序获取下一个子任务,根据下一子任务的卸载状态参数执行下一子任务,直至当前任务为深度学习任务的最后一个子任务,得到深度学习任务的执行结果。
图10示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的移动终端110(或边缘设备120)。如图10所示,该计算机设备通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现处理深度学习计算任务的方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行处理深度学习计算任务的方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的处理深度学习计算任务的装置可以实现为一种计算机程序的形式,计算机程序可在如图10所示的计算机设备上运行。计算机设备的存储器中可存储组成该处理深度学习计算任务的装置的各个程序模块,比如,图6所示的策略获取模块201、数据获取模块202和决策模块203。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的处理深度学习计算任务的方法中的步骤。比如,图9所示的任务接收模块301、任务筛选模块302、任务执行模块303和任务发送模块304。
例如,图10所示的计算机设备可以通过如图6所示的处理深度学习计算任务的装置中的策略获取模块201执行针对包含多个子任务的深度学习任务。获取深度学习任务的多个候选卸载策略,每个卸载策略中的各个子任务对应的卸载状态参数为保留参数或卸载参数。计算机设备可以通过数据获取模块202执行用于获取移动终端与目标边缘设备之间进行数据传输的传输参数,获取各个子任务分别在移动终端和目标边缘设备上执行时的预设执行参数。计算机设备可以通过拒测模块203执行根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数和预设执行参数,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:针对包含多个子任务的深度学习任务,获取深度学习任务的多个候选卸载策略,每个卸载策略中的各个子任务对应的卸载状态参数为保留参数或卸载参数;获取移动终端与目标边缘设备之间进行数据传输的传输参数;获取各个子任务分别在移动终端和目标边缘设备上执行时的预设执行参数;根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数和预设执行参数,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略。
在一个实施例中,述预设条件包括计算时长约束条件和能耗约束条件,根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数和预设执行参数,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略,包括:根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数和预设执行参数,计算得到各个候选卸载策略的运行时长和能耗;从多个候选卸载策略中,筛选出能耗小于能耗约束条件中的预设能耗的候选卸载策略,作为第一候选卸载策略;从第一候选卸载策略中筛选出满足计算时长约束条件的的候选卸载策略,作为目标卸载策略。
在一个实施例中,传输参数包括实时传输速率和传输功率,预设执行参数包括计算时长和计算功率,深度学习任务X的l个子任务分别为x1,x2,...,xl,候选卸载策略的数量为N,第k个候选卸载策略的能耗Ek的计算公式具体如下:
其中,为第k个候选卸载策略中的第i个子任务的卸载状态参数,当和分别表示在移动终端和在目标边缘设备执行第k个候选卸载策略中的第i个子任务,Cin为深度学习任务的数据的输入量,Ci为第i个子任务的输出数据量,mti为第i个子任务在移动终端的计算时长,Vup和Vdown分别为移动终端上传速度和下载速度,Pi为第i个子任务在移动终端运行的计算功率,Pup和Pdown分别为移动终端的发射功耗和接收功耗,第一候选卸载策略的能耗满足Ek<E,E为预设能耗,第一候选卸载策略的能耗满足Ek<E,E为预设能耗。
在一个实施例中,传输参数包括实时传输速率和传输功率,预设执行参数包括计算时长和计算功率,深度学习任务X的l个子任务分别为x1,x2,...,xl,候选卸载策略的数量为N,第k个候选卸载策略的运行时长Tk的计算公式具体如下:
其中,为第k个候选卸载策略中的第i个子任务的卸载状态参数,当和分别表示在移动终端和在目标边缘设备执行第k个候选卸载策略中的第i个子任务,Cin为深度学习任务的数据的输入量,Ci为第i个子任务的输出数据量,mti为第i个子任务在移动终端的计算时长,eti为第i个子任务在目标边缘设备的计算时长,Vup和Vdown分别为移动终端上传速度和下载速度,Pi为第i个子任务在移动终端运行的计算功率,Pup和Pdown分别为移动终端的发射功耗和接收功耗。
在一个实施例中,获取移动终端与目标边缘设备之间进行数据传输的传输参数之前,处理器执行计算机程序时还实现以下步骤:获取深度学习任务对应的各个候选边缘设备的实时负载值;根据实时负载值从多个候选边缘设备中,筛选最小的实时负载值对应的候选边缘设备作为目标边缘设备。
在一个实施例中,获取深度学习任务对应的各个候选边缘设备的实时负载值,包括:获取各个候选边缘设备的中央处理器的实时利用率;获取各个候选边缘设备的实时内存利用率;计算各个候选边缘设备的实时内存利用率和实时中央处理器的利用率的加权和,得到各个候选边缘设备的实时负载值。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取目标卸载策略中卸载参数为卸载的子任务,得到第一子任务集合;发送第一子任务集合至所述目标边缘设备,第一子任务集合中的各个子任务,均在目标边缘设备中执行。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取包含多个子任务的深度学习任务;针对深度学习任务的多个候选卸载策略,每个卸载策略中的各个子任务对应的卸载状态参数为保留参数或卸载参数;获取移动终端与目标边缘设备之间进行数据传输的传输参数,获取各个子任务分别在移动终端和目标边缘设备上执行时的预设执行参数;根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数和预设执行参数,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略。
在一个实施例中,预设条件包括计算时长约束条件和能耗约束条件,根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数和预设执行参数,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略,包括:根据每个候选卸载策略中各个子任务的卸载状态参数、传输参数和预设执行参数,计算得到各个候选卸载策略的运行时长和能耗;从多个候选卸载策略中,筛选出能耗小于能耗约束条件中的预设能耗的候选卸载策略,作为第一候选卸载策略;从第一候选卸载策略中筛选出满足计算时长约束条件的的候选卸载策略,作为目标卸载策略。
在一个实施例中,传输参数包括实时传输速率和传输功率,预设执行参数包括计算时长和计算功率,深度学习任务X的l个子任务分别为x1,x2,...,xl,候选卸载策略的数量为N,第k个候选卸载策略的能耗Ek的计算公式具体如下:
其中,为第k个候选卸载策略中的第i个子任务的卸载状态参数,当和分别表示在移动终端和在目标边缘设备执行第k个候选卸载策略中的第i个子任务,Cin为深度学习任务的数据的输入量,Ci为第i个子任务的输出数据量,mti为第i个子任务在移动终端的计算时长,Vup和Vdown分别为移动终端上传速度和下载速度,Pi为第i个子任务在移动终端运行的计算功率,Pup和Pdown分别为移动终端的发射功耗和接收功耗,第一候选卸载策略的能耗满足Ek<E,E为预设能耗,第一候选卸载策略的能耗满足Ek<E,E为预设能耗。
在一个实施例中,传输参数包括实时传输速率和传输功率,预设执行参数包括计算时长和计算功率,深度学习任务X的l个子任务分别为x1,x2,...,xl,候选卸载策略的数量为N,第k个候选卸载策略的运行时长Tk的计算公式具体如下:
其中,为第k个候选卸载策略中的第i个子任务的卸载状态参数,当和分别表示在移动终端和在目标边缘设备执行第k个候选卸载策略中的第i个子任务,Cin为深度学习任务的数据的输入量,Ci为第i个子任务的输出数据量,mti为第i个子任务在移动终端的计算时长,eti为第i个子任务在目标边缘设备的计算时长,Vup和Vdown分别为移动终端上传速度和下载速度,Pi为第i个子任务在移动终端运行的计算功率,Pup和Pdown分别为移动终端的发射功耗和接收功耗。
在一个实施例中,获取移动终端与目标边缘设备之间进行数据传输的传输参数之前,计算机程序被处理器执行时还实现以下步骤:获取深度学习任务对应的各个候选边缘设备的实时负载值;根据实时负载值从多个候选边缘设备中,筛选最小的实时负载值对应的候选边缘设备作为目标边缘设备。
在一个实施例中,获取深度学习任务对应的各个候选边缘设备的实时负载值,包括:获取各个候选边缘设备的中央处理器的实时利用率;获取各个候选边缘设备的实时内存利用率;计算各个候选边缘设备的实时内存利用率和中央处理器的实时利用率的加权和,得到各个候选边缘设备的实时负载值。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取目标卸载策略中卸载参数为卸载的子任务,得到第一子任务集合;发送第一子任务集合至所述目标边缘设备,第一子任务集合中的各个子任务,均在目标边缘设备中执行。
图10所示的计算机设备可以通过如图9所示的处理深度学习计算任务的装置中的任务接收模块301执行接收深度学习任务,深度学习任务包括多个子任务,每个子任务携带一个卸载状态参数和执行顺序。计算机设备可以通过任务筛选模块302执行根据执行顺序从深度学习任务中筛选出当前子任务。计算机设备可以通过任务执行模块303执行当当前子任务的卸载状态参数为保留时,执行当前子任务。计算机设备可以通过任务发送模块304执行当当前子任务的卸载状态参数为卸载时,发送当前子任务至目标边缘设备,在目标边缘设备上执行当前子任务。循环模块305执行根据执行顺序获取下一个子任务,根据下一子任务的卸载状态参数执行下一子任务,直至当前任务为深度学习任务的最后一个子任务,得到深度学习任务的执行结果。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:接收深度学习任务,深度学习任务包括多个子任务,每个子任务携带一个卸载状态参数和执行顺序;根据执行顺序从深度学习任务中筛选出当前子任务;当当前子任务的卸载状态参数为保留时,执行当前子任务;当当前子任务的卸载状态参数为卸载时,发送当前子任务至目标边缘设备,在目标边缘设备上执行当前子任务。根据执行顺序获取下一个子任务,根据下一子任务的卸载状态参数执行下一子任务,直至当前任务为深度学习任务的最后一个子任务,得到深度学习任务的执行结果。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:接收深度学习任务,深度学习任务包括多个子任务,每个子任务携带一个卸载状态参数和执行顺序;根据执行顺序从深度学习任务中筛选出当前子任务;当当前子任务的卸载状态参数为保留时,执行当前子任务;当当前子任务的卸载状态参数为卸载时,发送当前子任务至目标边缘设备,在目标边缘设备上执行当前子任务。根据执行顺序获取下一个子任务,根据下一子任务的卸载状态参数执行下一子任务,直至当前任务为深度学习任务的最后一个子任务,得到深度学习任务的执行结果。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (12)
1.一种处理深度学习计算任务的方法,其特征在于,所述方法包括:
针对包含多个子任务的深度学习任务,获取所述深度学习任务的多个候选卸载策略,每个所述卸载策略中的各个子任务对应的卸载状态参数为保留参数或卸载参数;
获取移动终端与目标边缘设备之间进行数据传输的传输参数;
获取各个所述子任务分别在所述移动终端和所述目标边缘设备上执行时的预设执行参数;
根据每个所述候选卸载策略中各个所述子任务的卸载状态参数、所述传输参数和所述预设执行参数,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略。
2.根据权利要求1所述的方法,其特征在于,所述预设条件包括计算时长约束条件和能耗约束条件,所述根据每个所述候选卸载策略中各个所述子任务的卸载状态参数、所述传输参数和所述预设执行参数,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略,包括:
根据每个所述候选卸载策略中各个所述子任务的卸载状态参数、所述传输参数和所述预设执行参数,计算得到各个候选卸载策略的运行时长和能耗;
从多个所述候选卸载策略中,筛选出所述能耗小于所述能耗约束条件中的预设能耗的候选卸载策略,作为第一候选卸载策略;
从所述第一候选卸载策略中筛选出满足所述计算时长约束条件的的候选卸载策略,作为所述目标卸载策略。
3.根据权利要求2所述的方法,其特征在于,所述传输参数包括实时传输速率和传输功率,所述预设执行参数包括计算时长和计算功率,所述深度学习任务X的l个子任务分别为x1,x2,...,xl,所述候选卸载策略的数量为N,第k个所述候选卸载策略的能耗Ek的计算公式具体如下:
4.根据权利要求2所述的方法,其特征在于,所述传输参数包括实时传输速率和传输功率,所述预设执行参数包括计算时长和计算功率,所述深度学习任务X的l个子任务分别为x1,x2,...,xl,所述候选卸载策略的数量为N,第k个所述候选卸载策略的运行时长Tk计算公式具体如下:
5.根据权利要求1所述的方法,其特征在于,所述获取移动终端与目标边缘设备之间进行数据传输的传输参数之前,还包括:
获取所述深度学习任务对应的各个所述候选边缘设备的实时负载值;
根据所述实时负载值从多个所述候选边缘设备中,筛选最小的实时负载值对应的候选边缘设备作为所述目标边缘设备。
6.根据权利要求1所述的方法,其特征在于,所述获取所述深度学习任务对应的各个所述候选边缘设备的实时负载值,具体还包括:
获取各个所述候选边缘设备的中央处理器的实时利用率;
获取各个所述候选边缘设备的实时内存利用率;
计算各个所述候选边缘设备的实时内存利用率和所述中央处理器的实时利用率的加权和,得到各个所述候选边缘设备的实时负载值。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述目标卸载策略中卸载参数为卸载的子任务,得到第一子任务集合;
发送所述第一子任务集合至所述目标边缘设备,所述第一子任务集合中的各个所述子任务,均在所述目标边缘设备中执行。
8.一种处理深度学习计算任务的方法,其特征在于,应用于移动终端,所述方法包括:
接收深度学习任务,所述深度学习任务包括多个子任务,每个所述子任务携带一个卸载状态参数和执行顺序;
根据所述执行顺序从所述深度学习任务中筛选出当前子任务;
当所述当前子任务的卸载状态参数为保留时,执行所述当前子任务;
当所述当前子任务的卸载状态参数为卸载时,发送所述当前子任务至所述目标边缘设备,在所述目标边缘设备上执行所述当前子任务;
根据所述执行顺序获取下一个子任务,根据所述下一子任务的卸载状态参数执行所述下一子任务,直至所述当前任务为所述深度学习任务的最后一个子任务,得到所述深度学习任务的执行结果。
9.一种处理深度学习计算任务的装置,其特征在于,所述装置包括:
策略获取模块,用于针对包含多个子任务的深度学习任务,获取所述深度学习任务的多个候选卸载策略,每个所述卸载策略中的各个子任务对应的卸载状态参数为保留参数或卸载参数;
数据获取模块,用于获取移动终端与目标边缘设备之间进行数据传输的传输参数,获取各个所述子任务分别在所述移动终端和所述目标边缘设备上执行时的预设执行参数;
决策模块,用于根据每个所述候选卸载策略中各个所述子任务的卸载状态参数、所述传输参数和所述预设执行参数,筛选出满足预设条件的候选卸载策略,以作为目标卸载策略。
10.一种处理深度学习计算任务的装置,其特征在于,所述装置包括:
任务接收模块,用于接收深度学习任务,所述深度学习任务包括多个子任务,每个所述子任务携带一个卸载状态参数和执行顺序;
任务筛选模块,用于根据所述执行顺序从所述深度学习任务中筛选出当前子任务;
任务执行模块,用于当所述当前子任务的卸载状态参数为保留时,执行所述当前子任务;
任务发送模块,用于当所述当前子任务的卸载状态参数为卸载时,发送所述当前子任务至所述目标边缘设备,在所述目标边缘设备上执行所述当前子任务;
循环模块,用于根据所述执行顺序获取下一个子任务,根据所述下一子任务的卸载状态参数执行所述下一子任务,直至所述当前任务为所述深度学习任务的最后一个子任务,得到所述深度学习任务的执行结果。
11.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010231027.7A CN111310922A (zh) | 2020-03-27 | 2020-03-27 | 处理深度学习计算任务的方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010231027.7A CN111310922A (zh) | 2020-03-27 | 2020-03-27 | 处理深度学习计算任务的方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111310922A true CN111310922A (zh) | 2020-06-19 |
Family
ID=71147327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010231027.7A Pending CN111310922A (zh) | 2020-03-27 | 2020-03-27 | 处理深度学习计算任务的方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111310922A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111770362A (zh) * | 2020-07-09 | 2020-10-13 | 南京大学 | 一种面向边缘环境的视频传输系统及其传输方法 |
CN112596892A (zh) * | 2020-11-23 | 2021-04-02 | 中标慧安信息技术股份有限公司 | 多节点边缘计算设备的数据交互方法和系统 |
CN113194086A (zh) * | 2021-04-27 | 2021-07-30 | 新华三信息安全技术有限公司 | 一种防攻击的方法及设备 |
CN113220459A (zh) * | 2021-05-26 | 2021-08-06 | 杭州海康威视数字技术股份有限公司 | 一种任务处理方法及装置 |
CN113419853A (zh) * | 2021-06-22 | 2021-09-21 | 中国工商银行股份有限公司 | 任务执行策略确定方法及装置、电子设备和存储介质 |
CN113645637A (zh) * | 2021-07-12 | 2021-11-12 | 中山大学 | 超密集网络任务卸载方法、装置、计算机设备和存储介质 |
CN113835778A (zh) * | 2021-09-14 | 2021-12-24 | 北京信息科技大学 | 任务卸载方法、装置、电子设备及存储介质 |
CN114205420A (zh) * | 2021-12-14 | 2022-03-18 | 深圳Tcl新技术有限公司 | 任务调度方法、装置、存储介质及电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106529682A (zh) * | 2016-10-28 | 2017-03-22 | 北京奇虎科技有限公司 | 一种在大数据集群中处理深度学习任务的方法和装置 |
CN108901046A (zh) * | 2018-06-14 | 2018-11-27 | 北京大学 | 面向移动边缘计算的协同任务卸载算法及系统设计方案 |
CN109358953A (zh) * | 2018-09-20 | 2019-02-19 | 中南大学 | 一种微云中的多任务应用卸载方法 |
CN109684075A (zh) * | 2018-11-28 | 2019-04-26 | 深圳供电局有限公司 | 一种基于边缘计算和云计算协同进行计算任务卸载的方法 |
CN110347500A (zh) * | 2019-06-18 | 2019-10-18 | 东南大学 | 用于边缘计算环境中面向深度学习应用的任务卸载方法 |
US20190324805A1 (en) * | 2018-04-20 | 2019-10-24 | EMC IP Holding Company LLC | Method, apparatus and computer program product for resource scheduling |
CN110688205A (zh) * | 2019-08-30 | 2020-01-14 | 北京浪潮数据技术有限公司 | 一种机器学习任务的执行装置、相关方法及相关装置 |
-
2020
- 2020-03-27 CN CN202010231027.7A patent/CN111310922A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106529682A (zh) * | 2016-10-28 | 2017-03-22 | 北京奇虎科技有限公司 | 一种在大数据集群中处理深度学习任务的方法和装置 |
US20190324805A1 (en) * | 2018-04-20 | 2019-10-24 | EMC IP Holding Company LLC | Method, apparatus and computer program product for resource scheduling |
CN108901046A (zh) * | 2018-06-14 | 2018-11-27 | 北京大学 | 面向移动边缘计算的协同任务卸载算法及系统设计方案 |
CN109358953A (zh) * | 2018-09-20 | 2019-02-19 | 中南大学 | 一种微云中的多任务应用卸载方法 |
CN109684075A (zh) * | 2018-11-28 | 2019-04-26 | 深圳供电局有限公司 | 一种基于边缘计算和云计算协同进行计算任务卸载的方法 |
CN110347500A (zh) * | 2019-06-18 | 2019-10-18 | 东南大学 | 用于边缘计算环境中面向深度学习应用的任务卸载方法 |
CN110688205A (zh) * | 2019-08-30 | 2020-01-14 | 北京浪潮数据技术有限公司 | 一种机器学习任务的执行装置、相关方法及相关装置 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111770362A (zh) * | 2020-07-09 | 2020-10-13 | 南京大学 | 一种面向边缘环境的视频传输系统及其传输方法 |
CN111770362B (zh) * | 2020-07-09 | 2021-07-02 | 南京大学 | 一种面向边缘环境的视频传输系统及其传输方法 |
CN112596892A (zh) * | 2020-11-23 | 2021-04-02 | 中标慧安信息技术股份有限公司 | 多节点边缘计算设备的数据交互方法和系统 |
CN112596892B (zh) * | 2020-11-23 | 2021-08-31 | 中标慧安信息技术股份有限公司 | 多节点边缘计算设备的数据交互方法和系统 |
CN113194086A (zh) * | 2021-04-27 | 2021-07-30 | 新华三信息安全技术有限公司 | 一种防攻击的方法及设备 |
CN113194086B (zh) * | 2021-04-27 | 2022-05-27 | 新华三信息安全技术有限公司 | 一种防攻击的方法及设备 |
CN113220459A (zh) * | 2021-05-26 | 2021-08-06 | 杭州海康威视数字技术股份有限公司 | 一种任务处理方法及装置 |
CN113220459B (zh) * | 2021-05-26 | 2023-10-10 | 杭州海康威视数字技术股份有限公司 | 一种任务处理方法及装置 |
CN113419853A (zh) * | 2021-06-22 | 2021-09-21 | 中国工商银行股份有限公司 | 任务执行策略确定方法及装置、电子设备和存储介质 |
CN113645637A (zh) * | 2021-07-12 | 2021-11-12 | 中山大学 | 超密集网络任务卸载方法、装置、计算机设备和存储介质 |
CN113835778A (zh) * | 2021-09-14 | 2021-12-24 | 北京信息科技大学 | 任务卸载方法、装置、电子设备及存储介质 |
CN114205420A (zh) * | 2021-12-14 | 2022-03-18 | 深圳Tcl新技术有限公司 | 任务调度方法、装置、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111310922A (zh) | 处理深度学习计算任务的方法、装置、设备和存储介质 | |
CN111427679B (zh) | 面向边缘计算的计算任务调度方法、系统、装置 | |
CN110096362B (zh) | 一种基于边缘服务器协作的多任务卸载方法 | |
CN108958916B (zh) | 一种移动边缘环境下工作流卸载优化方法 | |
CN109788046B (zh) | 一种基于改进蜂群算法的多策略边缘计算资源调度方法 | |
CN110929865B (zh) | 网络量化方法、业务处理方法及相关产品 | |
CN111176820B (zh) | 一种基于深度神经网络的边缘计算任务的分配方法及装置 | |
CN113114758B (zh) | 一种面向无服务器边缘计算的任务调度方法及装置 | |
CN109710374A (zh) | 移动边缘计算环境下最小化任务卸载费用的vm迁移策略 | |
CN110519370B (zh) | 一种基于设施选址问题的边缘计算资源分配方法 | |
CN109358953B (zh) | 一种微云中的多任务应用卸载方法 | |
CN109656713B (zh) | 一种基于边缘计算框架的容器调度方法 | |
CN112988285B (zh) | 任务卸载方法和装置、电子设备及存储介质 | |
CN113867843B (zh) | 一种基于深度强化学习的移动边缘计算任务卸载方法 | |
CN113220356A (zh) | 一种移动边缘计算中的用户计算任务卸载方法 | |
CN111711962A (zh) | 一种移动边缘计算系统子任务协同调度方法 | |
CN114661466A (zh) | 用于边缘计算环境中面向智能工作流应用的任务卸载方法 | |
CN115408072A (zh) | 基于深度强化学习的快速适应模型构建方法及相关装置 | |
CN114327526A (zh) | 一种移动边缘计算环境中的任务卸载方法及其应用 | |
CN113741999A (zh) | 一种基于移动边缘计算的面向依赖型任务卸载方法及装置 | |
CN115955685B (zh) | 多智能体协同路由方法、设备及计算机存储介质 | |
CN116828541A (zh) | 基于多智能体强化学习的边缘计算依赖任务动态卸载方法及系统 | |
CN116932086A (zh) | 一种基于哈里斯鹰算法的移动边缘计算卸载方法及系统 | |
CN114301911B (zh) | 一种基于边边协同的任务管理方法和系统 | |
CN115098115A (zh) | 边缘计算任务卸载方法及装置、电子设备、存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |