CN112416580A - 确定应用运行时最佳资源配置方式的方法、装置及介质 - Google Patents

确定应用运行时最佳资源配置方式的方法、装置及介质 Download PDF

Info

Publication number
CN112416580A
CN112416580A CN202011270126.2A CN202011270126A CN112416580A CN 112416580 A CN112416580 A CN 112416580A CN 202011270126 A CN202011270126 A CN 202011270126A CN 112416580 A CN112416580 A CN 112416580A
Authority
CN
China
Prior art keywords
resource
application
frame rate
resource configuration
determining
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
Application number
CN202011270126.2A
Other languages
English (en)
Inventor
房钦武
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Xiaomi Mobile Software Co Ltd
Original Assignee
Beijing Xiaomi Mobile Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Xiaomi Mobile Software Co Ltd filed Critical Beijing Xiaomi Mobile Software Co Ltd
Priority to CN202011270126.2A priority Critical patent/CN112416580A/zh
Publication of CN112416580A publication Critical patent/CN112416580A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/90Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本公开是关于一种应用运行方法、装置及介质。所述方法包括:针对应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;确定资源配置组合,所述资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;针对所述资源配置组合中每一组资源配置,获取所述终端运行所述应用的设定场景的帧率;基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时的最佳资源配置方式。该方法通过自动化过程记录并获取不同组合的掉帧数据并选取合适的参数组合。

Description

