仿真任务完成时间的预测方法、装置、设备和存储介质与流程

文档序号:33713999发布日期:2023-04-01 03:12阅读:70来源:国知局
仿真任务完成时间的预测方法、装置、设备和存储介质与流程

1.本技术涉及数据处理技术领域,尤其涉及一种仿真任务完成时间的预测方法、装置、设备和存储介质。


背景技术:

2.自动驾驶场景下,分布式模拟仿真平台每天都会接收大量的仿真任务进行模拟仿真,由于机器算力有限、硬件、软件资源的偶发问题以及仿真平台对不同类型任务调度策略的不同等原因,均会造成仿真任务完成时间的不确定性,降低了整体工程师的开发和试验效率。而准确预测仿真任务的完成时间可以更好地评估当前仿真任务是否合理,并且有助于提高分布式模拟仿真平台的总体任务的调度。
3.现有技术根据历史信息统计出每个任务的完成时间,然后针对每个任务当前在模拟仿真平台的排队情况,使用简单的之前的排队任务数*任务完成时间预估任务的完成时间。该方法并不能很好的应对分布式场景,分布式场景中不只有一条队列,而且每条队列中每个不同的任务所会分到的资源情况也是未知的,导致该方法在分布式场景中预测任务完成时间的准确性不高。


技术实现要素:

