一种应用运行方法以及相关设备技术

技术编号:37394034 阅读:17 留言:0更新日期:2023-04-27 07:31
本申请提供了一种应用运行方法,方法包括:第一终端设备在运行目标应用时,获取第二终端设备的设备信息;第一终端设备基于第二终端设备的设备信息满足目标应用当前待执行的第一任务的执行要求,将第一任务的任务信息传递至第二终端设备,且第一终端设备不执行第一任务;第二终端设备根据第一任务相关的任务信息执行第一任务。本申请在第二终端设备可以执行目标应用的一部分任务的前提下,将目标应用的一部分任务卸载到第二终端设备上执行,可以降低第一终端设备的运算负载。降低第一终端设备的运算负载。降低第一终端设备的运算负载。

【技术实现步骤摘要】
一种应用运行方法以及相关设备


[0001]本申请涉及计算机领域,尤其涉及一种应用运行方法以及相关设备。

技术介绍

[0002]当前应用发展越来越大型化、复杂化,比如视频应用从显示1080P的实时画面发展到2K、4K未来还会出现8K等更高画质,对于设备算力有更高需求。
[0003]近年来随着智能手机的普及,移动应用发展迅速,但是当前移动应用的开发与运行方式主要是基于单个设备设计的,单设备运行应用存在性能瓶颈与体验瓶颈,主要问题如下:由于受到CPU核心频率和GPU核心频率的限制,因此单个设备的计算能力有限,相比于大型服务器设计者需要在计算能力与体积、成本因素间做平衡,类似的其存储与通信能力也受到设备本身的设计限制,无法无限制满足上层应用对性能的要求。

技术实现思路

[0004]本申请实施例提供了一种应用运行方法,所述方法应用于第一终端设备,所述第一终端设备与所述第二终端设备通信连接,所述方法包括:在运行目标应用时,获取第二终端设备的设备信息;基于所述第二终端设备的设备信息满足所述目标应用当前待执行的第一任务的执行要求,将所述第一任务相关的任务信息传递至所述第二终端设备,以便所述第二终端设备根据所述任务信息执行所述第一任务,且所述第一终端设备不执行所述第一任务。通过上述方法,在第二终端设备可以执行目标应用的一部分任务的前提下,将目标应用的一部分任务卸载到第二终端设备上执行,可以降低第一终端设备的运算负载。
[0005]应理解,这里的“在运行目标应用时”,可以理解为启动目标应用时,或者是运行目标应用的过程中。
[0006]应理解,所述第一任务可以为渲染任务、逻辑状态更新任务、AI任务、数据分析任务中的一种。第一任务还可以是其他需要耗费较大运算资源和/或存储资源的任务。第一任务可以是第一终端设备当前可用的运算资源和/或存储资源不足时待运行的任务,例如,第一终端设备能否正常运行第一任务(例如是否会卡顿、是否需要花费大量时间等),或者是第一终端设备运行第一任务时是否会对其他任务造成影响,或者是运行第一终端设备运行第一任务时是否会发烫等等。
[0007]应理解,第一任务可以是预先划分好的任务类别,例如,游戏应用中预先划分为逻辑状态更新任务以及渲染任务,或者是将渲染任务拆分为多个子任务等。
[0008]应理解,第一终端设备还可以将多个任务卸载到第二终端设备,或者是将多个任务卸载到不同的终端设备上执行,这里并不限定。
[0009]在一种可能的实现中,所述第一终端设备和所述第二终端设备之间通过近场通信、WIFI、蓝牙、超宽带、紫蜂ZigBee、RFID、4G、5G、LoRa、SIGFOX、Z

Wave以及NB

loT中的至少一种方式连接。例如,所述第一终端设备和所述第二终端设备之间通过近场通信、WIFI、蓝牙、超宽带、紫蜂ZigBee、RFID、4G、5G、LoRa、SIGFOX、Z

Wave以及NB