确定应用运行时最佳资源配置方式的方法、装置及介质
技术领域
本公开涉及智能终端技术领域,尤其涉及资源配置的方法、装置及介质。
背景技术
用户在使用手机玩游戏时,经常会出现高延时和掉帧的现象,这是游戏玩家无法忍受的。这种问题大多数是因为分配的系统软硬件资源不匹配导致的。因此,如何正确的分配系统资源对游戏(尤其是资源消耗型大型手机游戏)很重要。
目前的系统资源配置主要靠研发人员抓取卡顿场景的systrace,分析卡顿原因,然后人工找到卡顿缺乏的资源点,通过提升该资源的性能来解决卡顿问题。但是,这种通过人工来进行参数调优的方法效率比较低,而且不具有通用性。
发明内容
为克服相关技术中存在的问题,本公开提供一种确定应用运行时最佳资源配置方式的方法、装置及介质。
根据本公开实施例的第一方面,提供一种确定应用运行时最佳资源配置方式的方法,所述方法包括:
针对所述应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;
确定资源配置组合,所述资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;
针对所述资源配置组合中每一组资源配置,获取所述终端运行所述应用的设定场景的帧率;
基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时的最佳资源配置方式。
其中,基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时最佳资源配置方式,包括:
基于所述帧率,确定N组资源配置,其中N为大于或等于1的正整数;
在所述N组资源配置中选取、输出一组资源配置作为运行所述应用时最佳资源配置方式。
其中,所述基于所述帧率确定N组资源配置,包括:
所述帧率为各组资源配置下运行所述应用对应的平均帧率;
确定大于预设帧率阈值的平均帧率所对应的N组资源配置,或者,确定N个平均帧率所对应的资源配置,其中所述N个平均帧率均大于除N个平均帧率之外的其它平均帧率。
其中,所述在所述N组资源配置中选择一组资源配置,包括:
针对所述N组资源配置中每一组资源配置,获取所述各时间点的帧率的平均变化率;
选取具有最小平均变化率的资源配置。
其中,所述在所述N组资源配置中选择一组资源配置,包括:
针对所述N组资源配置中每一组资源配置,获取各时间点的帧率的平均变化率;
选取小于变化率阈值的平均变化率所对应的资源配置为目标资源配置,或者,选取M个平均变化率所对应的资源配置为目标资源配置,其中所述M个平均变化率均小于除M个平均变化率之外的其它平均变化率,M为大于或等于1的正整数且M<N;
针对所述目标资源配置中的每一组资源配置,获取在所述设定时间段内运行所述应用时所述终端的温度;
选择最低温度对应的一组资源配置。
其中,所述获取各时间点的帧率的平均变化率,包括:
获取各时间点的帧率的方差或均方差。
其中,所述方法通过在终端中预置并自动运行脚本执行。
根据本公开实施例的第二方面,提供一种确定应用运行时最佳资源配置方式的装置,所述装置包括:
资源类型确定模块,被设置为针对所述应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;
资源配置组合确定模块,被设置为确定资源配置组合,所述资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;
帧率获取模块,被设置为针对所述资源配置组合中每一组资源配置,获取所述终端运行所述应用的设定场景的帧率;
资源配置确定模块,被设置为基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时的最佳资源配置方式。
其中,所述资源配置确定模块还被设置为:
基于所述帧率,确定N组资源配置,其中N为大于或等于1的正整数;
在所述N组资源配置中选取、输出一组资源配置作为运行所述应用时最佳资源配置方式。
其中,所述资源配置确定模块还被设置为:
所述帧率为各组资源配置下运行所述应用对应的平均帧率;
确定大于预设帧率阈值的平均帧率所对应的N组资源配置,或者,确定N个平均帧率所对应的资源配置,其中所述N个平均帧率均大于除N个平均帧率之外的其它平均帧率。
其中,所述资源配置确定模块还被设置为通过下述方式在所述N组资源配置中选取一组资源配置:
针对所述N组资源配置中每一组资源配置,获取所述各时间点的帧率的平均变化率;
选取具有最小平均变化率的资源配置。
其中,所述资源配置确定模块还被设置为通过下述方式在所述N组资源配置中选择一组资源配置:
针对所述N组资源配置中每一组资源配置,获取各时间点的帧率的平均变化率;
选取小于变化率阈值的平均变化率所对应的资源配置为目标资源配置,或者,选取M个平均变化率所对应的资源配置为目标资源配置,其中所述M个平均变化率均小于除M个平均变化率之外的其它平均变化率,M为大于或等于1的正整数且M<N;
针对所述目标资源配置中的每一组资源配置,获取在所述设定时间段内运行所述应用时所述终端的温度;
选择最低温度对应的一组资源配置。
其中,所述资源配置确定模块还被设置为通过下述方式获取各时间点的帧率的平均变化率,包括:
获取各时间点的帧率的方差或均方差。
其中,所述资源类型确定模块、所述资源配置组合确定模块、所述帧率获取模块、所述资源配置确定模块通过运行脚本执行各自的功能。
根据本公开实施例的第三方面,提供一种确定应用运行时最佳资源配置方式的装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为在运行所述可执行指令时实现以下步骤:
针对所述应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;
确定资源配置组合,所述资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;
针对所述资源配置组合中每一组资源配置,获取所述终端运行所述应用的设定场景的帧率;
基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时的最佳资源配置方式。
根据本公开实施例的第四方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置的处理器执行时,使得装置能够执行一种确定应用运行时最佳资源配置方式的方法,所述方法包括:
针对所述应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;
确定资源配置组合,所述资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;
针对所述资源配置组合中每一组资源配置,获取所述终端运行所述应用的设定场景的帧率;
基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时的最佳资源配置方式。
本公开提供了一种应用运行方法,这里的应用可以是游戏(尤其是资源消耗型大型游戏)、视频直播等。在该方法中,针对所述应用,确定待配置的资源类型和各资源类型包括的一种或多种参数配置;确定资源配置组合,资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;针对资源配置组合中每一组资源配置,获取在设定时间段内运行所述应用的设定场景的帧率;基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时最佳资源配置方式。
采用该方法为应用的设定场景选取的资源配置参数,是测试后得到的所有资源配置中可以防止丢帧的最佳资源配置。并且,该方法通过自动化过程记录并获取不同组合的掉帧数据并选取合适的参数组合,避免了开发人员人工挑选配置参数的繁杂过程。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的一种确定应用运行时最佳资源配置方式的方法的流程图。
图2是根据一示例性实施例示出的一种确定应用运行时最佳资源配置方式的方法的流程图。
图3是根据一示例性实施例示出的一种确定应用运行时最佳资源配置方式的装置的框图。
图4是根据一示例性实施例示出的一种装置的框图。
图5是根据一示例性实施例示出的一种装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
针对用户在使用手机玩游戏时的高延时和掉帧的现象,目前是通过人工抓取卡顿场景的systrace,分析卡顿原因,然后找到卡顿缺乏的资源点,来提升该资源的性能。但是,这种通过人工来进行参数调优的方法效率比较低,而且不具有通用性。
本公开提供了一种应用运行方法,这里的应用可以是游戏(尤其是资源消耗型大型游戏)、视频直播等。在该方法中,针对所述应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;确定资源配置组合,资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;针对资源配置组合中每一组资源配置,获取在设定时间段内运行所述应用的设定场景的帧率;基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时最佳资源配置方式。
采用该方法为应用的设定场景选取的资源配置参数,是测试后得到的所有资源配置中可以防止丢帧的最佳资源配置。并且,该方法通过自动化过程记录并获取不同组合的掉帧数据并选取合适的参数组合,避免了开发人员人工挑选配置参数的繁杂过程。
图1是根据一示例性实施例示出的一种确定应用运行时最佳资源配置方式的方法的流程图,如图1所示,该方法包括以下步骤:
步骤101,针对所述应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;
步骤102,确定资源配置组合,所述资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;
步骤103,针对所述资源配置组合中每一组资源配置,获取所述终端运行所述应用的设定场景的帧率;
步骤104,基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时的最佳资源配置方式。
采用本方法可以为应用的所有场景或部分场景(例如系统资源消耗比较大的场景)选择资源配置参数,并使用这些配置参数配置运行该应用的终端(例如手机、PAD等智能终端)。这样,当手机等终端运行该应用时,可以尽可能流畅地运行该应用。
由于本方法是为了在终端上流畅地运行应用,因此上述方法中的测试数据是通过运行应用的终端获取的。当运行应用的终端改变时,测试数据可能会相应地改变,也即针对不同的终端,会得到不同的测试结果。这是因为终端不相同时,终端可提供的系统软硬件资源也不相同。
在步骤101中,针对应用,确定运行所述应用的终端上待配置的资源类型和每种资源类型可能的参数配置。应用不同,所需配置的资源类型也可能不同。这里的资源类型包括系统硬件资源和/或软件资源。也就是说,根据应用的需要,可以仅配置系统硬件资源,也可以仅配置系统软件资源,还可以同时配置系统硬件资源和软件资源。每种资源可配置的参数也有一种或多种。以下给出常见的几种资源类型进行说明,当然需要配置的资源类型并不限于此。
(1)硬件资源cpufreq:指cpu的频率;
(2)硬件资源gpufreq:指gpu的频率;
(3)硬件资源core_ctl:指控制插拔核的逻辑;
(4)软件资源sched_upmigrate:指小核的任务负载超过此值即往大核上迁移任务;
(5)软件资源sched_downmigrate:指大核的任务负载小于此值即往小核上迁移任务;
(6)软件资源sched_min_granularity_ns:指保证进程运行的最小时间,以减少任务频繁切换;
(7)软件资源schedtune.boost:该值越大,处于该组的任务越容易往大核上迁移。
这些资源类型的具体意义为本领域技术人员所已知的,在此不再详细描述。每种资源类型都可设置一种或多种参数配置。例如,软件资源sched_upmigrate/sched_downmigrate的取值范围可以是40-80,如果以5为梯度,则可以得到40、45、50、55、60、65、70、75、80这9种参数配置;软件资源sched_min_granularity_ns的取值范围可以是1毫秒-20毫秒,如果以1毫秒为梯度,则可以得到1毫秒、2毫秒、3毫秒、…20毫秒这20种参数配置;软件资源schedtune.boost的取值范围可以是0-90,如果以10为梯度,则可以得到0、10、20、…90这10种参数配置。
例如,可以通过下述语句格式表示资源类型和具体参数和档位,其格式为资源全路径名称[档位1档位2档位3...档位N]:
/proc/sys/kernel/sched_upmigrate[40 45 50 55 60 65 70 75 80 85]表示sched_upmigrate的参数和档位;
/proc/sys/kernel/sched_downmigrate[40 45 50 55 60 65 70 75 80 85]表示sched_downmigrate的参数和档位,需要小于sched_upmigrate;
/proc/sys/kernel/sched_min_granularity_ns[1000000 2000000 3000000 ...20000000]表示sched_min_granularity_ns的参数和档位;
/dev/stune/top-app/schedtune.boost[0 10 20 30 ... 90]表示stune的参数和档位。
在步骤102中,确定各资源类型组成的资源配置组合。例如针对一个应用,运行该应用的终端上待配置的资源类型有三种:资源A、资源B、资源C。资源A包括3种参数配置,资源B包括4种参数配置,资源C包括5中参数配置,则共有3*4*5=60种资源配置,该60种资源配置组成资源配置组合。其中,这60中资源配置可以通过数学中的组合得到,在此不再赘述。当前,该步骤中确定的资源配置组合可以全部60种资源配置,也可以仅包括部分资源配置(例如从该60种资源配置中选取的几种重要的资源配置)。
在步骤103中,基于资源配置组合中的每一组资源配置来配置终端并运行应用的设定场景,获取帧率。需要说明的是,这里的帧率单位可以是帧/秒,即FPS,也可以是帧/两秒等其它帧率单位。为了方便起见,下述说明都以FPS为帧率单位。
在步骤104中,基于获取的帧率,按照预设规则在资源配置组合中确定一组资源配置作为运行应用时最佳资源配置。下面会结合具体的实施方式描述预设规则。
采用该方法为应用的设定场景选取的资源配置参数,是测试后得到的所有资源配置中可以防止丢帧的最佳资源配置。并且,该方法通过自动化过程记录并获取不同组合的掉帧数据并选取合适的参数组合,避免了开发人员人工挑选配置参数的繁杂过程。
在可选实施方式中,所述基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时最佳资源配置方式,包括:
基于所述帧率,确定N组资源配置,其中N为大于或等于1的正整数;
在所述N组资源配置中选取、输出一组资源配置作为运行所述应用时最佳资源配置方式。
在该实施方式中,基于对应于各组资源配置的帧率,从资源配置组合中选取一组或多组资源配置。然后,从一组或多组资源配置中选取一组资源配置,基于该组资源配置的参数配置终端。这里可以选择帧率较高的资源配置,这是因为帧率越高,表明丢帧越少。采用该参数配置终端并运行应用的设定场景时,可以实现最低的丢帧率。
在可选实施方式中,所述基于所述帧率确定N组资源配置,包括:
所述帧率为各组资源配置下运行所述应用对应的平均帧率;
确定大于预设帧率阈值的平均帧率所对应的N组资源配置,或者,确定N个平均帧率所对应的资源配置,其中所述N个平均帧率均大于除N个平均帧率之外的其它平均帧率。
本方法中是根据帧率来选取资源配置,因此为了使选取的资源配置更加准确,获取设定时间段内各时间点的帧率,然后基于各时间点的帧率计算平均帧率。这里设定时间段的各时间点可以是平均分布在该时间段内的时间点,也可以是非平均分布在该时间段内的时间点。为了方便起见,下面的讨论基于平均分布的时间点。
所述帧率包括所述设定时间段内各时间点的帧率时,获取在设定时间段内所述终端运行所述应用的设定场景的帧率,包括:获取设定时间段内平均分布的时间点上,终端运行应用的设定场景的帧率。例如,获取设定时间段内,终端运行应用的设定场景时,每一秒的帧率。
具体地,每一秒的帧率可以通过获取每一秒的当前帧数来得到。例如,当前一秒的帧数为2067,下一秒的帧数为2157,则下一秒的帧率为(2157-2067)帧/1秒,即90帧/秒。基于该方法,可以得到设定时间段内每一秒的帧率,如表1所示。
表1
序号 时间点 帧率(FPS)
1 21:54:07 88.51
2 21:54:08 90.92
3 21:54:09 90.10
4 21:54:10 89.26
5 21:54:11 91.92
6 21:54:12 89.07
7 21:54:13 90.39
然后计算各时间点上帧率的平均值,得到该时间段的帧率。这里的平均值可以为数学中的算术平均值。
选取较高的帧率对应的资源配置,这是因为帧率越高,表明丢帧越少。具体地,可以设置预设帧率阈值,确定大于该预设帧率阈值的平均帧率所对应的N个资源配置。或者,确定N个平均帧率所对应的资源配置,其中N个平均帧率均大于除N个平均帧率之外的其它平均帧率。例如,对平均帧率进行从大到小的排序,选取排序在前N位的平均帧率对应的资源配置。
在可选实施方式中,所述在所述N组资源配置中选择一组资源配置,包括:
针对所述N组资源配置中每一组资源配置,获取所述各时间点的帧率的平均变化率;
选取具有最小平均变化率的资源配置。
当帧率包括设定时间段内各时间点的帧率时,获取各时间点的帧率的平均变化率,在N组资源配置中,选取最小平均变化率对应的资源配置。这是因为,帧率的平均变化率越小,表明帧率越稳定,丢帧的现象越不容易发生。
在可选实施方式中,所述在所述N组资源配置中选择一组资源配置,包括:
针对所述N组资源配置中每一组资源配置,获取各时间点的帧率的平均变化率;
选取小于变化率阈值的平均变化率所对应的资源配置为目标资源配置,或者,选取M个平均变化率所对应的资源配置为目标资源配置,其中所述M个平均变化率均小于除M个平均变化率之外的其它平均变化率,M为大于或等于1的正整数且M<N;
针对所述目标资源配置中的每一组资源配置,获取在所述设定时间段内运行所述应用时所述终端的温度;
选择最低温度对应的一组资源配置。
在该实施方式的方法中,在选取资源配置时,除了考量平均帧率、帧率的平均变化率,还考量终端的温度。这是为了选取运行应用时终端发热较少的资源配置。
在该方法中,在资源配置中选择几组帧率变化率较小的资源配置,然后从中选取运行应用的设定场景时终端温度最低时所对应的一组资源配置。
在可选实施方式中,所述获取各时间点的帧率的平均变化率,包括:
获取各时间点的帧率的方差或均方差。
可以通过数学中的计算方差或均方差的方法来获取帧率的平均变化率。方差或均方差为本领域技术人员已知的数学计算过程,在此不再赘述。
在可选实施方式中,所述方法通过在终端中预置并自动运行脚本执行。
在该实施方式中,在终端上自动运行脚本来实现上述方法。
下面结合具体的应用场景描述根据本公开的具体实施例。在该实施例中,为运行一款游戏应用的手机选择合适的资源配置参数,其中该游戏包括十个场景。该方法包括以下步骤:
步骤201,针对所述游戏应用,确定手机上待配置的资源类型为:硬件资源A、硬件资源B、软件资源C、软件资源D,其中硬件资源A包括3种参数配置,硬件资源B包括5种参数配置,软件资源C包括4种参数配置,软件资源D包括6种参数配置。
步骤202,获取硬件资源A、硬件资源B、软件资源C、软件资源D各自的参数配置构成的共360组资源配置,由这360组资源配置组成资源配置组合。
步骤203,使用每组资源配置的参数配置手机,由手机运行游戏应用的场景一,获取在20秒内每秒的帧数和手机的温度。
步骤204,基于每秒的帧数,计算得到对应于每组资源配置的20秒内每秒的帧率。
步骤205,计算得到对应于每组资源配置的20秒内的平均帧率和帧率的方差。
步骤206,在对应于360组资源配置的360个平均帧率中,选择平均帧率较大的20个对应的资源配置。
步骤207,从这20个资源配置中选择方差较小的10个资源配置作为目标资源配置。
步骤208,选取目标资源配置中对应的手机温度最低的资源配置为最佳资源配置。
步骤209,采用相同的方法,获取游戏应用的场景二-场景十的最佳资源配置。
当采用上述方法配置的手机运行游戏应用时,能够实现最低的丢帧率,从而提升用户的使用体验。
本公开还提供了一种确定应用运行时最佳资源配置方式的装置,如图3所示,所述装置包括:
资源类型确定模块301,被设置为针对所述应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;
资源配置组合确定模块302,被设置为确定资源配置组合,所述资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;
帧率获取模块303,被设置为针对所述资源配置组合中每一组资源配置,获取所述终端运行所述应用的设定场景的帧率;
资源配置确定模块304,被设置为基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时最佳资源配置方式。
在可选实施方式中,所述资源配置确定模块304还被设置为:
基于所述帧率,确定N组资源配置,其中N为大于或等于1的正整数;
在所述N组资源配置中选取、输出一组资源配置作为运行所述应用时最佳资源配置方式。
在可选实施方式中,所述资源配置确定模块304还被设置为:
所述帧率为各组资源配置下运行所述应用对应的平均帧率;
确定大于预设帧率阈值的平均帧率所对应的N组资源配置,或者,确定N个平均帧率所对应的资源配置,其中所述N个平均帧率均大于除N个平均帧率之外的其它平均帧率。
在可选实施方式中,所述资源配置确定模块304还被设置为通过下述方式在所述N组资源配置中选取一组资源配置:
针对所述N组资源配置中每一组资源配置,获取所述各时间点的帧率的平均变化率;
选取具有最小平均变化率的资源配置。
在可选实施方式中,所述资源配置确定模块304还被设置为通过下述方式在所述N组资源配置中选择一组资源配置:
针对所述N组资源配置中每一组资源配置,获取各时间点的帧率的平均变化率;
选取小于变化率阈值的平均变化率所对应的资源配置为目标资源配置,或者,选取M个平均变化率所对应的资源配置为目标资源配置,其中所述M个平均变化率均小于除M个平均变化率之外的其它平均变化率,M为大于或等于1的正整数且M<N;
针对所述目标资源配置中的每一组资源配置,获取在所述设定时间段内运行所述应用时所述终端的温度;
选择最低温度对应的一组资源配置。
在可选实施方式中,所述资源配置确定模块304还被设置为通过下述方式获取各时间点的帧率的平均变化率,包括:
获取各时间点的帧率的方差或均方差。
在可选实施方式中,所述资源类型确定模块301、所述资源配置组合确定模块302、所述帧率获取模块303、所述资源配置确定模块304通过运行脚本执行各自的功能。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本公开提供了一种应用运行装置,这里的应用可以是游戏(尤其是资源消耗型大型游戏)、视频直播等。采用该装置,针对所述应用,确定待配置的资源类型和各资源类型包括的一种或多种参数配置;确定资源配置组合,资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;针对资源配置组合中每一组资源配置,获取运行所述应用的设定场景的帧率;基于帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时最佳资源配置方式。
采用该装置为应用的设定场景选取的资源配置参数,是测试后得到的所有资源配置中可以防止丢帧的最佳资源配置。并且,该方法通过自动化过程记录并获取不同组合的掉帧数据并选取合适的参数组合,避免了开发人员人工挑选配置参数的繁杂过程。
图4是根据一示例性实施例示出的一种用于确定应用运行时最佳资源配置方式的装置400的框图。
参照图4,装置400可以包括以下一个或多个组件:处理组件402,存储器404,电力组件406,多媒体组件408,音频组件410,输入/输出(I/O)的接口412,传感器组件414,以及通信组件416。
处理组件402通常控制装置400的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件402可以包括一个或多个处理器420来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件402可以包括一个或多个模块,便于处理组件402和其他组件之间的交互。例如,处理组件402可以包括多媒体模块,以方便多媒体组件408和处理组件402之间的交互。
存储器404被配置为存储各种类型的数据以支持在设备400的操作。这些数据的示例包括用于在装置400上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器404可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电力组件406为装置400的各种组件提供电力。电力组件406可以包括电源管理系统,一个或多个电源,及其他与为装置400生成、管理和分配电力相关联的组件。
多媒体组件408包括在所述装置400和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件408包括一个前置摄像头和/或后置摄像头。当设备400处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件410被配置为输出和/或输入音频信号。例如,音频组件410包括一个麦克风(MIC),当装置400处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器404或经由通信组件416发送。在一些实施例中,音频组件410还包括一个扬声器,用于输出音频信号。
I/O接口412为处理组件402和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件414包括一个或多个传感器,用于为装置400提供各个方面的状态评估。例如,传感器组件414可以检测到设备400的打开/关闭状态,组件的相对定位,例如所述组件为装置400的显示器和小键盘,传感器组件414还可以检测装置400或装置400一个组件的位置改变,用户与装置400接触的存在或不存在,装置400方位或加速/减速和装置400的温度变化。传感器组件414可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件414还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件414还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件416被配置为便于装置400和其他设备之间有线或无线方式的通信。装置400可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件416经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件416还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置400可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器404,上述指令可由装置400的处理器420执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种确定应用运行时最佳资源配置方式的方法,所述方法包括:针对所述应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;确定资源配置组合,所述资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;针对所述资源配置组合中每一组资源配置,获取所述终端运行所述应用的设定场景的帧率;基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时最佳资源配置方式。
图5是根据一示例性实施例示出的一种用于确定应用运行时最佳资源配置方式的装置500的框图。例如,装置500可以被提供为一服务器。参照图5,装置500包括处理组件522,其进一步包括一个或多个处理器,以及由存储器532所代表的存储器资源,用于存储可由处理组件522的执行的指令,例如应用程序。存储器532中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件522被配置为执行指令,以执行上述方法:针对所述应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;确定资源配置组合,所述资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;针对所述资源配置组合中每一组资源配置,获取所述终端运行所述应用的设定场景的帧率;基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时最佳资源配置方式。
装置500还可以包括一个电源组件526被配置为执行装置500的电源管理,一个有线或无线网络接口550被配置为将装置500连接到网络,和一个输入输出(I/O)接口558。装置500可以操作基于存储在存储器532的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (16)

