一种面向芯片验证回归的资源调度方法及相关装置与流程

摘要: 本技术涉及芯片验证,特别是涉及一种面向芯片验证回归的资源调度方法及相关装置。背景技术:1、随着集成电路规模的持续增长,芯片验证(chipverification...
一种面向芯片验证回归的资源调度方法及相关装置与流程

本技术涉及芯片验证,特别是涉及一种面向芯片验证回归的资源调度方法及相关装置。

背景技术:

1、随着集成电路规模的持续增长,芯片验证(chip verification)在整个芯片研发周期中所占的工作量比例不断攀升。

2、为了确认设计功能的正确性,验证团队需要执行大量的验证回归(verificationregression),即按照预先定义的回归集合批量运行仿真调度任务,并对仿真结果进行汇总与统计。

3、验证回归通常包含成百上千个仿真调度任务,这些调度任务需要提交到计算集群的调度后端上运行。调度后端按照队列(queue)、槽位(slot)以及内存等资源的申请信息对调度任务进行排队与调度。

4、目前,调度任务的资源申请信息仅在调度任务提交时使用一次,提交之后即散落在提交脚本或调度后端的临时记录中,验证平台侧缺乏持久化、可检索的申请基准;而调度后端返回的调度观测数据中并不包含当初的申请值,导致资源申请信息与运行观测相互分离。进而,由于缺乏统一的比较基准,无法自动判定调度任务实际消耗的资源是否偏离其申请的资源,内存超申请、内存严重欠申请以及运行超时等资源异常难以被及时发现。

5、由此,如何自动判定调度任务实际消耗的资源是否偏离其申请的资源,成为需要解决的问题。

技术实现思路

1、基于上述问题,本技术提供了一种面向芯片验证回归的资源调度方法及相关装置,能够自动判定调度任务实际消耗的资源是否偏离其申请的资源。

2、本技术实施例公开了如下技术方案:

3、第一方面,本技术实施例提供了一种面向芯片验证回归的资源调度方法,所述方法包括:

4、基于提交调度任务后返回的目标外部作业标识,接收所述调度任务的调度观测数据;所述调度观测数据至少包括实际内存用量以及实际运行时间;

5、基于所述目标外部作业标识,以及外部作业标识与调度任务对应的内部调度任务标识之间的对应关系,确定目标内部调度任务标识;

6、基于所述目标内部调度任务标识,确定所述调度任务对应的资源契约;所述资源契约至少包括所述调度任务的申请内存与最长运行时间;

7、比较所述资源契约与所述调度观测数据,得到第一资源异常结果。

8、可选地,所述基于提交调度任务后返回的目标外部作业标识,接收所述调度任务的调度观测数据之前,所述方法还包括:

9、接收回归请求;所述回归请求至少包括回归标识、目标队列、槽位数、申请内存、最长运行时间以及验证参数;

10、基于所述回归请求以及系统配置信息,生成资源契约;所述资源契约至少包括调度任务名称、所述目标队列、所述槽位数、所述申请内存、所述最长运行时间、日志路径以及扩展元数据;

11、创建调度任务并将资源契约持久化存储;所述调度任务配置有内部调度任务标识,所述资源契约至少包括申请内存与最长运行时间。

12、可选地,所述基于提交调度任务后返回的目标外部作业标识,接收所述调度任务的调度观测数据之前,所述方法还包括:

13、通过统一调度适配接口定义的提交操作提交调度任务;

14、所述基于提交调度任务后返回的目标外部作业标识,接收所述调度任务的调度观测数据,包括:

15、通过所述统一调度适配接口定义的查询操作,基于提交调度任务后返回的目标外部作业标识周期性查询所述调度任务的原始调度观测;将所述原始调度观测归一化为统一调度观测;

16、或,通过所述统一调度适配接口定义的查询操作,基于提交调度任务后返回的目标外部作业标识周期性查询所述调度任务对应的与所述统一调度观测同构的模拟调度观测;

17、所述原始调度观测至少包括调度后端使用的原始状态码、调度后端本地内存单位表示的原始内存值、以及原始cpu时间;所述统一调度观测至少包括统一状态码、统一内存值以及统一cpu利用率。

18、可选地,所述通过统一调度适配接口定义的提交操作提交调度任务,包括:

19、通过统一调度适配接口定义的提交操作,将调度任务提交至调度后端;

20、或,通过统一调度适配接口定义的提交操作,将调度任务提交至确定性模拟后端。

21、可选地,所述基于提交调度任务后返回的目标外部作业标识,接收所述调度任务的调度观测数据之后,所述方法还包括:

22、构建所述调度任务的调度任务画像键;具有相同资源申请规模的同类调度任务归入同一调度任务画像键;

23、基于历史采样记录中与所述调度任务具有相同调度任务画像键的同类调度任务对应的多个有效样本,确定滑动窗口;

24、基于所述滑动窗口以及所述有效样本,计算所述调度任务的动态统计基线、动态上界以及动态下界;

25、比较当前指标与所述动态统计基线、所述动态上界以及所述动态下界,得到第二资源异常结果;

26、所述比较所述资源契约与所述调度观测数据,得到第一资源异常结果之后,所述方法还包括:

27、基于所述第一资源异常结果和所述第二资源异常结果,确定所述调度任务是否存在资源异常。

28、可选地,所述比较所述动态统计基线、所述动态上界以及所述动态下界,得到第二资源异常结果,包括:

29、若所述调度任务的实际状态满足预设的规则适用状态、所述动态统计基线越出所述动态上界或所述动态下界的总次数大于预设的次数阈值、且所述实际运行时间与所述最长运行时间的差值绝对值大于预设宽限期,则得到指示所述调度任务存在资源异常的第二资源异常结果。

30、可选地,所述比较所述资源契约与所述调度观测数据,得到第一资源异常结果之后,所述方法还包括:

31、基于所述第一资源异常结果,确定所述调度任务是否存在资源异常;

32、若所述调度任务存在资源异常,则基于所述调度任务的内部调度任务标识与所述调度任务对应的异常规则的标识构造目标告警键;

33、若告警仓储中存在告警状态为开放、且告警键为所述目标告警键的告警记录,则更新所述告警记录的调度观测数据、所述异常规则对应的判定阈值以及更新时间。

34、可选地,所述比较所述资源契约与所述调度观测数据,得到第一资源异常结果之后,所述方法还包括:

35、基于所述第一资源异常结果确定所述调度任务是否存在资源异常;

36、若所述调度任务存在资源异常,则基于所述调度任务对应的开放告警,确定所述开放告警的处置指令;所述处置指令至少携带发起处置的具名操作人;

37、持久化记录所述处置指令的处置结果、所述具名操作人以及操作时间。

38、可选地,所述比较所述资源契约与所述调度观测数据,得到第一资源异常结果之后,所述方法还包括:

39、以所述调度任务的目标内部调度任务标识以及所述调度观测数据对应的采样时间戳为关联键,建立验证指标的变化趋势、资源用量时间序列、槽位变化、申请资源以及历史资源异常在同一数据基础上的关联查询。

40、第二方面,本技术实施例提供了一种面向芯片验证回归的资源调度装置,所述装置包括:

41、接收模块,用于基于提交调度任务后返回的目标外部作业标识,接收所述调度任务的调度观测数据;所述调度观测数据至少包括实际内存用量以及实际运行时间;

42、第一确定模块,用于基于所述目标外部作业标识,以及外部作业标识与调度任务对应的内部调度任务标识之间的对应关系,确定目标内部调度任务标识;

43、第二确定模块,用于基于所述目标内部调度任务标识,确定所述调度任务对应的资源契约;所述资源契约至少包括所述调度任务的申请内存与最长运行时间;

44、第一异常检测模块,用于比较所述资源契约与所述调度观测数据,得到第一资源异常结果。

45、相较于现有技术,本技术具有以下有益效果:

46、本技术实施例提供了一种面向芯片验证回归的资源调度方法,该方法中,首先,基于提交调度任务后返回的目标外部作业标识,接收所述调度任务的调度观测数据;所述调度观测数据至少包括实际内存用量以及实际运行时间;而后,基于所述目标外部作业标识,以及外部作业标识与调度任务对应的内部调度任务标识之间的对应关系,确定目标内部调度任务标识;继而,基于所述目标内部调度任务标识,确定所述调度任务对应的资源契约;所述资源契约至少包括所述调度任务的申请内存与最长运行时间;最后,比较所述资源契约与所述调度观测数据,得到第一资源异常结果。

47、由此,通过外部作业标识与内部调度任务标识之间的一一对应关系,将调度后端侧的运行观测与平台侧的调度任务实体重新关联,并以调度任务创建时持久化且版本不可变的资源契约为比较基准,把调度任务申请值、实际用量和验证上下文关联到同一调度任务记录,从而实现自动判定实际消耗的资源是否偏离申请的资源,无需跨系统人工对照,解决了资源申请与观测分离的问题。