loT中的多种方式连
接。
[0010]应理解,第一终端设备和所述第二终端设备之间还可以通过其他时延较低的无线连接方式(例如3GPP、non

3GPP以及基于短距技术实现的连接方式)进行连接,这里并不限定。
[0011]应理解,第一终端设备和所述第二终端设备之间的物理距离小于目标距离,目标距离可以为1m、2m、3m等。
[0012]应理解,在第一任务为渲染任务时,在一些场景中,第一终端设备的显示设备的显示参数(例如刷新率、屏幕大小、刷新率等)和第二终端设备的显示设备的显示参数不同,第二终端设备可以根据所述第一任务相关的任务信息,以及所述第二终端设备的显示设备的显示参数(例如显示设备的分辨率、屏幕刷新率等等),执行所述第一任务,进而可以显示和第二终端设备的显示设备相适配的显示内容。
[0013]在一种可能的实现中,第一终端设备可以获取到存在通信连接的终端设备的设备信息,并基于对设备信息的分析来确定该终端设备是否具备运行要卸载的任务的能力,以及确定将哪部分任务卸载到终端设备。
[0014]以卸载对象为第一任务为例,在一种可能的实现中,所述设备信息可以包括,组件信息,所述组件信息用于指示所述第二终端设备是否部署有所述目标应用的运行组件,所述运行组件被配置为具备执行所述第一任务的能力,
[0015]其中,所述第一任务可以为渲染任务、逻辑状态更新任务、AI任务、数据分析任务中的一种。其中,运行组件可以为AI引擎,AI引擎可以用于执行AI任务,运行组件可以为渲染引擎,渲染引擎可以用于执行渲染任务,运行组件可以为逻辑引擎和物理引擎,逻辑引擎和物理引擎可以用于执行逻辑状态更新任务,若第二终端设备未部署有具备执行所述第一任务的能力的运行组件,则不需要将第一任务卸载到第二终端设备执行。
[0016]应理解,第一终端设备可以部署有运行组件,在第一终端设备处于单机运行目标应用的情况下,第一终端设备可以通过运行组件来执行第一任务,且第一终端设备部署的运行组件和第二终端设备部署的运行组件一致(或者基本一致)。
[0017]以卸载对象为第一任务为例,在一种可能的实现中,所述设备信息可以包括,电源信息,电源信息可以为第二终端设备的可用电量、充电模式(例如是有源输入还是电池供电),例如,在电源信息指示第二终端设备的可用电量较少时,则可以确定不需要将第一任务卸载到第二终端设备执行。
[0018]以卸载对象为第一任务为例,在一种可能的实现中,所述设备信息可以包括,处理器信息,处理器可以为CPU、GPU、TPU、NPU等,处理器信息可以但不限于为CPU型号/主频,GPU型号/主频,当前CPU/GPU负载等。由于一些任务对于处理器的类型、处理能力、当前可用的资源都有一定的要求,在不满足任务要求时,则可以确定不需要将第一任务卸载到第二终端设备执行。
[0019]以卸载对象为第一任务为例,在一种可能的实现中,所述设备信息可以包括,内存信息,例如内存大小。在不满足第一任务对于内存大小的要求时,则可以确定不需要将第一任务卸载到第二终端设备执行。
[0020]以卸载对象为第一任务为例,在一种可能的实现中,所述设备信息可以包括,传输带宽,传输带宽可以为当前网络的可用带宽。在一些实现中,为了保证任务执行的同步,则
需要保证在将第一任务传输到第二终端设备时,不会存在延迟(或者延迟很小),则需要保证第一终端设备和第二终端设备之间的传输带宽需要满足第一任务对应的要求。在不满足要求时,则可以确定不需要将第一任务卸载到第二终端设备执行。
[0021]以卸载对象为第一任务为例,在一种可能的实现中,所述设备信息可以包括,输入设备信息,输入设备信息可以包括输入设备类型,输入设备可以为音频输入、鼠标输入、键盘输入等。在一些任务中,例如涉及和用户交互的任务,第一任务还需要支持用户的输入,而由于第一任务卸载到第二终端设备执行,则需要第二终端设备具备第一任务所要求的输入设备类型。本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种应用运行方法,其特征在于,所述方法应用于第一终端设备,所述第一终端设备与所述第二终端设备通信连接,所述方法包括:在运行目标应用时,获取第二终端设备的设备信息;基于所述第二终端设备的设备信息满足所述目标应用当前待执行的第一任务的执行要求,将所述第一任务相关的任务信息传递至所述第二终端设备,以便所述第二终端设备根据所述任务信息执行所述第一任务,且所述第一终端设备不执行所述第一任务。2.根据权利要求1所述的方法,其特征在于,所述第一终端设备和所述第二终端设备之间通过近场通信、WIFI、蓝牙、超宽带、紫蜂ZigBee、RFID、4G、5G、LoRa、SIGFOX、Z