1.一种确定应用运行时最佳资源配置方式的方法,其特征在于,所述方法包括:
针对所述应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;
确定资源配置组合,所述资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;
针对所述资源配置组合中每一组资源配置,获取所述终端运行所述应用的设定场景的帧率;
基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时的最佳资源配置方式。
2.如权利要求1所述的方法,其特征在于,基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时最佳资源配置方式,包括:
基于所述帧率,确定N组资源配置,其中N为大于或等于1的正整数;
在所述N组资源配置中选取、输出一组资源配置作为运行所述应用时的最佳资源配置方式。
3.如权利要求2所述的方法,其特征在于,所述基于所述帧率确定N组资源配置,包括:
所述帧率为各组资源配置下运行所述应用对应的平均帧率;
确定大于预设帧率阈值的平均帧率所对应的N组资源配置,或者,确定N个平均帧率所对应的资源配置,其中所述N个平均帧率均大于除N个平均帧率之外的其它平均帧率。
4.如权利要求3所述的方法,其特征在于,所述在所述N组资源配置中选取一组资源配置,包括:
针对所述N组资源配置中每一组资源配置,获取所述各时间点的帧率的平均变化率;
选取具有最小平均变化率的资源配置。
5.如权利要求3所述的方法,其特征在于,所述在所述N组资源配置中选择一组资源配置,包括:
针对所述N组资源配置中每一组资源配置,获取各时间点的帧率的平均变化率;
选取小于变化率阈值的平均变化率所对应的资源配置为目标资源配置,或者,选取M个平均变化率所对应的资源配置为目标资源配置,其中所述M个平均变化率均小于除M个平均变化率之外的其它平均变化率,M为大于或等于1的正整数且M<N;
针对所述目标资源配置中的每一组资源配置,获取在所述设定时间段内运行所述应用时所述终端的温度;
选择最低温度对应的一组资源配置。
6.如权利要求3所述的方法,其特征在于,所述获取各时间点的帧率的平均变化率,包括:
获取各时间点的帧率的方差或均方差。
7.如权利要求1-6所述的方法,其特征在于,所述方法通过在终端中预置并自动运行脚本执行。
8.一种确定应用运行时最佳资源配置方式的装置,其特征在于,所述装置包括:
资源类型确定模块,被设置为针对所述应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;
资源配置组合确定模块,被设置为确定资源配置组合,所述资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;
帧率获取模块,被设置为针对所述资源配置组合中每一组资源配置,获取所述终端运行所述应用的设定场景的帧率;
资源配置确定模块,被设置为基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时的最佳资源配置方式。
9.如权利要求8所述的装置,其特征在于,所述资源配置确定模块还被设置为:
基于所述帧率,确定N组资源配置,其中N为大于或等于1的正整数;
在所述N组资源配置中选取、输出一组资源配置作为运行所述应用时最佳资源配置方式。
10.如权利要求9所述的装置,其特征在于,所述资源配置确定模块还被设置为:
所述帧率为各组资源配置下运行所述应用对应的平均帧率;
确定大于预设帧率阈值的平均帧率所对应的N组资源配置,或者,确定N个平均帧率所对应的资源配置,其中所述N个平均帧率均大于除N个平均帧率之外的其它平均帧率。
11.如权利要求10所述的装置,其特征在于,所述资源配置确定模块还被设置为通过下述方式在所述N组资源配置中选取一组资源配置:
针对所述N组资源配置中每一组资源配置,获取所述各时间点的帧率的平均变化率;
选取具有最小平均变化率的资源配置。
12.如权利要求10所述的装置,其特征在于,所述资源配置确定模块还被设置为通过下述方式在所述N组资源配置中选择一组资源配置:
针对所述N组资源配置中每一组资源配置,获取各时间点的帧率的平均变化率;
选取小于变化率阈值的平均变化率所对应的资源配置为目标资源配置,或者,选取M个平均变化率所对应的资源配置为目标资源配置,其中所述M个平均变化率均小于除M个平均变化率之外的其它平均变化率,M为大于或等于1的正整数且M<N;
针对所述目标资源配置中的每一组资源配置,获取在所述设定时间段内运行所述应用时所述终端的温度;
选择最低温度对应的一组资源配置。
13.如权利要求10所述的装置,其特征在于,所述资源配置确定模块还被设置为通过下述方式获取各时间点的帧率的平均变化率,包括:
获取各时间点的帧率的方差或均方差。
14.如权利要求8-13所述的装置,其特征在于,所述资源类型确定模块、所述资源配置组合确定模块、所述帧率获取模块、所述资源配置确定模块通过运行脚本执行各自的功能。
15.一种确定应用运行时最佳资源配置方式的装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为在运行所述可执行指令时实现以下步骤:
针对所述应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;
确定资源配置组合,所述资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;
针对所述资源配置组合中每一组资源配置,获取所述终端运行所述应用的设定场景的帧率;
基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时的最佳资源配置方式。
16.一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置的处理器执行时,使得装置能够执行一种确定应用运行时最佳资源配置方式的方法,所述方法包括:
针对所述应用,确定运行所述应用的终端上待配置的资源类型和各资源类型包括的一种或多种参数配置;
确定资源配置组合,所述资源配置组合由多组资源配置组成,每组资源配置包括各资源类型的一种参数配置;
针对所述资源配置组合中每一组资源配置,获取所述终端运行所述应用的设定场景的帧率;
基于所述帧率,按照预设规则在所述资源配置组合中确定一组资源配置作为运行所述应用时的最佳资源配置方式。
CN202011270126.2A 2020-11-13 2020-11-13 确定应用运行时最佳资源配置方式的方法、装置及介质 Pending CN112416580A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011270126.2A CN112416580A (zh) 2020-11-13 2020-11-13 确定应用运行时最佳资源配置方式的方法、装置及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011270126.2A CN112416580A (zh) 2020-11-13 2020-11-13 确定应用运行时最佳资源配置方式的方法、装置及介质

