CN113641479A - 程序运行控制方法、终端设备及计算机可读存储介质 - Google Patents

程序运行控制方法、终端设备及计算机可读存储介质 Download PDF

Info

Publication number
CN113641479A
CN113641479A CN202110955432.8A CN202110955432A CN113641479A CN 113641479 A CN113641479 A CN 113641479A CN 202110955432 A CN202110955432 A CN 202110955432A CN 113641479 A CN113641479 A CN 113641479A
Authority
CN
China
Prior art keywords
prediction
model
time interval
time period
time
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
CN202110955432.8A
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.)
Weikun Shanghai Technology Service Co Ltd
Original Assignee
Weikun Shanghai Technology Service 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 Weikun Shanghai Technology Service Co Ltd filed Critical Weikun Shanghai Technology Service Co Ltd
Priority to CN202110955432.8A priority Critical patent/CN113641479A/zh
Publication of CN113641479A publication Critical patent/CN113641479A/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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请适用于计算机技术领域,提供了一种涉及程序运行控制方法、终端设备及计算机可读存储介质,包括:统计目标系统在第t个时段内的系统性能数据,所述t为正整数;根据第t‑1个时段的预测模型和所述第t个时段的候选模型确定所述第t个时段的预测模型;将所述第t个时段的系统性能数据输入所述第t个时段的预测模型,输出所述目标系统中的目标程序在所述第t+1个时段的第一预测执行类型;根据所述目标程序在所述第t+1个时段的第一预测执行类型,控制第t+1个时段内所述目标程序的运行。通过上述方法,能够有效感知系统的可用性变化,进而有效提高系统资源的利用率。

Description