Wave以及NB

loT中的至少一种方式连接。3.根据权利要求1或2所述的方法,其特征在于,所述设备信息包括:组件信息,所述组件信息用于指示所述第二终端设备是否部署有所述目标应用的运行组件,所述运行组件被配置为具备执行所述第一任务的能力;所述执行要求,包括:所述第二终端设备部署有所述运行组件。4.根据权利要求1至3任一所述的方法,其特征在于,所述设备信息包括如下信息的至少一种:电源信息、处理器信息、内存信息、传输带宽、输入设备信息、输出设备信息。5.根据权利要求3或4所述的方法,其特征在于,所述设备信息包括:所述终端设备的启动状态和/或所述运行组件的运行状态;在所述启动状态指示所述第二终端设备未启动的情况下,所述第一任务相关的任务信息包括第一指示信息,所述第一指示信息用于触发所述第二终端设备启动、指示所述第二终端设备运行所述运行组件、以及通过所述运行组件执行所述第一任务;或者,在所述启动状态指示所述第二终端设备启动、且所述运行状态指示所述第二终端设备未运行所述运行组件的情况下,所述第一任务相关的任务信息包括第二指示信息,所述第二指示信息用于指示所述第二终端设备运行所述运行组件、以及通过所述运行组件执行所述第一任务;或者,在所述启动状态指示所述第二终端设备启动、且在所述运行状态指示所述第二终端设备运行所述运行组件的情况下,所述第一任务相关的任务信息包括第三指示信息,所述第三指示信息用于指示所述第二终端设备通过所述运行组件执行所述第一任务。6.根据权利要求1至5任一所述的方法,其特征在于,所述获取第二终端设备的设备信息,包括:获取与所述第一终端设备连接的多个终端设备的设备信息,所述多个终端设备包括所述第二终端设备;所述将所述第一任务的任务信息传递至所述第二终端设备之前,所述方法还包括:使能针对于所述多个终端设备中所述第二设备的选择。7.根据权利要求6所述的方法,其特征在于,所述使能针对于所述多个终端设备中所述第二设备的选择,包括:呈现选择信息,所述选择信息用于指示用户从所述多个终端设备进行选择,并接收到用户根据所述选择信息反馈的选择结果;基于所述选择结果包括所述第二终端设备,使能针对于所述多个终端设备中所述第二
设备的选择。8.根据权利要求6所述的方法,其特征在于,所述使能针对于所述多个终端设备中所述第二设备的选择,包括:基于所述第二终端设备的设备信息为所述多个终端设备中选择最符合所述第一任务的执行要求的设备信息,使能针对于所述多个终端设备中所述第二设备的选择。9.根据权利要求1至8任一所述的方法,其特征在于,所述目标应用当前待执行的任务包括所述第一任务和第二任务;所述方法还包括:执行所述第二任务。10.根据权利要求1至9任一所述的方法,其特征在于,所述第一任务相关的任务信息,包括:执行数据以及所述执行数据的索引信息;其中,所述执行数据为执行所述第一任务所需的数据,所述索引信息包括存储地址,所述存储地址为所述第二终端设备上可用的存储空间的地址,所述索引信息用于指示所述第二终端设备将所述执行数据存储至所述存储地址对应的存储空间中。11.根据权利要求1至10任一所述的方法,其特征在于,所述第一任务为渲染任务、逻辑状态更新任务、AI任务、数据分析任务中的一种。12.一种应用运行方法,其特征在于,所述方法应用于目标系统,所述目标系统包括第一终端设备和第二终端设备,所述第一终端设备与所述第二终端设备通信连接,所述方法包括:所述第一终端设备在运行目标应用时,获取第二终端设备的设备信息;所述第一终端设备基于所述第二终端设备的设备信息满足所述目标应用当前待执行的第一任务的执行要求,将所述第一任务的任务信息传递至所述第二终端设备,且所述第一终端设备不执行所述第一任务;所述第二终端设备根据所述第一任务相关的任务信息执行所述第一任务。13.根据权利要求12所述的方法,其特征在于,所述第一终端设备和所述第二终端设备之间通过近场通信、WIFI、蓝牙、超宽带、紫蜂ZigBee、RFID、4G、5G、LoRa、SIGFOX、Z