Publications (1)

Publication Number Publication Date
CN112416580A true CN112416580A (zh) 2021-02-26

Family

ID=74831064

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011270126.2A Pending CN112416580A (zh) 2020-11-13 2020-11-13 确定应用运行时最佳资源配置方式的方法、装置及介质

Country Status (1)

Country Link
CN (1) CN112416580A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117311909A (zh) * 2023-11-28 2023-12-29 腾讯科技(深圳)有限公司 虚拟场景的资源处理方法、装置、设备及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117311909A (zh) * 2023-11-28 2023-12-29 腾讯科技(深圳)有限公司 虚拟场景的资源处理方法、装置、设备及存储介质
CN117311909B (zh) * 2023-11-28 2024-03-22 腾讯科技(深圳)有限公司 虚拟场景的资源处理方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN105955765B (zh) 应用预加载方法及装置
EP3188066B1 (en) A method and an apparatus for managing an application
CN105338409B (zh) 一种网络视频预加载方法及装置
WO2016029642A1 (zh) 后台应用程序的控制方法、装置及终端设备
CN110166371B (zh) 流量控制方法、装置、电子设备及存储介质
EP3133874A1 (en) Method and apparatus for starting energy saving mode
CN111240817B (zh) 资源调度方法、资源调度装置及存储介质
EP3015983A1 (en) Method and device for optimizing memory
US9678868B2 (en) Method and device for optimizing memory
CN112286683A (zh) 一种分片下载方法、装置及介质
CN109062625B (zh) 应用程序加载的方法、装置及可读存储介质
CN111240835A (zh) Cpu工作频率调整方法、cpu工作频率调整装置及存储介质
CN109376013B (zh) 负载均衡方法及装置
CN108958911B (zh) 进程的控制方法及装置
CN108037987B (zh) 应用程序控制方法、装置、存储介质
CN108629814B (zh) 相机调整方法及装置
CN112416580A (zh) 确定应用运行时最佳资源配置方式的方法、装置及介质
CN112486658A (zh) 一种任务调度方法、装置和用于任务调度的装置
CN109644353B (zh) 配置调整方法、装置、电子设备和计算机可读存储介质
CN111221654A (zh) 调度器工作频率调整方法、装置及存储介质
CN111290843A (zh) 进程管理方法及装置
CN110909886B (zh) 一种机器学习网络运行方法、装置及介质
CN116089025A (zh) 处理器频率控制方法、装置及存储介质
CN112817844A (zh) 后台进程驻留测试方法、装置、设备及存储介质
CN108427582B (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