面向智能网联车场景的边缘计算系统性能测试方法、装置
未命名
08-02
阅读:95
评论:0

1.本发明涉及人工智能技术领域,尤其涉及一种面向智能网联车场景的边缘计算系统性能测试方法、装置。
背景技术:
2.智能网联车系统是一个智能化、互联化、自主化的系统。利用边缘设备适配智能网联车负载是一个非常复杂的过程,需要考虑到硬件平台的差异、软件环境的差异以及负载的算法和流程等因素。为边缘设备适配智能网联车负载会消耗大量时间。由于不同边缘设备存在硬件平台的差异、软件环境的差异、以及负载算法流程的复杂性,导致目前缺乏具有代表性、合理性、普遍性、可拓展性、高灵活性面向智能网联车场景的边缘计算系统基准测试方法。
3.首先,不同的边缘设备之间拥有不同的硬件架构平台和资源。这些硬件架构平台的性能和特性各不相同。因此,如果想要在每个边缘设备上运行相同的负载程序,就需要对这些程序进行针对性的优化和修改,以利用不同架构的特性及优势。这个过程需要针对每个边缘设备进行逐个测试和认知,从而确定程序在这个设备上的最佳运行策略。
4.其次,不同边缘设备之间的软件环境也有很大的不同,包括操作系统、库、api等方面的不同。这就导致相同的程序在不同的设备上具有不同的表现,需要进行不同程度的调整和修改。
5.此外,智能网联车需要使用多种算法进行感知、规划和控制操作,这些算法需要在边缘设备上运行,具有很大的计算复杂度。而且,在复杂的驾驶场景中进行自适应决策所需的计算时间可能会超出边缘设备的处理能力范围。这就导致开发人员需要不断地对算法进行优化,尝试找到最佳的算法适配方式,以达到高性能运行的目的。
6.在适配各个边缘设备时,开发人员需要对硬件平台和软件环境进行全面了解,并需要对负载程序进行不断修改和测试。然而,采用经典的算法直接作为基准测试的工作负载也许会导致重复和冗余测试情况的发生,增加评测成本。同时,运行一个全面的基准测试套件是很耗时的,现代工作负载的复杂软件堆栈加剧了这个问题,测量和评估硬件平台的压力增加。这就导致整个过程需要巨大的人力和时间成本。
7.另外,即使在给边缘设备适配完负载程序之后,也不一定能发挥平台的全部性能。这是因为在适配过程中,由于可能存在时间、内存、数据流、算子优化等各种限制因素,就可能导致负载程序不能在边缘设备上发挥最佳性能。
8.因此,针对上述智能网联车边缘设备负载适配的难题,设计一种面向智能网联车场景的边缘计算系统基准测试方法,以用于高效、便捷地在不同计算设备上进行适配和性能量化分析,是十分必要的。
技术实现要素:
9.针对现有技术的不足,本发明提出一种面向智能网联车场景的边缘计算系统性能
测试方法、装置,该方法实现了多种异构平台下,边缘设备上负载的精准适配及性能预测。
10.为了实现上述目的,本发明一方面提供一种面向智能网联车场景的边缘计算系统性能测试方法,包括:
11.获取智能网联车计算基准负载,每一个所述计算基准负载包含多个边缘计算单元;
12.从若干边缘计算单元中提取计算基准负载的多个关键计算单元,构成关键算子集合,所述关键算子集合内一个或多个关键计算单元的组合用于描述智能网联车工作负载;
13.基于所述关键算子集合构建待评测边缘计算系统的性能模型;
14.将所述性能模型送入目标平台进行执行,得到执行性能的预测。
15.可选的,将智能网联车计算基准负载拆分为由若干边缘计算单元构成的有向无环图,所述边缘计算单元表示智能网联车计算基准负载最小的可拆解单位。
16.可选的,将具有相似性或占据工作负载的大部分运行时间的部分边缘计算单元,提取为关键计算单元。
17.可选的,所述从若干边缘计算单元中提取计算基准负载的多个关键计算单元,构成关键算子集合,包括:
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.图1为本发明实施例提供的面向智能网联车场景的边缘计算系统性能测试方法的流程示意图;
43.图2为本发明的面向智能网联车场景的边缘计算系统性能测试装置的框架图;
44.图3为电子设备的结构示意图;
45.其中:
46.200-边缘计算系统性能测试装置;
47.201-获取模块;
48.202-关键算子集合构建模块;
49.203-性能测试模型构建模块;
50.204-执行模块;
51.300-电子设备;
52.301-处理器;
53.302-存储器。
具体实施方式
54.为让本发明的上述特征和效果能阐述的更明确易懂,下文特举实施例,并配合说明书附图作详细说明如下。
55.本发明针对智能网联车场景下的边缘设备,提出了一种面向智能网联车场景的边缘计算系统性能测试方法,旨在解决计算系统和计算负载的适配难题,在多种异构平台下,实现负载的精准适配及性能预测。
56.具体的,参考图1中所示,图1示出了该面向智能网联车场景的边缘计算系统性能测试方法的流程示意图;
57.一种面向智能网联车场景的边缘计算系统性能测试方法,包括:
58.s1、获取智能网联车计算基准负载,每一个所述计算基准负载包含多个边缘计算单元。
59.面对多样性和异构性的计算系统,如果对基准测试程序集进行全部适配,则存在组合爆炸的难题。因此,选定智能网联车场景下的经典程序用作基准评测的计算基准负载,将智能网联车计算基准负载拆分为由若干边缘计算单元构成的有向无环图,所述边缘计算单元表示智能网联车计算基准负载最小的可拆解单位。智能网联车场景主要包括视觉定位、目标检测与目标跟踪等场景。
60.s2、从若干边缘计算单元中提取计算基准负载的多个关键计算单元,构成关键算子集合,所述关键算子集合内一个或多个关键计算单元的组合用于描述智能网联车工作负载。
61.本实施例中,基准评测用的计算基准负载通过关键算子集合进行统一的抽象实现,而异构的待评测计算系统只需要提供关键算子集合中有限的算子支持,即可实现对整个基准测试程序集的性能评测。
62.对于关键计算单元,其为具有相似性或占据工作负载的大部分运行时间的部分边缘计算单元,将该部分边缘计算单元提取为关键计算单元。具体通过所述计算基准负载的特征空间极值点,使用自低向上的分析方式确定边缘计算单元的不同计算特征组合;同时,使用自顶向下的分析方式,对基准测试程序集进行负载特征分析,提取出满足基准复杂度的核心计算操作,作为所述关键计算单元;然后,利用所述不同计算特征组合,对所述关键计算单元进行归纳总结,构成所述计算基准负载的关键算子集合。
63.在具体实现中,可以通过perf和pytorch profiler对综合基准测试进行剖析,得到其计算依赖图和运行时间分解,能够对综合基准负载做出算子拆分。这样做不但明确了负载的核心算子与大致结构,同时也为后续性能量化分析提供前置条件。
64.s3、基于所述关键算子集合构建待评测边缘计算系统的性能模型;
65.本实施例中,根据所述计算基准负载的运行流程,生成程序依赖图;在选定关键算子集合后,具体根据所述关键算子集合,结合程序依赖图,模拟所述计算基准负载程序的运行流程,搭建待评测的边缘计算系统的性能模型,性能模型用于桥接基准测试程序和待评测的边缘计算系统。本实施例中,具体基于静态与动态分析结合的程序结构分析方法,确定计算基准负载程序的控制流,生成程序依赖图的方式,根据依赖图信息搭建负载的待评测的边缘计算系统的性能模型,进而可以根据算子的性能测试结果建模出基准负载的执行性能。其中,所述静态分析方法通过分析源码或通过算法自动分析程序的控制流;所述动态分
析方法利用程序执行期间的运行信息分析程序的控制流。在确定控制流之后,利用所述控制流计算每个所述关键计算单元执行时间和运行频率,并根据每个所述关键计算单元执行时间和运行频率、以及执行路径,确定所述性能模型的总执行时间。
66.本实施例中,通过分析程序的控制流,还可以分析代码区块之间的耦合和冗余,从而进一步提高程序性能,并降低其执行时间。
67.本发明中基于所述关键算子集合构建待评测边缘计算系统的性能模型,能够快速准确地定位关键路径和核心算子操作,发现负载中开销大的算子并对其进行优化;同时能够避免对负载的完全部署适配,极大幅度地缩短负载性能分析的时间。
68.s4、将所述性能模型送入目标平台进行执行,得到执行性能的预测。
69.下面以一具体示例对本发明的面向智能网联车场景的边缘计算系统性能测试方法的效果进行分析。
70.具体的,在智能网联车场景下,边缘设备主要的计算在于视觉定位、目标检测与目标跟踪。因此,选定orb-slam3、yolov5、ufld为基准测试程序,对其进行和核心算子抽象。其中,具体选用的计算基准负载列表如表1所示。
71.表1智能网联车场景测试负载一览
[0072][0073]
利用上述构建的性能模型,在cpu架构下进行了orb-slam3、yolov5及ufld的分析与预测,抽象出负载的核心计算单元,得到了负载的实际执行时间和使用算子抽象的预测时间开销。分析预测结果与实际结果对比如表2所示。
[0074]
表2x86 cpu上的运行时间和代码行数
[0075][0076]
如表2所示,x86 cpu的负载测试中,预测时间开销分别为实际执行时间的81.74%、80.3%、84.8%,差距均不超过实际执行时间的20%,一定程度上保证了模型的准确性。同时,预测模型代码行数分别为原始负载代码行数的35.28%、18.0%、7.82%,远低于原始负载代码行数,能大幅度地减少模型预测时的时间开销。
[0077]
因此,本发明大幅度减少了需要适配分析的负载个数,也能够从理论上覆盖特征空间,保证适配负载的代表性和可扩展性,极大幅度地缩短负载性能分析的时间,且获取了
更加精确全面的数据,便于后续对负载的适配及使用。
[0078]
综上,本发明提供的面向智能网联车场景的边缘计算系统性能测试方法,通过获取智能网联车计算基准负载,每一个所述计算基准负载包含多个边缘计算单元;然后,从若干边缘计算单元中提取计算基准负载的多个关键计算单元,构成关键算子集合;同时,基于所述关键算子集合构建待评测边缘计算系统的性能模型;在确定性能能模型之后,将所述性能模型送入目标平台进行执行,即可得到执行性能的预测。该方法能够避免对负载的完全部署适配,极大幅度地缩短负载性能分析的时间,实现了多种异构平台下,边缘设备负载的精准适配及性能预测。
[0079]
此外,本发明上述实施例可以应用于面向智能网联车场景的边缘计算系统性能测试方法功能的终端设备中,该终端设备可以包括边缘云平台等,本发明实施例对此不加以限制。
[0080]
参照图2,图2示出了一种面向智能网联车场景的边缘计算系统性能测试装置200,应用于面向智能网联车场景的边缘计算系统性能测试方法可应用于个人终端、以及上位机终端设备中,其可实现通过如图1所示的面向智能网联车场景的边缘计算系统性能测试方法,本技术实施例提供的面向智能网联车场景的边缘计算系统性能测试装置能够实现上述面向智能网联车场景的边缘计算系统性能测试方法实现的各个过程。
[0081]
一种面向智能网联车场景的边缘计算系统性能测试装置200,至少包括:
[0082]
获取模块201,用于获取智能网联车计算基准负载,每一个所述计算基准负载包含多个边缘计算单元;
[0083]
关键算子集合构建模块202,用于从若干边缘计算单元中提取计算基准负载的多个关键计算单元,构成关键算子集合,所述关键算子集合内一个或多个关键计算单元的组合用于描述智能网联车工作负载;
[0084]
性能测试模型构建模块203,用于基于所述关键算子集合构建待评测边缘计算系统的性能模型;
[0085]
执行模块204,用于将所述性能模型送入目标平台进行执行,得到执行性能的预测。
[0086]
可选的,所述关键算子集合构建模块202,还用于:
[0087]
通过所述计算基准负载的特征空间极值点,使用自低向上的分析方式确定边缘计算单元的不同计算特征组合;
[0088]
使用自顶向下的分析方式,对基准测试程序集进行负载特征分析,提取出满足基准复杂度的核心计算操作,作为所述关键计算单元;
[0089]
利用所述不同计算特征组合,对所述关键计算单元进行汇总,构成所述计算基准负载的关键算子集合。
[0090]
可选的,所述性能测试模型构建模块203还用于:
[0091]
根据所述计算基准负载的运行流程,生成程序依赖图;
[0092]
根据所述程序依赖图信息,结合所述关键算子集合,模拟所述计算基准负载程序的运行流程,搭建待评测的边缘计算系统的性能模型。
[0093]
本实施例提供的面向智能网联车场景的边缘计算系统性能测试装置200,能够避免对负载的完全部署适配,极大幅度地缩短负载性能分析的时间,实现了多种异构平台下,
边缘设备负载的精准适配及性能预测。
[0094]
应当理解,对面向智能网联车场景的边缘计算系统性能测试方法的各描述同样适用于根据本技术实施例的面向智能网联车场景的边缘计算系统性能测试装置200,为避免重复,不再详细描述。
[0095]
此外,应当理解,在根据本技术实施例的面向智能网联车场景的边缘计算系统性能测试装置200中,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即面向智能网联车场景的边缘计算系统性能测试装置可划分为与上述例示出的模块不同的功能模块,以完成以上描述的全部或者部分功能。
[0096]
图3是本技术实施例提供的电子设备的结构示意图。
[0097]
如图3中所示,本技术实施例还提供了一种电子设备300,包括处理器301,存储器302,存储在存储器302上并可在所述处理器301上运行的程序或指令,该程序或指令被处理器301执行时实现上述面向智能网联车场景的边缘计算系统性能测试方法的步骤,且能达到相同的技术效果。
[0098]
需要注意的是,本技术实施例中的电子设备可包括移动电子设备和非移动电子设备。
[0099]
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccess memory,ram)、磁碟或者光盘等。
[0100]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本技术实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以施加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
[0101]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本技术各个实施例所述的方法。
[0102]
上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。
技术特征:
1.一种面向智能网联车场景的边缘计算系统性能测试方法,其特征在于,包括:获取智能网联车计算基准负载,每一个所述计算基准负载包含多个边缘计算单元;从若干边缘计算单元中提取计算基准负载的多个关键计算单元,构成关键算子集合,所述关键算子集合内一个或多个关键计算单元的组合用于描述智能网联车工作负载;基于所述关键算子集合构建待评测边缘计算系统的性能模型;将所述性能模型送入目标平台进行执行,得到执行性能的预测。2.根据权利要求1所述的方法,其特征在于,将智能网联车计算基准负载拆分为由若干边缘计算单元构成的有向无环图,所述边缘计算单元表示智能网联车计算基准负载最小的可拆解单位。3.根据权利要求1所述的方法,其特征在于,将具有相似性或占据工作负载的大部分运行时间的部分边缘计算单元,提取为关键计算单元。4.根据权利要求3所述的方法,其特征在于,所述从若干边缘计算单元中提取计算基准负载的多个关键计算单元,构成关键算子集合,包括:通过所述计算基准负载的特征空间极值点,使用自低向上的分析方式确定边缘计算单元的不同计算特征组合;使用自顶向下的分析方式,对基准测试程序集进行负载特征分析,提取出满足基准复杂度的核心计算操作,作为所述关键计算单元;利用所述不同计算特征组合,对所述关键计算单元进行汇总,构成所述计算基准负载的关键算子集合。5.根据权利要求4所述的方法,其特征在于,所述基于所述关键算子集合构建待评测边缘计算系统的性能模型,包括:根据所述计算基准负载的运行流程,生成程序依赖图;根据所述程序依赖图信息,结合所述关键算子集合,模拟所述计算基准负载的运行流程,搭建待评测的边缘计算系统的性能模型。6.根据权利要求5所述的方法,其特征在于,基于静态与动态分析结合的程序结构分析方法,确定所述计算基准负载程序的控制流,生成程序依赖图;所述静态分析方法通过分析源码或通过算法自动分析程序的控制流;所述动态分析方法利用程序执行期间的运行信息分析程序的控制流。7.根据权利要求6所述的方法,其特征在于,利用所述控制流计算每个所述关键计算单元执行时间和运行频率,并根据每个所述关键计算单元执行时间和运行频率、以及执行路径,确定所述性能模型的总执行时间。8.一种面向智能网联车场景的边缘计算系统性能测试装置,其特征在于,采用权利要求1-7任一项所述的面向智能网联车场景的边缘计算系统性能测试方法,所述装置包括:获取模块,用于获取智能网联车计算基准负载,每一个所述计算基准负载包含多个边缘计算单元;关键算子集合构建模块,用于从若干边缘计算单元中提取计算基准负载的多个关键计算单元,构成关键算子集合,所述关键算子集合内一个或多个关键计算单元的组合用于描
述智能网联车工作负载;性能测试模型构建模块,用于基于所述关键算子集合构建待评测边缘计算系统的性能模型;执行模块,用于将所述性能模型送入目标平台进行执行,得到执行性能的预测。9.根据权利要求8所述的装置,其特征在于,所述关键算子集合构建模块,还用于:通过所述计算基准负载的特征空间极值点,使用自低向上的分析方式确定边缘计算单元的不同计算特征组合;使用自顶向下的分析方式,对基准测试程序集进行负载特征分析,提取出满足基准复杂度的核心计算操作,作为所述关键计算单元;利用所述不同计算特征组合,对所述关键计算单元进行汇总,构成所述计算基准负载的关键算子集合。10.根据权利要求8所述的装置,其特征在于,所述性能测试模型构建模块还用于:根据所述计算基准负载的运行流程,生成程序依赖图;根据所述程序依赖图信息,结合所述关键算子集合,模拟所述计算基准负载程序的运行流程,搭建待评测的边缘计算系统的性能模型。
技术总结
本发明提出一种面向智能网联车场景的边缘计算系统性能测试方法、装置,所述方法包括:获取智能网联车计算基准负载,每一个所述计算基准负载包含多个边缘计算单元;从若干边缘计算单元中提取计算基准负载的多个关键计算单元,构成关键算子集合,所述关键算子集合内一个或多个关键计算单元的组合用于描述智能网联车工作负载;基于所述关键算子集合构建待评测边缘计算系统的性能模型;将所述性能模型送入目标平台进行执行,得到执行性能的预测。该方法实现了多种异构平台下,边缘设备上负载的精准适配及性能预测。精准适配及性能预测。精准适配及性能预测。
技术研发人员:王一帆 陈西子 石奇松 彭晓晖
受保护的技术使用者:中国科学院计算技术研究所
技术研发日:2023.03.30
技术公布日:2023/8/1
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/