Wave以及NB

loT中的至少一种方式连接。14.根据权利要求12或13所述的方法,其特征在于,所述设备信息包括:组件信息,所述组件信息用于指示所述第二终端设备是否部署有所述目标应用的运行组件,所述运行组件被配置为具备执行所述第一任务的能力;所述执行要求,包括:所述第二终端设备部署有所述运行组件。15.根据权利要求12至14任一所述的方法,其特征在于,所述设备信息包括如下信息的至少一种:电源信息、处理器信息、内存信息、传输带宽、输入设备信息、输出设备信息。16.根据权利要求14或15所述的方法,其特征在于,所述设备信息包括:所述终端设备的启动状态和/或所述运行组件的运行状态;在所述启动状态指示所述第二终端设备未启动的情况下,所述第一任务相关的任务信
息包括第一指示信息,所述第一指示信息用于触发所述第二终端设备启动、指示所述第二终端设备运行所述运行组件、以及通过所述运行组件执行所述第一任务;或者,在所述启动状态指示所述第二终端设备启动、且所述运行状态指示所述第二终端设备未运行所述运行组件的情况下,所述第一任务相关的任务信息包括第二指示信息,所述第二指示信息用于指示所述第二终端设备运行所述运行组件、以及通过所述运行组件执行所述第一任务;或者,在所述启动状态指示所述第二终端设备启动、且在所述运行状态指示所述第二终端设备运行所述运行组件的情况下,所述第一任务相关的任务信息包括第三指示信息,所述第三指示信息用于指示所述第二终端设备通过所述运行组件执行所述第一任务。17.根据权利要求12至16任一所述的方法,其特征在于,所述第一任务相关的任务信息,包括:执行数据以及所述执行数据的索引信息;其中,所述执行数据为执行所述第一任务所需的数据,所述索引信息包括存储地址,所述存储地址为所述第二终端设备上可用的存储空间的地址,所述索引信息用于指示所述第二终端设备将所述执行数据存储至所述存储地址对应的存储空间中;所述第二终端设备根据所述第一任务相关的任务信息执行所述第一任务,包括:所述第二终端设备根据所述索引信息,将所述执行数据存储至所述存储地址对应的存储空间中;所述第二终端设备在执行所述第一任务时,从所述存储地址对应的存储空间中获取所述执行数据。18.根据权利要求12至17任一所述的方法,其特征在于,所述第二终端设备基于完成所述第一任务的执行、且为接收到所述第一终端设备针对于所述目标应用中其他任务的执行触发,不执行所述目标应用的其他任务。19.根据权利要求12至18任一所述的方法,其特征在于,所述目标应用当前待执行的任务包括所述第一任务和第二任务;所述第一任务和所述第二任务为渲染任务;所述第一任务用于绘制第一应用界面,所述第二任务用于绘制第二应用界面,所述第一应用界面和所述第二应用界面为不同的界面;所述方法还包括:所述第一终端设备执行所述第二任务,并触发显示设备显示所述第二应用界面;所述第二终端设备触发显示设备显示所述第一应用界面。20.根据权利要求12至19任一所述的方法,其特征在于,所述第一任务为渲染任务;所述第二终端设备根据所述第一任务相关的任务信息执行所述第一任务,包括:所述第二终端设备根据所述第一任务相关的任务信息,以及所述第二终端设备的显示设备的显示参数,执行所述第一任务。21.一种应用运行装置,其特征在于,所述装置应用于第一终端设备,所述第一终端设备与所述第二终端设备通信连接,所述装置包括:获取模块,用于在运行目标应用时,获取第二终端设备的设备信息;发送模块,用于基于所述第二终端设备的设备信息满足所述目标应用当前待执行的第一任务的执行要求,将所述第一任务相关的任...

【专利技术属性】
技术研发人员:王伟欧阳黜霏林俊如
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1