程序运行控制方法、终端设备及计算机可读存储介质
技术领域
本申请属于计算机技术领域,尤其一种涉及程序运行控制方法、终端设备及计算机可读存储介质。
背景技术
目前,在一些业务系统中,通常采用定时执行任务机制,来处理大量的业务。现有的定时执行任务机制中,若一次任务执行失败,则该任务是否重试取决于与上一次执行失败的时间差是否达到预设时长、或是否达到最大重试次数;若达到预设时差或预设重试次数,则业务系统重试该任务。
由上述可知,当业务系统在一定时间内的不可用时,现有的定时执行任务机制可以避免执行很多无效业务。但是当业务系统恢复正常后,现有方案并不能做出及时的响应,必须等到预设时长或达到最大重试次数,才能再次执行相关的业务。现有的定时执行任务机制无法感知系统的可用性变化,灵活度较低,在一定程度上降低了系统资源的利用率。
发明内容
本申请实施例提供了一种涉及程序运行控制方法、终端设备及计算机可读存储介质,可以有效提高对业务系统的可用性变化的感知能力、进而提高系统资源的利用率。
第一方面,本申请实施例提供了一种程序运行控制方法,包括:
统计目标系统在第t个时段内的系统性能数据,所述t为正整数;
根据第t-1个时段的预测模型和所述第t个时段的候选模型确定所述第t个时段的预测模型;
将所述第t个时段的系统性能数据输入所述第t个时段的预测模型,输出所述目标系统中的目标程序在所述第t+1个时段的第一预测执行类型;
根据所述目标程序在所述第t+1个时段的第一预测执行类型,控制第t+1个时段内所述目标程序的运行。
在本申请实施例中,预测模型的输入为目标系统在第t个时段内的系统性能数据,输出为目标系统中的目标程序在第t+1个时段内的执行类型,相当于根据系统性能数据感知系统的可用性变化,根据系统的可用性变化预测程序的执行类型。通过上述方法,能够灵活感知系统的可用性变化,有效提高系统资源的利用率。
在第一方面的一种可能的实现方式中,所述根据第t-1个时段的预测模型和所述第t个时段的候选模型确定所述第t个时段的预测模型,包括:
以所述第t个时段为基准进行分时段动态采样,获得第一样本;
根据所述第一样本对所述第t-1个时段的预测模型进行训练,得到所述第t个时段的候选模型;
根据所述第t-1个时段的预测模型和所述第t个时段的候选模型确定所述第t个时段的预测模型。
在第一方面的一种可能的实现方式中,所述以所述第t个时段为基准进行分时段动态采样,获得第一样本,包括:
获取所述第t个时段之前的k个时段;
确定所述k个时段的每个时段中的采样次数;
根据所述采样次数从所述k个时段的每个时段中分别抽取Ni组系统性能数据,得到所述第一样本,其中,所述Ni表示第i个时段中的采样次数,i为整数,且0<i≤k。
在第一方面的一种可能的实现方式中,所述确定所述k个时段的每个时段中的采样次数,包括:
若满足第一预设条件,则增加目标时段中的采样次数;
其中,所述第一预设条件为在所述第t个时段之前的连续L个时段内、预测模型均未改变;
所述目标时段为第j个时段,t-(M+1)Δt≤j<t,所述M为已增加采样次数的时段的个数,所述Δt为与预设时间长度。
在第一方面的一种可能的实现方式中,所述根据所述第t-1个时段的预测模型和所述第t个时段的候选模型确定所述第t个时段的预测模型,包括:
将所述第t个时段的多个系统性能数据输入所述第t-1个时段的预测模型,输出所述目标程序在所述第t个时段的第二预测执行类型;
将所述第t个时段的多个系统性能数据输入所述第t个时段的候选模型,输出所述目标程序在所述第t个时段的第三预测执行类型;
根据所述目标程序在所述第t个时段的实际执行类型分别确定所述第二预测执行类型对应的第一预测准确度、和所述第三预测执行类型对应的第二预测准确度;
根据所述第一预测准确度和所述第二预测准确度确定所述第t个时段的预测模型。
在第一方面的一种可能的实现方式中,所述根据所述第一预测准确度和所述第二预测准确度确定所述第t个时段的预测模型,包括:
若所述第一预测准确度和所述第二预测准确度满足第二预设条件,则将所述第一预测准确度和所述第二预测准确度中的最大值对应的模型确定为所述第t个时段的预测模型;其中,所述第二预设条件为所述第一预测准确度和所述第二预测准确度均小于预设阈值,或者,所述第一预测准确度小于预设阈值、所述第二预测准确度大于预设阈值,或者,所述第一预测准确度大于预设阈值、所述第二预测准确度小于预设阈值。
在第一方面的一种可能的实现方式中,所述根据所述第一预测准确度和所述第二预测准确度确定所述第t个时段的预测模型,包括:
若所述第一预测准确度和所述第二预测准确度满足第三预设条件,则将所述第t个时段的候选模型确定为所述第t个时段的预测模型;
所述第三预设条件为所述第一预测准确度均大于预设阈值,且满足
Figure BDA0003220035290000041
所述accM表示所述第一预测准确度,所述accM′表示所述第二预测准确度,所述acc表示所述预设阈值,所述h为预设数值。
第二方面,本申请实施例提供了一种程序运行控制装置,包括:
统计单元,用于统计目标系统在第t个时段内的系统性能数据,所述t为正整数;
确定单元,用于根据第t-1个时段的预测模型和所述第t个时段的候选模型确定所述第t个时段的预测模型;
预测单元,用于将所述第t个时段的系统性能数据输入所述第t个时段的预测模型,输出所述目标程序在所述第t+1个时段的第一预测执行类型;
控制单元,用于根据所述目标程序在所述第t+1个时段的第一预测执行类型,控制第t+1个时段内所述目标程序的运行。
第三方面,本申请实施例提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如上述第一方面中任一项所述的程序运行控制方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上述第一方面中任一项所述的程序运行控制方法。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的程序运行控制方法。
可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申实施例提供的程序运行控制方法的流程示意图;
图2是本申请实施例提供LR函数的示意图;
图3本申请另一实施例提供的程序运行控制方法的流程示意图;
图4是本申请实施例提供的程序运行控制装置的结构框图;
图5是本申请实施例提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
如在本申请说明书和所附权利要求书中所使用的那样,术语“若”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。
首先介绍背景技术。
互联网服务在业务量很小的阶段,同步调用(比如用户购买一笔保险产品,订单需要在业务端以及第三方保司的所有流程都顺利完成之后才可以被认为成功,之间就涉及多系统之间的同步层级调用)可以作为系统架构采用的一种方式。但是随着业务量的暴增,同步调用的弊端就会被无限放大,调用的成功率会出现陡然下降,当随着后续的调用不断进入,业务系统随之而来的就是资源耗尽而宕机。因而随着业务量的增加,需要将原先的同步调用进行异步化。异步化随之而来的就是大量任务调度的使用。
任务调度(比如将之前的订单拆分成几个阶段,将订单状态作为划分依据,然后每个状态的流转则由一个个JOB任务进行驱动,这样当订单状态走到了终态SUCCESS时,则预示着该笔订单的正式完成)通过后台进程的有序任务进行,对系统原有的峰值进行扁平化,大大增加了系统的稳定性。现有技术中,关于任务调度的实现,通常是通过调度中心向业务系统循环发起(每一个JOB任务获取某一种订单状态下的所有订单,然后依次处理每一个订单,处理之后订单会走向新的订单状态),当业务系统在执行过程中,因为各种原因导致失败进入某一新的订单状态后,因为任务的调度由订单状态进行切分,所以它仍然可以被某一job任务捞起的进行重试。目前对于执行失败的业务是否可重试往往取决于与上一次执行失败的时差(包含固定步长亦或递增步长)是否已到达以及是否达到最大重试次数。
在上述的JOB执行机制中,当系统存在一定时间内的不可用时,该方案可以减少很多无效业务执行;但是当系统恢复正常后,现有方案并不能做出及时的响应,必须等延时间隔后,才能再次进行相关的业务执行,无法感知系统的可用性变化,灵活度较低,在一定程度上降低了系统资源的利用率。
参见图1,是本申实施例提供的程序运行控制方法的流程示意图,作为示例而非限定,所述方法可以包括以下步骤:
S101,统计目标系统在第t个时段内的系统性能数据,t为正整数。
目标系统是指待预测的系统,如一些业务系统、业务平台对应的服务器等。
本申请实施例中,系统性能数据可以是多维度的数据。目标系统的多个维度的数据可以包括cpu性能、外部调用指标、数据库指标等。只要是能够对目标系统中的目标程序的运行产生影响的指标均可以考虑。
S102,根据第t-1个时段的预测模型和第t个时段的候选模型确定第t个时段的预测模型。
S102的具体实现方式可参见图实施例中的描述,在此不再赘述。
S103,将第t个时段的系统性能数据输入第t个时段的预测模型,输出目标系统中的目标程序在第t+1个时段的第一预测执行类型。
目标程序是指目标系统中用于执行某个任务的程序。例如,业务系统中用于实现JOB执行机制的程序。
预测模型可以是基于逻辑回归(Logistic Regression,LR)算法的模型。
LR相关的定义:如果一个随机变量ξ,它的分布函数为
Figure BDA0003220035290000071
Figure BDA0003220035290000072
则称ξ服从logistic分布,其分布函数叫做logistic函数,其图参见图2。
LR是分析二分类型变量时常用的非线性统计模型,其模型的因变量y为二分类变量(即值为0或1),结果变量与自变量间是非线性关系。关系式如下:
Figure BDA0003220035290000073
其中Pi指事件发生的概率,取0~1。
Figure BDA0003220035290000074
令P(y=1|x;θ)=hθ(x),则hθ(x)代表在输入x的情况下结果取1的概率,P(y=0|x;θ)=1-hθ(x),则P(y=x;θ)=(hθ(x))y(1-hθ(x))1-y,
似然函数为:
Figure BDA0003220035290000081
则对数似然函数为:
Figure BDA0003220035290000082
结合cost函数
Figure BDA0003220035290000083
得到代价函数:
Figure BDA0003220035290000084
在本申请实施例中,上述关系式中的m为样本的个数,x为输入的目标系统的一组多维度系统性能数据(如xi表示第i组系统性能数据),y表示分类结果(yi表示第i个分类结果,如二分类中y1=0,y2=1)。当代价函数J(θ)的值最小时,将对应的θ的值确定为LR模型的模型参数。
S104,根据目标程序在第t+1个时段的第一预测执行类型,控制第t+1个时段内目标程序的运行。
LR算法是一种二分类算法,通过预测模型,将多个维度的系统性能数据映射到一个二维空间,生成分类值(即第一预测执行类型)。当分类值大于预设值时,预测结果表示目标程序可执行;当分类值小于或等于预设值时,预测结果表示目标程序不可执行。
本申请实施例中,通过对于影响系统可用性的多维系统性能数据进行逻辑回归,相当于从多个维度上考虑系统的可用性,有利于提高系统可用性的预测准确度。
实际应用中,系统运行所产生的样本是一个动态样本,因为预测模型(LR模型)在训练成之后,模型参数就已经确立,故而它对于动态样本的预测效果,将随着时间而衰减。为了保证预测模型的预测精度,本申请采用双模型并行方案获取每个时段的预测模型。
参见图3,是本申请另一实施例提供的程序运行控制方法的流程示意图。
如图3所示,S102可以包括:
S301,获取第t-1个时段的预测模型。
当t-1=1时,预测模型是根据初始样本训练生成的,本申请实施例中的样本是指目标系统的多个维度的系统性能数据。当t-1>1时,预测模型是指在第t-2个时段、根据S301-S303步骤中的方案确定出的预测模型。
在实际的项目中,对于初始化的预测模型(即第1个时段的预测模型),可以通过在多个维度增加系统性能数据的噪音干扰,以使样本丰富化。
本申请中的时段,可以理解为模型的交替判断周期,即每隔一个时段,判断一次是否需要进行模型交替。当时段较短时,模型交替判断的较频繁,但对处理器的性能要求较高;当时段较长时,模型交替判断的频率较低,对处理器的性能要求较低。可以根据实际需要预先设定时段。
S302,获取第t个时段的候选模型。
为了保证候选模型的预测精度,需要令采集到的样本尽可能丰富。在一个实施例中,S302可以包括:
S3021,以第t个时段为基准进行分时段动态采样,获得第一样本。
S3022,根据第一样本对第t-1个时段的预测模型进行训练,得到第t个时段的候选模型。
可选的,分时动态采样的一种实现方式可以包括:
获取第t个时段之前的k个时段;确定k个时段的每个时段中的采样次数;根据采样次数从所述k个时段的每个时段中分别抽取Ni组系统性能数据,得到第一样本,其中,Ni表示第i个时段中的采样次数,i为整数,且0<i≤k。
K值越大,包含的样本数据越多,训练出的候选模型所覆盖的时间范围越广(候选模型可以用于预测较长时间范围内的目标程序的执行类型),但需要处理的数据量较大。K值越小,包含的样本数据越少,训练出的候选模型所覆盖的时间范围越小(候选模型可以用于预测较短时间范围内的目标程序的执行类型),需要处理的数据量较小。K值可以根据实际需要预先设定。
可选的,确定每个时段的采样次数的一种实现方式可以为:令每个时段的采样次数Ni相同。即每个时段中均抽取相同数据量的数据,各时段内的抽样比例相同。这种方式下,可能出现较长时间内候选模型无法替换当前的预测模型的情况,导致模型交替的频率较低,无法实现更新模型的目的。
为了提高模型交替的频率,可选的,可以动态调整各时段内的抽样比例,即根据模型的交替结果动态设置Ni值。
具体的,确定每个时段的采样次数,可以包括:
若满足第一预设条件,则增加目标时段中的采样次数;其中,第一预设条件为在第t个时段之前的连续L个时段内、预测模型均未改变;目标时段为第j个时段,t-(M+1)Δt≤j<t,M为已增加采样次数的时段的个数,Δt为与预设时间长度。
示例性的,若在第t-1个时段之前的连续3个时段内,均未发生模型交替,则以
Figure BDA0003220035290000101
的预设时间长度增加目标时段内的抽样比例,其中,K=2。假设在第1-3个时段内均未发生模型交替,则在第4个时段内,增加第3个时段内的抽样比例(在第1-3个时段内均未增加抽样比例,因此,第4个时段内
Figure BDA0003220035290000102
Figure BDA0003220035290000103
即t=3)。继续假设在第4个时段内,发生了模型交替,在第5-7个时段内,未发生模型交替。那么在第8个时段内,增加第6个时段和第7个时段内的抽样比例(在第4个时段增加了一次抽样比例,因此,第8个时段内
Figure BDA0003220035290000104
即t=6或7)。
通过上述实施例,在保证分时段采样的条件下,还能够自适应地调整各时段内的抽样比例,提高了模型的交替频率,进而提高了预测模型的准确度。
S303,根据第t-1个时段的预测模型和第t个时段的候选模型确定第t个时段的预测模型。
在一个实施例中,S303可以包括:
将第t个时段的多个系统性能数据输入第t-1个时段的预测模型,输出目标程序在第t个时段的第二预测执行类型;
将第t个时段的多个系统性能数据输入第t个时段的候选模型,输出目标程序在第t个时段的第三预测执行类型;
根据目标程序在第t个时段的实际执行类型分别确定第二预测执行类型对应的第一预测准确度、和第三预测执行类型对应的第二预测准确度;
根据第一预测准确度和第二预测准确度确定第t个时段的预测模型。
可选的,根据第一预测准确度和第二预测准确度确定第t个时段的预测模型的一种实现方式可以为:
若第一预测准确度和第二预测准确度满足第二预设条件,则将第一预测准确度和第二预测准确度中的最大值对应的模型确定为第t个时段的预测模型;
若第一预测准确度和第二预测准确度满足第三预设条件,则将第t个时段的候选模型确定为第t个时段的预测模型。
其中,第二预设条件为第一预测准确度和第二预测准确度均小于预设阈值,或者,第一预测准确度小于预设阈值、第二预测准确度大于预设阈值,或者,第一预测准确度大于预设阈值、第二预测准确度小于预设阈值;第三预设条件为第一预测准确度均大于预设阈值。
为了避免无效的模型替换,可以进一步增加第三预设条件。可选的,第三预设条件为:第一预测准确度均大于预设阈值,且满足
Figure BDA0003220035290000111
accM表示第一预测准确度,accM′表示第二预测准确度,acc表示预设阈值,h为预设数值。
在大量数据动态产生的背景下,本申请实施例中双模型并行的技术方案具有较大优势。既能够通过独特的样本采样使得备模型达到较高的预测准确度,进而保证替换后的预测模型具有较高的预测准确度,又能够在特定样本空间内保证训练效率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的程序运行控制方法,图4是本申请实施例提供的程序运行控制装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图4,该装置包括:
统计单元41,用于统计目标系统在第t个时段内的系统性能数据,所述t为正整数。
确定单元42,用于根据第t-1个时段的预测模型和所述第t个时段的候选模型确定所述第t个时段的预测模型。
预测单元43,用于将所述第t个时段的系统性能数据输入所述第t个时段的预测模型,输出所述目标程序在所述第t+1个时段的第一预测执行类型。
控制单元44,用于根据所述目标程序在所述第t+1个时段的第一预测执行类型,控制第t+1个时段内所述目标程序的运行。
可选的,确定单元42还用于::
获取第t-1个时段的预测模型;获取所述第t个时段的候选模型;根据所述第t-1个时段的预测模型和所述第t个时段的候选模型确定所述第t个时段的预测模型。
可选的,确定单元42还用于:
以所述第t个时段为基准进行分时段动态采样,获得第一样本;根据所述第一样本对所述第t-1个时段的预测模型进行训练,得到所述第t个时段的候选模型。
可选的,确定单元42还用于:
获取所述第t个时段之前的k个时段;确定所述k个时段的每个时段中的采样次数;根据所述采样次数从所述k个时段的每个时段中分别抽取Ni组系统性能数据,得到所述第一样本,其中,所述Ni表示第i个时段中的采样次数,i为整数,且0<i≤k。
可选的,确定单元42还用于:
若满足第一预设条件,则增加目标时段中的采样次数;其中,所述第一预设条件为在所述第t个时段之前的连续L个时段内、预测模型均未改变;所述目标时段为第j个时段,t-(M+1)Δt≤j<t,所述M为已增加采样次数的时段的个数,所述Δt为与预设时间长度。
可选的,确定单元42还用于:
将所述第t个时段的多个系统性能数据输入所述第t-1个时段的预测模型,输出所述目标程序在所述第t个时段的第二预测执行类型;
将所述第t个时段的多个系统性能数据输入所述第t个时段的候选模型,输出所述目标程序在所述第t个时段的第三预测执行类型;
根据所述目标程序在所述第t个时段的实际执行类型分别确定所述第二预测执行类型对应的第一预测准确度、和所述第三预测执行类型对应的第二预测准确度;
根据所述第一预测准确度和所述第二预测准确度确定所述第t个时段的预测模型。
可选的,确定单元42还用于:
若所述第一预测准确度和所述第二预测准确度满足第二预设条件,则将所述第一预测准确度和所述第二预测准确度中的最大值对应的模型确定为所述第t个时段的预测模型;
若所述第一预测准确度和所述第二预测准确度满足第三预设条件,则将所述第t个时段的候选模型确定为所述第t个时段的预测模型;
其中,所述第二预设条件为所述第一预测准确度和所述第二预测准确度均小于预设阈值,或者,所述第一预测准确度小于预设阈值、所述第二预测准确度大于预设阈值,或者,所述第一预测准确度大于预设阈值、所述第二预测准确度小于预设阈值;所述第三预设条件为所述第一预测准确度均大于预设阈值,且满足
Figure BDA0003220035290000141
所述accM表示所述第一预测准确度,所述accM′表示所述第二预测准确度,所述acc表示所述预设阈值,所述h为预设数值。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
另外,图4所示的程序运行控制装置可以是内置于现有的终端设备内的软件单元、硬件单元、或软硬结合的单元,也可以作为独立的挂件集成到所述终端设备中,还可以作为独立的终端设备存在。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图5是本申请实施例提供的终端设备的结构示意图。如图5所示,该实施例的终端设备5包括:至少一个处理器50(图5中仅示出一个)处理器、存储器51以及存储在所述存储器51中并可在所述至少一个处理器50上运行的计算机程序52,所述处理器50执行所述计算机程序52时实现上述任意各个程序运行控制方法实施例中的步骤。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,图5仅仅是终端设备5的举例,并不构成对终端设备5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器50可以是中央处理单元(Central Processing Unit,CPU),该处理器50还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器51在一些实施例中可以是所述终端设备5的内部存储单元,例如终端设备5的硬盘或内存。所述存储器51在另一些实施例中也可以是所述终端设备5的外部存储设备,例如所述终端设备5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器51还可以既包括所述终端设备5的内部存储单元也包括外部存储设备。所述存储器51用于存储操作系统、应用程序、引导装载程序(Boot Loader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

1.一种程序运行控制方法,其特征在于,所述方法包括:
统计目标系统在第t个时段内的系统性能数据,所述t为正整数;
根据第t-1个时段的预测模型和所述第t个时段的候选模型确定所述第t个时段的预测模型;
将所述第t个时段的系统性能数据输入所述第t个时段的预测模型,输出所述目标系统中的目标程序在所述第t+1个时段的第一预测执行类型;
根据所述目标程序在所述第t+1个时段的第一预测执行类型,控制第t+1个时段内所述目标程序的运行。
2.如权利要求1所述的程序运行控制方法,其特征在于,所述根据第t-1个时段的预测模型和所述第t个时段的候选模型确定所述第t个时段的预测模型,包括:
以所述第t个时段为基准进行分时段动态采样,获得第一样本;
根据所述第一样本对所述第t-1个时段的预测模型进行训练,得到所述第t个时段的候选模型;
根据所述第t-1个时段的预测模型和所述第t个时段的候选模型确定所述第t个时段的预测模型。
3.如权利要求2所述的程序运行控制方法,其特征在于,所述以所述第t个时段为基准进行分时段动态采样,获得第一样本,包括:
获取所述第t个时段之前的k个时段;
确定所述k个时段的每个时段中的采样次数;
根据所述采样次数从所述k个时段的每个时段中分别抽取Ni组系统性能数据,得到所述第一样本,其中,所述Ni表示第i个时段中的采样次数,i为整数,且0<i≤k。
4.如权利要求3所述的程序运行控制方法,其特征在于,所述确定所述k个时段的每个时段中的采样次数,包括:
若满足第一预设条件,则增加目标时段中的采样次数;
其中,所述第一预设条件为在所述第t个时段之前的连续L个时段内、预测模型均未改变;
所述目标时段为第j个时段,t-(M+1)Δt≤j<t,所述M为已增加采样次数的时段的个数,所述Δt为与预设时间长度。
5.如权利要求2所述的程序运行控制方法,其特征在于,所述根据所述第t-1个时段的预测模型和所述第t个时段的候选模型确定所述第t个时段的预测模型,包括:
将所述第t个时段的多个系统性能数据输入所述第t-1个时段的预测模型,输出所述目标程序在所述第t个时段的第二预测执行类型;
将所述第t个时段的多个系统性能数据输入所述第t个时段的候选模型,输出所述目标程序在所述第t个时段的第三预测执行类型;
根据所述目标程序在所述第t个时段的实际执行类型分别确定所述第二预测执行类型对应的第一预测准确度、和所述第三预测执行类型对应的第二预测准确度;
根据所述第一预测准确度和所述第二预测准确度确定所述第t个时段的预测模型。
6.如权利要求5所述的程序运行控制方法,其特征在于,所述根据所述第一预测准确度和所述第二预测准确度确定所述第t个时段的预测模型,包括:
若所述第一预测准确度和所述第二预测准确度满足第二预设条件,则将所述第一预测准确度和所述第二预测准确度中的最大值对应的模型确定为所述第t个时段的预测模型;
其中,所述第二预设条件为所述第一预测准确度和所述第二预测准确度均小于预设阈值,或者,所述第一预测准确度小于预设阈值、所述第二预测准确度大于预设阈值,或者,所述第一预测准确度大于预设阈值、所述第二预测准确度小于预设阈值。
7.如权利要求5所述的程序运行控制方法,其特征在于,所述根据所述第一预测准确度和所述第二预测准确度确定所述第t个时段的预测模型,包括:
若所述第一预测准确度和所述第二预测准确度满足第三预设条件,则将所述第t个时段的候选模型确定为所述第t个时段的预测模型;
所述第三预设条件为所述第一预测准确度均大于预设阈值,且满足
Figure FDA0003220035280000031
所述accM表示所述第一预测准确度,所述accM′表示所述第二预测准确度,所述acc表示所述预设阈值,所述h为预设数值。
8.一种程序运行控制装置,其特征在于,包括:
统计单元,用于统计目标系统在第t个时段内的系统性能数据,所述t为正整数;
确定单元,用于根据第t-1个时段的预测模型和所述第t个时段的候选模型确定所述第t个时段的预测模型;
预测单元,用于将所述第t个时段的系统性能数据输入所述第t个时段的预测模型,输出所述目标程序在所述第t+1个时段的第一预测执行类型;
控制单元,用于根据所述目标程序在所述第t+1个时段的第一预测执行类型,控制第t+1个时段内所述目标程序的运行。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。
CN202110955432.8A 2021-08-19 2021-08-19 程序运行控制方法、终端设备及计算机可读存储介质 Pending CN113641479A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110955432.8A CN113641479A (zh) 2021-08-19 2021-08-19 程序运行控制方法、终端设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110955432.8A CN113641479A (zh) 2021-08-19 2021-08-19 程序运行控制方法、终端设备及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN113641479A true CN113641479A (zh) 2021-11-12

Family

ID=78422901

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110955432.8A Pending CN113641479A (zh) 2021-08-19 2021-08-19 程序运行控制方法、终端设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN113641479A (zh)

Similar Documents

Publication Publication Date Title
US10642642B2 (en) Techniques to manage virtual classes for statistical tests
CN111309479B (zh) 一种任务并行处理的实现方法、装置、设备和介质
CN109272348B (zh) 活跃用户数量确定方法及装置、存储介质和电子设备
CN112527848B (zh) 基于多数据源的报表数据查询方法、装置、系统及存储介质
CN111459993A (zh) 基于行为分析的配置更新方法、装置、设备及存储介质
US9473572B2 (en) Selecting a target server for a workload with a lowest adjusted cost based on component values
CN111159515B (zh) 数据处理方法、装置及电子设备
CN116662876A (zh) 多模态认知决策方法、系统、装置、设备及存储介质
CN113641479A (zh) 程序运行控制方法、终端设备及计算机可读存储介质
CN113010288B (zh) 云资源的调度方法、装置及计算机存储介质
CN111369007B (zh) 一种人工智能模型上线的方法和装置
CN112131468A (zh) 推荐系统中的数据处理方法、装置
CN112579280A (zh) 云资源的调度方法、装置及计算机存储介质
CN115374188B (zh) 一种资源状态查询方法、装置、电子设备及存储介质
CN116501993B (zh) 房源数据推荐方法及装置
CN115392486A (zh) 任务处理方法、装置、电子设备及计算机可读存储介质
WO2022139615A1 (en) Method and apparatus for clustering time series data
CN117744312A (zh) 代理模型生成方法、装置、设备、存储介质及程序产品
CN117221250A (zh) 资源利用率的确定方法、装置和计算机设备
CN113435771A (zh) 一种业务评估方法、装置及设备
CN115905635A (zh) 核函数部署方法及装置、电子设备与存储介质
CN115510077A (zh) 基于消息传递的图数据更新方法、装置、设备及介质
CN117041665A (zh) 一种视频指标预测方法、装置、设备和存储介质
CN116450248A (zh) 基于组件的数据处理方法、装置、计算机设备及存储介质
CN116795771A (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