4.本技术提供了一种仿真任务完成时间的预测方法、装置、设备和存储介质,用于改善现有技术在分布式场景中预测任务完成时间的准确性不高的技术问题。
5.有鉴于此,本技术第一方面提供了一种仿真任务完成时间的预测方法,包括:
6.实时获取分布式模拟仿真平台当前的仿真任务的属性信息,所述属性信息包括任务属性和分布式模拟仿真平台属性;
7.将所述仿真任务在当前时刻的属性信息和上一时刻的属性信息输入到预置预测模型中进行完成时间预测,得到所述仿真任务在当前时刻的预测完成时间。
8.可选的,所述任务属性包括任务数量、任务大小、任务类型、任务优先级、任务复杂度、相同类型任务的历史使用资源量和/或历史完成时间;
9.其中,所述任务复杂度根据任务参数量、任务类型和/或任务占用内存情况确定。
10.可选的,所述分布式模拟仿真平台属性包括硬件资源属性和/或分布式场景并行属性;
11.所述硬件资源属性包括硬盘大小、吞吐量和/或网络带宽;
12.所述分布式场景并行属性包括所述分布式模拟仿真平台在最高负荷下的并行度、当前负荷下的并行度和/或所述仿真任务对应类型任务的并行度。
13.可选的,所述预置预测模型的训练过程为:
14.获取所述分布式模拟仿真平台上历史仿真任务在各历史时刻的属性信息,得到所述历史仿真任务的时间序列信息;
15.基于滑动窗口方式对所述时间序列信息进行处理,得到所述历史仿真任务的特征
信息;
16.以所述历史仿真任务的特征信息为输入数据,所述历史仿真任务的实际完成时间为训练目标训练深度卷积神经网络,得到所述预置预测模型。
17.可选的,所述历史仿真任务的特征信息包括所述历史仿真任务在历史时刻t的属性信息和上一历史时刻t-1的属性信息,t》0;
18.当历史时刻t=1时,将上一历史时刻t=0的属性信息设置为预置数值,或,根据所有所述仿真任务的属性信息确定属性区间,在所述属性区间随机生成上一历史时刻t=0的属性信息。
19.本技术第二方面提供了一种仿真任务完成时间的预测装置,包括:
20.获取单元,用于实时获取分布式模拟仿真平台当前的仿真任务的属性信息,所述属性信息包括任务属性和分布式模拟仿真平台属性;
21.预测单元,用于将所述仿真任务在当前时刻的属性信息和上一时刻的属性信息输入到预置预测模型中进行完成时间预测,得到所述仿真任务在当前时刻的预测完成时间。
22.可选的,所述任务属性包括任务数量、任务大小、任务类型、任务优先级、任务复杂度、相同类型任务的历史使用资源量和/或历史完成时间;所述分布式模拟仿真平台属性包括硬盘大小、吞吐量和/或网络带宽;其中,所述任务复杂度根据任务参数量、任务类型和/或任务占用内存情况确定;
23.所述分布式模拟仿真平台属性包括硬件资源属性和/或分布式场景并行属性;所述硬件资源属性包括硬盘大小、吞吐量和/或网络带宽;所述分布式场景并行属性包括所述分布式模拟仿真平台在最高负荷下的并行度、当前负荷下的并行度和/或所述仿真任务对应类型任务的并行度。
24.可选的,所述预置预测模型的训练过程为:
25.获取所述分布式模拟仿真平台上历史仿真任务在各历史时刻的属性信息,得到所述历史仿真任务的时间序列信息;
26.基于滑动窗口方式对所述时间序列信息进行处理,得到所述历史仿真任务的特征信息;
27.以所述历史仿真任务的特征信息为输入数据,所述历史仿真任务的实际完成时间为训练目标训练深度卷积神经网络,得到所述预置预测模型。
28.本技术第三方面提供了一种仿真任务完成时间的预测设备,所述设备包括处理器以及存储器;
29.所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
30.所述处理器用于根据所述程序代码中的指令执行第一方面任一种所述的仿真任务完成时间的预测方法。
31.本技术第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码被处理器执行时实现第一方面任一种所述的仿真任务完成时间的预测方法。
32.从以上技术方案可以看出,本技术具有以下优点:
33.本技术提供了一种仿真任务完成时间的预测方法,包括:实时获取分布式模拟仿真平台当前的仿真任务的属性信息,属性信息包括任务属性和分布式模拟仿真平台属性;
将仿真任务在当前时刻的属性信息和上一时刻的属性信息输入到预置预测模型中进行完成时间预测,得到仿真任务在当前时刻的预测完成时间。
34.本技术考虑到,仿真任务在分布式模拟仿真平台是处于不同队列的,也就意味着仿真任务之间存在一个时间序列的关系,因此,本技术实时获取仿真任务在各时刻的属性信息,包括任务本身的属性和分布式模拟仿真平台的属性,并将仿真任务在当前时刻的属性信息和上一时刻的属性信息一起输入到预置预测模型中预测其在当前时刻的预计完成时间,预测时将仿真任务的固有属性、时间序列关系以及分布式场景的并行都纳入了考虑,从而可以更准确地预测仿真任务的完成时间,改善了现有技术在分布式场景中预测任务完成时间的准确性不高的技术问题。
附图说明
35.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
36.图1为本技术实施例提供的一种仿真任务完成时间的预测方法的一个流程示意图;
37.图2为本技术实施例提供的一种预置预测模型的一个结构示意图;
38.图3为本技术实施例提供的一种仿真任务完成时间的预测装置的一个结构示意图。
具体实施方式
39.本技术提供了一种仿真任务完成时间的预测方法、装置、设备和存储介质,用于改善现有技术在分布式场景中预测任务完成时间的准确性不高的技术问题。
40.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
41.为了便于理解,请参阅图1,本技术实施例提供了一种仿真任务完成时间的预测方法,包括:
42.步骤101、实时获取分布式模拟仿真平台当前的仿真任务的属性信息,属性信息包括任务属性和分布式模拟仿真平台属性。
43.本技术考虑到,若采用简单的有监督学习方法,将仿真任务的本身属性(如任务数量、任务大小等)和分布式模拟仿真平台的硬件资源作为输入,来预测每个仿真任务的预计完成时间,然后进行有监督学习训练,获取到一个简单模型来对未完成的任务进行完成时间预测。该方法是基于不同任务之间是相互不影响的假设来训练模型和预测完成时间的,对于高并发场景没有很好的考虑,导致预测效果不理想。
44.由于仿真任务本身在分布式模拟仿真平台是处于不同队列的,也就是说,仿真任务之间是存在一个时间序列的关系的(包括仿真任务本身的开始时间和结束时间两种不同
的时间序列),因此,本技术实时获取分布式模拟仿真平台当前的未执行完的各仿真任务的属性信息,属性信息包括任务属性和分布式模拟仿真平台属性。其中,任务属性可以包括任务数量、任务大小、任务类型、任务优先级、任务复杂度、相同类型任务的历史使用资源量和/或历史完成时间等,任务复杂度可以根据任务参数量、任务类型和/或任务占用内存情况确定;分布式模拟仿真平台属性可以包括硬件资源属性、分布式场景并行属性等,硬件资源属性包括硬盘大小、吞吐量和/或网络带宽等,分布式场景并行属性包括分布式模拟仿真平台在最高负荷下的并行度(即在最高负荷下并行执行仿真任务的最大任务数量)、当前负荷下的并行度(即在当前负荷下并行执行仿真任务的任务数量)和/或仿真任务对应类型任务的并行度,从而将分布式场景的并行也纳入了考虑。
45.步骤102、将仿真任务在当前时刻的属性信息和上一时刻的属性信息输入到预置预测模型中进行完成时间预测,得到仿真任务在当前时刻的预测完成时间。
46.在获取到分布式模拟仿真平台当前的仿真任务的属性信息后,将各仿真任务在上一时刻t-1的属性信息和当前时刻t的属性信息一起输入到预置预测模型中预测各仿真任务在当前时刻t的预计完成时间,从而得到各仿真任务在当前时刻t的预测完成时间。由于本技术是实时获取分布式模拟仿真平台当前未执行完的仿真任务的属性信息并实时预测仿真任务的完成时间,因此在预测t时刻的仿真任务的完成时间时,上一时刻t-1的仿真任务的属性信息在上一时刻t-1进行完成时间预测时就已经获取到了,即在当前时刻t时,上一时刻t-1的仿真任务的属性信息为已知信息。若当前时刻t为初始时刻(即t=1),即在实际预测时不存在预测上一时刻t=0的仿真任务的完成时间,也就没有上一时刻t=0的仿真任务的属性信息,此时可以给仿真任务在上一时刻t=0的属性信息设置一个初始值。具体的,可以将仿真任务在上一时刻t=0的属性信息设置为0,或者,基于整体数据的分布给仿真任务在上一时刻t=0的属性信息设置一个随机值作为初始值。
47.采用上述过程可以预测当前未执行完的各仿真任务在当前时刻的预计完成时间,如果分布式模拟仿真平台的软硬件发生问题,则仿真任务的实际完成时间和预测得到的预计完成时间会有较大差异,此时可以通过计算仿真任务的实际完成时间和预计完成时间的差值来对分布式模拟仿真平台的软硬件问题进行监控和排查。
48.进一步,本技术实施例中的预置预测模型的训练过程可以为:
49.获取分布式模拟仿真平台上历史仿真任务在各历史时刻的属性信息,得到历史仿真任务的时间序列信息;
50.基于滑动窗口方式对时间序列信息进行处理,得到历史仿真任务的特征信息;
51.以历史仿真任务的特征信息为输入数据,历史仿真任务的实际完成时间为训练目标训练深度卷积神经网络,得到预置预测模型。
52.本技术实施例中,在获取到分布式模拟仿真平台上历史仿真任务在各历史时刻的属性信息后,可以按时间顺序进行排序,生成历史仿真任务的时间序列信息,还可以获取各历史仿真任务的实际完成时间,得到原始数据集。本技术实施例中的原始数据集的数据格式可以参考表1。
53.表1原始数据集的数据格式
[0054][0055][0056]
t表示时刻,features表示对应时刻的属性信息,包括任务属性(任务数量、任务大小、任务类型、任务优先级、任务复杂度、相同类型任务的历史使用资源量、历史完成时间(可以是历史完成时间的平均数、中位数)等)和分布式模拟仿真平台属性(包括硬件资源属性,如硬盘大小,吞吐量、网络带宽等,以及分布式场景并行属性,如分布式模拟仿真平台在最高负荷下的并行度、当前负荷下的并行度、仿真任务对应类型任务的并行度等),y为实际完成时间。
[0057]
可以基于滑动窗口方式对时间序列信息进行处理,得到历史仿真任务的特征信息。在获取到上述的原始数据集后,可以基于时间滑动窗口方式对原始数据集中的数据进行滑动窗口处理,得到新的数据集,新的数据集的数据格式可以参考表2。
[0058]
表2新的数据集的数据格式
[0059]
feature(t-1)feature(t)y [f
1_1
,f
1_2
,f
1_3
...,f
1_n
]y1[f
1_1
,f
1_2
,f
1_3
...,f
1_n
][f
2_1
,f
2_2
,f
2_3
...,f
2_n
]y2.........[f
m-1_1
,f
m-1_2
,f
m-1_3
...,f
m-1_n
][f
m_1
,f
m_2
,f
m_3
...,f
m_n
]ym[0060]
其中,历史仿真任务的特征信息包括历史仿真任务在历史时刻t的属性信息和上一历史时刻t-1的属性信息,t》0;当历史时刻t=1时,将上一历史时刻t=0的属性信息设置为预置数值,或,根据所有仿真任务的属性信息确定属性区间,在属性区间随机生成上一历史时刻t=0的属性信息。
[0061]
通过上述表1可知,第一行数据的时刻t=1,通过对原始数据集中的数据进行滑窗处理,得到新的数据集后,因为时刻t=1的数据没有上一时刻t=0的数据,在新的数据集中会缺少对于时刻t=1的数据的预测(即在新的数据集中,是从时刻t=2的数据开始进行预测的),在大规模的数据集的情况下,这个数据缺失是可以接受的,也可以将时刻t=1的上一时刻t=0的feature(0)设置一个初始值。具体的,可以将时刻t=0的feature(0)全部设置为0,或者,基于整体数据的分布给时刻t=0的feature(0)设置一个随机值。
[0062]
本技术实施例中的深度卷积神经网络可以采用三层的卷积神经网络结构,当然也可以采用其他的现有深度卷积神经网络。三层的卷积神经网络结构如图2所示,该卷积神经网络包括两个输入层、三个隐藏层和一个输出层,两个输入层分别用于输入上一时刻t-1的属性信息和时刻t和属性信息,隐藏层用于基于输入的属性信息进行特征提取,输出层用于输出各仿真任务的预计完成时间。通过上述滑动窗口处理后得到的新的数据集训练该深度卷积神经网络,输出每个历史仿真任务的预计完成时间,然后基于各历史仿真任务的预计
完成时间和对应的实际完成时间计算损失值,通过损失值反向迭代更新深度卷积神经网络的网络参数,直至网络收敛(如达到最大迭代次数或训练误差低于预置误差阈值等),得到训练好的深度卷积神经网络,将训练好的深度卷积神经网络作为预置预测模型,通过输入各仿真任务在上一时刻的属性信息和当前时刻的属性信息至预置预测模型,预测各仿真任务在当前时刻的预计完成时间。
[0063]
本技术实施例考虑到,仿真任务在分布式模拟仿真平台是处于不同队列的,也就意味着仿真任务之间存在一个时间序列的关系,因此,本技术实时获取仿真任务在各时刻的属性信息,包括任务本身的属性和分布式模拟仿真平台的属性,并将仿真任务在当前时刻的属性信息和上一时刻的属性信息一起输入到预置预测模型中预测其在当前时刻的预计完成时间,预测时将仿真任务的固有属性、时间序列关系以及分布式场景的并行都纳入了考虑,从而可以更准确地预测仿真任务的完成时间,改善了现有技术在分布式场景中预测任务完成时间的准确性不高的技术问题。
[0064]
以上为本技术提供的一种仿真任务完成时间的预测方法的一个实施例,以下为本技术提供的一种仿真任务完成时间的预测装置的一个实施例。
[0065]
请参考图3,本技术实施例提供的一种仿真任务完成时间的预测装置,包括:
[0066]
获取单元,用于实时获取分布式模拟仿真平台当前的仿真任务的属性信息,属性信息包括任务属性和分布式模拟仿真平台属性;
[0067]
预测单元,用于将仿真任务在当前时刻的属性信息和上一时刻的属性信息输入到预置预测模型中进行完成时间预测,得到仿真任务在当前时刻的预测完成时间。
[0068]
作为进一步地改进,任务属性包括任务数量、任务大小、任务类型、任务优先级、任务复杂度、相同类型任务的历史使用资源量和/或历史完成时间;分布式模拟仿真平台属性包括硬盘大小、吞吐量和/或网络带宽;其中,任务复杂度根据任务参数量、任务类型和/或任务占用内存情况确定;
[0069]
分布式模拟仿真平台属性包括硬件资源属性和/或分布式场景并行属性;硬件资源属性包括硬盘大小、吞吐量和/或网络带宽;分布式场景并行属性包括分布式模拟仿真平台在最高负荷下的并行度、当前负荷下的并行度和/或仿真任务对应类型任务的并行度。
[0070]
作为进一步地改进,预置预测模型的训练过程为:
[0071]
获取分布式模拟仿真平台上历史仿真任务在各历史时刻的属性信息,得到历史仿真任务的时间序列信息;
[0072]
基于滑动窗口方式对时间序列信息进行处理,得到历史仿真任务的特征信息;
[0073]
以历史仿真任务的特征信息为输入数据,历史仿真任务的实际完成时间为训练目标训练深度卷积神经网络,得到预置预测模型。
[0074]
本技术实施例考虑到,仿真任务在分布式模拟仿真平台是处于不同队列的,也就意味着仿真任务之间存在一个时间序列的关系,因此,本技术实时获取仿真任务在各时刻的属性信息,包括任务本身的属性和分布式模拟仿真平台的属性,并将仿真任务在当前时刻的属性信息和上一时刻的属性信息一起输入到预置预测模型中预测其在当前时刻的预计完成时间,预测时将仿真任务的固有属性、时间序列关系以及分布式场景的并行都纳入了考虑,从而可以更准确地预测仿真任务的完成时间,改善了现有技术在分布式场景中预测任务完成时间的准确性不高的技术问题。
[0075]
本技术实施例还提供了一种仿真任务完成时间的预测设备,设备包括处理器以及存储器;
[0076]
存储器用于存储程序代码,并将程序代码传输给处理器;
[0077]
处理器用于根据程序代码中的指令执行前述方法实施例中的仿真任务完成时间的预测方法。
[0078]
本技术实施例还提供了一种计算机可读存储介质,计算机可读存储介质用于存储程序代码,程序代码被处理器执行时实现前述方法实施例中的仿真任务完成时间的预测方法。
[0079]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0080]
本技术的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0081]
应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
[0082]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0083]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0084]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0085]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上
或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以通过一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文全称:read-only memory,英文缩写:rom)、随机存取存储器(英文全称:randomaccess memory,英文缩写:ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0086]
以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1