1.一种优化时延与能效的移动终端计算迁移方法,其特征在于,包括以下步骤:步骤一,对于移动终端的应用程序,将应用程序的代码分解成多个计算组件,根据计算组件之间的关联,获取每个计算组件以及与该计算组件相关的关联计算组件的参数;
步骤二,构建用于评判所述计算组件迁移代价的迁移代价函数,并根据所述的迁移代价函数构造目标函数;
步骤三,对于每一个计算组件,获取减小计算时延的计算迁移条件以及提高能效的计算迁移条件;
步骤四,将减小移动终端的运行时延、提高能效转化为多约束条件的最优化问题并求解,根据求解结果实施迁移决策;
步骤五,应用程序将移动终端的本地计算产生的结果以及远程服务器的计算结果合成为应用程序的输出结果。
2.如权利要求1所述的优化时延与能效的移动终端计算迁移方法,其特征在于,步骤一中所述的获取每个计算组件以及与该计算组件相关的关联计算组件的参数,包括:(1)获取计算组件的代码规模大小
设移动终端的应用程序的代码分解成n个计算组件,表示为M1,M2,…,Mn,对于一个具体计算组件Mi,获取Mi的代码大小为Codei,i∈[1,n];
(2)获取关联计算组件的传输代码规模大小、发送代码规模大小、接收代码规模的大小记计算迁移过程中共有k个关联计算组件,k∈[1,2,…n],迁移任何一个计算组件i需要上述k个关联计算组件中的0-k个支持;设所述k个关联计算组件的传输代码规模大小分别为:tr1,tr2,…,trk;发送代码规模大小分别为:Send1,Send2,…,Sendk,接收代码规模大小分别为Rec1,Rec2,…,Reck。
3.如权利要求1所述的优化时延与能效的移动终端计算迁移方法,其特征在于,步骤二中所述的代价函数表示为:上式中,向量(x1,x2,…,xn)表示计算组件的标记矢量,其中xi=0表示计算组件Mi在本地执行,xi=1表示计算组件Mi在远程服务器上执行。
4.如权利要求1所述的优化时延与能效的移动终端计算迁移方法,其特征在于,步骤二中所述的目标函数表示为:
5.如权利要求1所述的优化时延与能效的移动终端计算迁移方法,其特征在于,步骤三中所述的减小计算时延的计算迁移条件的获取方法包括:步骤3.1,求解计算组件在本地执行所需时间tlocal;
步骤3.2,求解计算组件在执行计算迁移所需时间toffload;
步骤3.3,获取减小计算时延的计算迁移条件,即Th1=tlocal-toffload>0。
6.如权利要求1所述的优化时延与能效的移动终端计算迁移方法,其特征在于,步骤三中所述的提高能效的计算迁移条件的获取方法包括:步骤3.4,求解计算组件在本地计算时的能耗Elocal;
步骤3.5,求解计算组件从本地迁移到远程服务器所需的能耗Eoffload;
步骤3.6,获取提高能效的计算迁移条件,即Th2=Elocal-Eoffload>0。
7.如权利要求1所述的优化时延与能效的移动终端计算迁移方法,其特征在于,步骤四中所述的最优化问题P表示为:
8.一种优化时延与能效的移动终端迁移系统,其特征在于,包括移动终端与远程服务器集群:所述的移动终端包括依次连接的计算组件分解模块、组件迁移代价评估模块、无线信道带宽评估模块、服务器信息收集模块,所述的无线信道带宽评估模块上还依次连接有迁移决策模块、迁移执行模块以及结果合成模块,其中:所述的计算组件分解模块用于将应用程序代码分解成各个计算组件;
所述的服务器信息收集模块用于收集远程服务器的系统信息和状态信息;
所述的无线信道带宽评估模块用于根据收集到的无线信号质量测算无线信道的带宽、接受速率和发送速率;
所述的组件迁移代价评估模块用于根据无线信道的带宽、接收速率和发送速率、远程服务器的系统信息,计算各个所述计算组件的迁移代价;
所述的迁移决策模块用于根据各个计算组件的迁移代价、无线信道的带宽、接收速率和发送速率、远程服务器的系统信息,决定是否将计算组件迁移到远程服务器进行计算;
所述的迁移执行模块用于接收迁移决策模块的输出,并根据迁移决策模块的决策将需要迁移的计算组件及其关联计算组件发送给远程服务器;
所述的结果合成模块用于将本地执行的计算结果与迁移到远程服务器进行计算的结果合成,产生应用程序的最终输出;
所述的远程服务器集群包括由多个远程服务器连接组成的计算机。