【技术实现步骤摘要】
计算密集型任务向云服务器中卸载的方法
本专利技术涉及一种应用于移动云计算领域的任务卸载方法,更具体地说,本专利技术涉及一种计算密集型任务向云服务器中卸载的方法。
技术介绍
随着科技的进步,智能手机上的应用程序逐渐趋于计算密集型化,比如面部/手势识别、视觉文本翻译、视频图像处理等。执行上述每一个计算密集型化的应用程序均可看做执行一个“计算密集型任务”。这些计算密集型任务的工作流程中都包含多项服务,每一项服务的完成是通过执行一个独立的任务实现的。将每一项服务以它所对应的任务来表示。每一个任务接收输入数据,执行完毕后输出相应的数据。在一个计算密集型任务的工作流程中,依照程序开发人员设定的任务执行的先后顺序,每一个任务执行完毕,它输出的数据需被它的后续任务接收作为输入数据,后续任务才能开始执行。智能手机由于受到计算能力有限、电池能量有限、内存有限等限制,在处理计算密集型任务时,会显得效率低下。用来解决智能手机有限的计算能力的一个有效的方法是将计算密集型任务合理卸载到云服务器,即卸载到互联的计算机集群中执行,最后再把计算结果传回智能手机。通过卸载,利用云服务器强大的计算能力,使得计算密集型任务总的运算完成时间大大缩短,并且大大降低了智能手机的能量消耗。一个高效合理的任务卸载策略可以大幅度节省计算密集型任务执行完成的总时间。近年来国内外已有一些专家学者对任务卸载方案进行研究,这些方案大致分为两类。第一类:将一个完整的计算密集型任务全部卸载到云服务器上执行;第二类:将一个计算密集型任务分割成多项服务,每项服务对应计算密集型任务中的一个任务,将一部分任务卸载到云服务器中执 ...
【技术保护点】
一种计算密集型任务向云服务器中卸载的方法,其特征在于,所述的计算密集型任务向云服务器中卸载的方法的步骤如下:1)以任务图表示计算密集型任务中任务执行的先后顺序及任务间的关系:(1)构建表示计算密集型任务工作流程的任务图;(2)构建一般形式的任务图;2)一般形式的任务图中任务的卸载决策;3)复合型任务的卸载决策:(1)确定大计算量任务;(2)确定大计算量任务集合;(3)对大计算量任务集合的前序任务的判断:在一个复合型任务的任务图中,对于一个大计算量任务集合的前序任务f,当任务f的前序任务为它所在复合型任务中的第一个任务时,则对任务f进行如下判断:a.当此复合型任务依照步骤2)即“一般形式的任务图中任务的卸载决策”步骤,将该复合型任务卸载到云服务器中执行时,当任务f满足公式(3)时,将任务f卸载到云服务器中执行;反之,将任务f在智能手机中执行;pf+inf+outf‑sf‑Tcf>0 (3)b.当此复合型任务依照步骤2)即“一般形式的任务图中任务的卸载决策”步骤,将该复合型任务在智能手机中执行时,当任务f满足公式(4)时,将任务f卸载到云服务器中执行;反之,将任 ...
【技术特征摘要】
1.一种计算密集型任务向云服务器中卸载的方法,其特征在于,所述的计算密集型任务向云服务器中卸载的方法的步骤如下:1)以任务图表示计算密集型任务中任务执行的先后顺序及任务间的关系:a.任务图中的每一个节点表示一个任务,有向边表示任务间的先后执行顺序;在表示计算密集型任务工作流程的任务图中,某些时刻,仅有一个任务在单独执行,则将这些在某些时刻单独执行的任务定义为“简单型任务”;在表示计算密集型任务工作流程的任务图中,某些时刻,有多个任务同时在执行,则将每一时刻同时执行的所有的任务看作一个整体,将这个整体定义为“复合型任务”;b.任务图的定义:以一个有向无环图来描述一组相互关联的任务;其中,每一个节点表示一个任务,有向边表示任务间的先后执行顺序,则定义这个有向无环图为这一组任务的任务图;表示计算密集型任务工作流程的任务图的定义:以一个有向无环图来描述一个计算密集型任务中所包含的全部任务;以每一个节点表示此计算密集型任务中包含的每一个任务,以有向边表示此计算密集型任务中所包含的任务的先后执行顺序,则定义这个有向无环图为表示此计算密集型任务工作流程的任务图;c.一般形式的任务图的定义:在表示计算密集型任务工作流程的任务图中,每一个表示简单型任务的节点不变,而将每一个复合型任务以一个节点表示,仍以有向边表示任务间的先后执行顺序,得到一个线性任务图,则定义这个线性任务图为表示此计算密集型任务工作流程的任务图所对应的一般形式的任务图;d.复合型任务的任务图的定义:在表示计算密集型任务工作流程的任务图中,可能存在一个或多个代表此表示计算密集型任务工作流程的任务图中所包含的复合型任务的有向无环图,则定义这些代表复合型任务的有向无环图为此表示计算密集型任务工作流程的任务图所对应的复合型任务图;(1)构建表示计算密集型任务工作流程的任务图:对于一个给定的计算密集型任务,在程序开发人员将其依据工作流程分割为多个独立的任务的基础上,以每一个节点表示一个任务,以有向边表示任务间的先后执行顺序,依照计算密集型任务中任务执行的先后顺序及任务间的关系构建表示计算密集型任务工作流程的任务图;(2)构建一般形式的任务图:在表示计算密集型任务工作流程的任务图中,将每一个简单型任务以一个节点表示,将每一个复合型任务也以一个节点表示,以有向边表示任务间的先后执行顺序,构建一般形式的任务图;2)一般形式的任务图中任务的卸载决策;(1)在一般形式的任务图中,计算将第一个任务卸载到云服务器中执行较在智能手机上执行的节约的时间;按照公式(1)计算:E1=p1-s1-in1-out1-Tc1(1)式中:E1表示将任务1卸载到云服务器中执行较在智能手机上执行的节约的时间;p1表示将任务1在智能手机上执行的时间;s1表示将任务1在云服务器上执行的时间;in1表示将任务1卸载到云服务器中执行时,任务1的输入数据在智能手机和云服务器之间的无线网络上的传输时间;out1表示将任务1卸载到云服务器中执行时,任务1的输出数据由云服务器向智能手机传回时在无线网络上的传输时间;Tc1表示将任务1卸载到云服务器中执行时,计算密集型任务中任务1所对应的代码在无线网络上由智能手机传输到云服务器的时间;(2)在一般形式的任务图中,将第二个任务和第二个任务后面的每一个任务按照顺序采用依次求出每个任务节约最大时间的方法,选取使得计算密集型任务执行的总时间最短的最优方案;共有F个任务,当任务2和任务i-1之间的所有任务都已经依照公式(2)决策完毕,并且在任务i前面,恰好有m个连续的任务在当前卸载队列中,则对于任务i的决策按照公式(2)执行;式中:Ei表示将任务i加入当前卸载队列或抛弃当前卸载队列并将任务i作为新的卸载队列的起始卸载点两种情况下,二者中节约的时间的较大值,且(2≤i≤F);Ei-1表示将任务i-1加入当前卸载队列或抛弃当前卸载队列两种情况下,二者中节约的时间的较大值;ini和outi分别表示任务i的输入数据和输出数据在智能手机和云服务器之间的无线网络上的传输时间;Tci表示将任务i卸载到云服务器中执行时,计算密集型任务中任务i所对应的代码在无线网络上由智能手机传输到云服务器的时间;Ei-1+ini+pi-si-Tci表示将任务i加入当前卸载队列中,节约的时间;pi-si-ini-outi-Tci表示抛弃当前卸载队列并将任务i作为新的卸载队列的起始卸载点节约的时间;(Ei-1+ini+pi-si)>(pi-si-ini)表示将任务i加入当前卸载队列节约的时间较将当前卸载队列抛弃,并将任务i作为新的卸载队列的起始卸载点节约的时间更多;(Ei-1+ini+pi-si)<(pi-si-ini)表示将当前卸载队列抛弃,并将任务i作为新的卸载队列的起始卸载点节约的时间较将任务i加入当前卸载队列节约的时间更多;第二个任务和第二个任务...
【专利技术属性】
技术研发人员:李玲,汤海燕,陈典书,杨秀华,王祝琳,范闯闯,骆宝童,宋莹玮,高华照,张海蓉,
申请(专利权)人:吉林大学,
类型:发明
国别省市:吉林;22
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。