CN117710449A - 基于numa的实时位姿视频测量流水线模型优化方法 - Google Patents
基于numa的实时位姿视频测量流水线模型优化方法 Download PDFInfo
- Publication number
- CN117710449A CN117710449A CN202410160185.6A CN202410160185A CN117710449A CN 117710449 A CN117710449 A CN 117710449A CN 202410160185 A CN202410160185 A CN 202410160185A CN 117710449 A CN117710449 A CN 117710449A
- Authority
- CN
- China
- Prior art keywords
- real
- pipeline
- video measurement
- software
- hardware
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000005259 measurement Methods 0.000 title claims abstract description 68
- 238000005457 optimization Methods 0.000 title claims abstract description 48
- 230000006870 function Effects 0.000 claims abstract description 67
- 238000010586 diagram Methods 0.000 claims abstract description 22
- 230000008569 process Effects 0.000 claims abstract description 17
- 238000013461 design Methods 0.000 claims abstract description 15
- 230000006835 compression Effects 0.000 claims description 18
- 238000007906 compression Methods 0.000 claims description 18
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000000605 extraction Methods 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 6
- 239000003550 marker Substances 0.000 claims description 4
- 238000012800 visualization Methods 0.000 claims description 3
- 238000012938 design process Methods 0.000 claims description 2
- 239000000203 mixture Substances 0.000 claims description 2
- 238000010845 search algorithm Methods 0.000 claims description 2
- 238000010168 coupling process Methods 0.000 abstract description 6
- 230000008878 coupling Effects 0.000 abstract description 5
- 238000005859 coupling reaction Methods 0.000 abstract description 5
- 238000012360 testing method Methods 0.000 description 20
- 238000012545 processing Methods 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 5
- 238000002474 experimental method Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 238000011056 performance test Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Landscapes
- Image Processing (AREA)
Abstract
本发明提供基于NUMA的实时位姿视频测量流水线模型优化方法,属位姿参数的实时测量领域。包括:S1、按实时位姿视频测量功能确定全速数据流水线;S2、依据相机采图速度,确定CPU/GPU架构硬件的数据吞吐率设计;S3、建立实时位姿视频测量全速数据流水线的软硬件平衡模型和流水线转发路径图;S4、创建最小延迟的流水线软硬件部署优化算法,使流水线上顺序软件模块部署的CPU节点间NUMA距离最近,通过最小化节点间数据访问次数与时间、降低对总线与内存带宽的要求,实现软硬件的最优化耦合;本发明可应用至实时位姿视频测量***,顺利实现最小延迟的实时位姿视频测量过程。
Description
技术领域
本发明属于位姿参数成像与实时视频测量技术领域,具体为基于NUMA的实时位姿视频测量流水线模型优化方法。
背景技术
在交变应力和瞬态冲击应力下的高端装备承力部件位姿测量过程中,需要采用高时/空分辨率的相机。现有的高时/空分辨率相机中通过自带高速存储卡,来完成海量图像的实时存储,如Photron公司的SA2相机;但这一方式价格昂贵且存储时间有限(高速存储卡容量一般为32GB),同时由于无法将采集的图像实时传出,只能在采集完成后以离线方式测量;另一种情况是采用相机厂商推荐的磁盘阵列完成海量图像的实时存储,但仍需事后再从磁盘阵列中读取图像数据并完成离线测量过程。
对于高端装备承力部件的性能试验现场,需要在测验结束后花费较长时间才能获得时序位姿测量分析结果,导致在试验现场难以及时基于试验结果,优化并调整试验方案,这降低了试验效率。此外,由于无法实时获得时序位姿测量数据,位姿视频测量***的反馈结果在参与高端装备承力部件的位姿控制时,受到了严重制约。
现有技术中,主要依靠软硬件耦合加速来实现实时位姿视频测量过程,涉及的主要硬件平台包括:专用集成电路(ASIC)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)和CPU/GPU架构。
其中,ASIC具有运算速度较快和稳定性较高的优点,但其电路设计不够灵活,一旦确定ASIC的运算功能,就难以面向测量对象做出改变。DSP具有快速运算能力,但其串行工作方式,对于视频测量图像的并行处理是一种缺陷。FPGA采用流水并行操作,非常适用于多路并行的图像处理算法,但对于视频测量图像中的点检测与坐标定位算法,就难以实现,迄今尚未出现相应的FPGA图像处理IP核;同时由于FPGA的片上资源有限(如BRAM存储资源),不能依据特征点像素的变化而进行片上资源的划分。在测量过程中,如果特征点像素太大或数量过多,此时BRAM资源不足,就需要在DDR(双倍速率同步动态随机存储器)中重复检索特征点的灰度数据,并且需要多次对计算结果进行存储,这会使数据检索的时间消耗成倍增加,最终会使图像特征点检测的加速效率大大降低。
鉴于目前计算机技术的发展,CPU作为计算机的运算控制核心,擅长复杂逻辑运算;而GPU作为图形处理器,拥有大量流处理器(SP),擅长图像数据并行处理。因此,CPU/GPU架构可面向视频测量对象,灵活优化其软硬件耦合方式,成为实时位姿视频测量***的主流平台,是本领域技术人员研究的热点。
其中,非一致性内存访问架构(Non Uniform Memory Access,NUMA)是一种用于多处理器的计算机内存体设计,内存访问时间取决于处理器的内存位置。在NUMA下,处理器访问它自己的本地存储器的速度比非本地存储器(存储器位置至另一个处理器之间共享的处理器或存储器)快得多。
发明内容
针对背景技术中的现状,本发明面向实时位姿视频测量***,基于NUMA架构技术,提出了CPU/GPU架构的流水线模型及其优化方法,通过建立实时位姿视频测量***数据流的软硬件平衡模型,以及创建对应的软硬件耦合算法,最小化流水线上顺序软件模块间数据访问次数与时间,最终使实时位姿视频测量***的整体性能达到最优。
本发明采用了以下技术方案来实现目的:
一种基于NUMA的实时位姿视频测量流水线模型优化方法,所述方法包括如下步骤:
S1、在实时位姿视频测量***的全部功能中,确定出需进行全速数据流水线建模的多个给定功能;
S2、依据CPU/GPU架构,完成实时位姿视频测量***的硬件设计;
S3、建立全速数据流水线的软硬件平衡模型;
S4、依据软硬件平衡模型,构建出具有最低延迟的流水线软件模块,应用至实时位姿视频测量***中,完成硬件部署优化。
进一步的,步骤S4的硬件部署优化过程中,以全速数据流水线的瓶颈流速的边顶点为起始点,遍历与起始点相连的每个顶点;依据遍历得到的结果,将实时位姿视频测量***的流水线软件模块部署于具有最短NUMA距离的CPU核心处。
具体的,步骤S1中,需进行全速数据流水线建模的多个给定功能包括:相机图像采集功能、面向抽帧显示的降频功能/>、面向PCIE的降频功能/>、图像转JPG压缩功能/>、JPG图像存储功能/>、图像显示功能/>、标记点图像检测与坐标定位功能/>、位姿参数计算功能、位姿参数可视化功能/>、位姿参数存储功能/>。
进一步的,基于确定的10个给定功能至/>,在步骤S4需构建的流水线软件模块中,将给定功能以/>形式记录,其中上标/>表示/>在数据流中的序号,下标/>表示第/>种给定功能,则流水线软件模块的数据流包括:
高速高分辨率相机图像实时采集、转JPG压缩与存储数据流,对应给定功能流向为:;
抽帧显示数据流,对应给定功能流向为:;
高速高分辨率相机图像实时采集、位姿计算数据流,对应给定功能流向为:;
以上3条数据流在分别流经、/>和/>后,速度将降低至高速高分辨率相机的图像采集速度/>的10%以内;从而确定出对应的3条全速数据流水线,分别为:/>、和/>。
进一步的,步骤S3具体包括:
S31、确定运行各个给定功能的软件子模块及其线程数量;
S32、确定全速数据流水线的转发路径图;
S33、确定转发路径图中边的数据流速,即可得到全速数据流水线的软硬件平衡模型。
进一步的,步骤S4中,依据确定的转发路径图,以及顶点在CPU核心上的固定运行速度,构建出硬件部署优化模型;在硬件部署优化模型的基础上,结合最优后续Node查找算法,得出符合硬件部署优化模型的最优部署方案,通过最小化Node间数据访问次数与时间、降低对总线与内存带宽的要求,使具有最低延迟的流水线软件模块部署于实时位姿视频测量***中,从而完成流水线模型优化过程。
综上所述,由于采用了本技术方案,本发明的有益效果如下:
本发明在实时位姿视频测量***中引入CPU/GPU架构,充分发挥出了CPU擅长复杂逻辑运算和GPU擅长并行处理的优点,从而灵活优化了软硬件耦合方式。
本发明依据高速高分辨率相机的图像采集速度,确定出CPU/GPU架构的硬件吞吐率,设计出实时位姿视频测量***的软件部分,建立了实时位姿视频测量***数据流的软硬件平衡模型,创建出软硬件耦合过程的相关算法,使流水线转发路径图及延迟均达最低;最终,本发明方法使实时位姿视频测量***的整体性能达到最优水平,进而提高了高端装备承力部件的性能试验效率。
附图说明
图1为本发明方法的整体流程示意图;
图2为本发明应用实例中***硬件结构示意图;
图3为实例中逻辑处理器与物理处理器的映射关系示意图;
图4为实例中物理核心与Socket、NUMA的映射关系示意图;
图5为实例中NUMA距离矩阵的示意图;
图6为实例中流水线的转发路径示意图;
图7为实例中不同软硬件部署方案的测试结果示意图;
图8为不同方案在满分辨率下实时压缩存储的帧率测试结果示意图;
图9为不同方案的实时压缩存储的延时测试结果示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以按各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
一种基于NUMA的实时位姿视频测量流水线模型优化方法,图1示出了该方法的整体流程,该方法的步骤可总述如下:
S1、在实时位姿视频测量***的全部功能中,确定出需进行全速数据流水线建模的多个给定功能;
S2、依据CPU/GPU架构,完成实时位姿视频测量***的硬件设计;
S3、建立全速数据流水线的软硬件平衡模型;
S4、依据软硬件平衡模型,构建出具有最低延迟的流水线软件模块,应用至实时位姿视频测量***中,完成硬件部署优化。
本实施例将按照上述方法的步骤顺序,详细具体的介绍每一步骤中的细节内容。
一、实时位姿视频测量***的功能设计与全速数据流水线的确定
实时位姿视频测量***的全部功能如下,其中需进行全速数据流水线建模的多个给定功能均记为参数表示,以下标序号区分:
相机图像采集功能:使用采集卡,将相机图像经过PCIE实时采集至CPU/GPU架构的实时位姿视频测量***中。
面向抽帧显示的降频功能:/>接受来自/>的图像,并保存到连续内存中,当连续内存中图像数量达到/>张后,再向后续功能一次打包传出/>张图像,其中:,符号/>表示向上取整,/>为相机图像采集频率,/>为抽帧显示频率。
面向PCIE的降频功能:/>接受来自/>的图像,并保存到连续内存中,当连续内存中图像数量达到/>张后,再向后续功能一次打包传出/>张图像,其中:,参数/>为转换倍数,/>的取值范围为5至10。
图像转JPG压缩功能:由于高速高分辨率相机的图像采集速度/>远大于现有固态硬盘SSD的存储速度,因此需要GPU实时将其转JPG压缩后,再实时存入SSD中。
JPG图像存储功能:将JPG压缩图像实时存储。
图像显示功能:将采集的高速高分辨率图像数据实时抽帧显示。
标记点图像检测与坐标定位功能:使用GPU实时计算被测物上标记点的图像坐标。
位姿参数计算功能:将标记点图像坐标代入共线方程计算标记点三维坐标,进而确定被测物的位姿参数。
位姿参数可视化功能:显示被测物的位姿参数。
位姿参数存储功能:将计算出的位姿参数实时存储。
参数设置功能:包括高速高分辨率相机图像的显示参数、图像转JPG压缩参数、相机设置参数(如曝光、增益、帧率等)、镜头参数、相机内外参数、标记点图像检测参数(如搜索域大小、二值化阈值、轮廓周长和面积等)。
相机内外参数标定功能:获得高速高分辨率相机的内外参数。
上述最后两个功能无需实时进行,因此不需进行流水线建模。
本实施例中,将给定功能以形式记录,其中上标/>表示/>在数据流中的序号,下标/>表示第/>种给定功能,例如/>表示面向抽帧显示的降频功能在数据流中的排序为2;由此,流水线软件模块的数据流包括:
高速高分辨率相机图像实时采集、转JPG压缩与存储数据流,对应给定功能流向为:;
抽帧显示数据流,对应给定功能流向为:;
高速高分辨率相机图像实时采集、位姿计算数据流,对应给定功能流向为:;
以上3条数据流在分别流经、/>和/>后,速度将降低至高速高分辨率相机的图像采集速度/>的10%以内;从而确定出对应的3条全速数据流水线,分别为:/>、和/>。
如何保证这3条全速数据流水线流经的软硬件数据流速度不低于图像采集速度,是实现实时位姿视频测量***的关键。
二、基于CPU/GPU架构的实时位姿视频测量***的硬件设计
本实施例的实时位姿视频测量***中,给定高速高分辨率相机及其采集卡的图像采集速度,则依据CPU/GPU架构的硬件设计中,PCIE吞吐率/>、内存吞吐率/>、GPU带宽/>;再依据固态硬盘SSD的存储空间与JPG图像质量,令JPG压缩率/>、SSD存储速率;通过上述参数,完成硬件设计过程。
三、全速数据流水线的软硬件平衡模型的建立
此部分首先完成各个给定功能的软件子模块及其线程数量的确定。将所有软件子模块组成的集合记为,对于给定的全速数据流水线上序号为/>的第/>种功能/>,将实现/>的软件子模块记为/>;运行/>的线程/>独占1个CPU核心,则满足/>处数据流速为图像采集速度/>的数量为:/>;其中,符号/>表示向上取整,/>为/>在给定CPU核心上的运行数据流速。
当时,以并行方式开启/>个线程,每个线程独占1个CPU核心,且独立运行1个/>的软件子模块/>,从而确保/>处的数据流速/>;将多个以并行方式实现/>的软件子模块组成的集合记为/>,用下标/>表示并行的/>序号,即/>,/>。
紧接着,确定全速数据流水线的转发路径图。按顺序将全速数据流水线中实现各个给定功能的并行软件子模块记为转发路径图的顶点,顶点间的数据流连线记为边;对于给定的顶点/>和/>,下标/>表示并行的/>序号,即软件子模块/>的并行集合中的序号;将顶点/>和/>的边记为/>,/>中的上标表示两个顶点所属功能的序号,下标表示两个顶点所属功能的并行软件子模块集合中的序号;将转发路径图中所有边组成的集合记为/>,其中和/>之间所有的边组成的集合记为/>,/>,由此完成转发路径图的确定。
最后确定转发路径图中边的数据流速。步骤S33中,全速数据流水线中和/>之间的边的总流速/>为:
式中,表示集合/>中所有边的总数;/>表示顶点/>的执行线程输出数据存入内存buffer与顶点/>的执行线程访问内存buffer的数据流速;然后通过优化NUMA节点Node的间距,最小化节点间数据访问次数与时间、降低对总线与内存带宽的要求,以提高/>、缩短实时位姿视频测量***的延时;此处采用的方式即可使得最终部署的流水线软件模块具有最低延时。
对于通过步骤S2的硬件设计给定的计算机主板和CPU,由顶点/>和/>分别所在的Node决定,/>的长度由顶点/>和/>所在的Node之间的NUMA距离决定;选出执行顶点的Node以及对应的CPU核心,定义参数/>如下:
式中,当参数为1时,代表顶点/>部署于第/>个Node的第/>个CPU核心上,为0时则代表不部署于此CPU核心;经过上述方式,对转发路径图中边的数据流速的确定,以及顶点在对应CPU核心的部署选择后,软硬件平衡模型即作为后续硬件部署优化过程的依据基础。
四、延时最低的流水线软件模块的硬件部署优化
本实施例中,依据第二部分中实时位姿视频测量***的硬件设计,以及第三部分中建立的全速数据流水线的软硬件平衡模型,进行硬件部署优化过程。依据确定的转发路径图,以及顶点和/>在CPU核心上的固定运行速度,构建出硬件部署优化模型,如下式:
式中,表示序号为/>的Node中可用CPU核心的比例;/>表示同一CPU核心上部署顶点数量的上限值;/>表示序号为/>的Node中的CPU核心数量。
紧接着按照如下具体步骤,得出符合硬件部署优化模型的最优部署方案:
(1)依据的升序,对/>(/>)中的元素进行排序;并定义参数,/>;
(2)从中取出第1个/>(上标/>和/>表示/>在流水线中对应的序号,/>代表取出的第/>个/>);
(3)从中取出第1条边(同样是记为/>,可得到顶点/>和/>);
(4)计算出参数的可分配顶点数量/>,如下式:
若,则令/>参数/>上对应于可分配顶点数量的可分配CPU核心最小序号,然后转入第(5)步;否则,令参数/>,再次进行第(4)步;
(5)若顶点未指定其所在的Node,则顶点/>的/>;此处即涉及选出执行顶点/>的Node以及对应的CPU核心,是将定义参数/>的/>中的/>以参数/>对应的可分配顶点数量/>代替,因此记为/>;随后再令/>;
(6)调用最优后续Node查找算法,得到的/>;与顶点/>的原理相同,代表经过算法后,顶点/>部署于第/>个Node的第/>个CPU核心上;参数本身代表最优后续Node的序号;
(7)若不为空集,则转入第(3)步,继续遍历执行;
(8)若不为空集,则转入第(2)步,继续遍历执行;
(9)当为空集后,代表集合/>中的所有元素已完成遍历,每个顶点都已分配对应的CPU核心,从而得到满足硬件部署优化模型的最优部署方案,使具有最低延迟的流水线软件模块部署于实时位姿视频测量***中,完成流水线模型优化过程。
在上述最优部署方案的具体步骤中,本实施例的最优后续Node查找算法输入为:;输出为/>。算法按如下具体步骤进行:
(1-1)令参数;通过numactl(Windows操作***中使用Coreinfo)命令,获取***在硬件设计中给定的主板与CPU的NUMA距离矩阵;
(1-2)以相同方式计算参数的可分配顶点数量/>,即:
若,则令/>参数/>上对应于可分配顶点数量的可分配CPU核心最小序号,然后转入第(1-3)步;否则,令参数/>,再次进行第(1-2)步;
(1-3)若顶点未指定其所在的Node,则在NUMA距离矩阵中查找与当前参数距离最小的Node,以及此Node上可分配的CPU核心最小序号/>,即可得到顶点/>的/>,将此处的/>记为/>,即可输出。
本实施例的上述优化过程的关键逻辑在于:从流水线的瓶颈流速的边顶点开始,遍历每一个与之连接的顶点,依据遍历结果,将顶点布置并运行于具有最短NUMA距离的Node的CPU核心上,最小化流水线上顺序软件模块间数据访问次数与时间、降低对CPU/GPU架构总线与内存的带宽要求,应用至实时位姿视频测量***,实现最小延迟的实时位姿视频测量。
实施例2
在实施例1的基础上,本实施例以具体内容对其方法做出应用介绍,场景为:工业相机EVT21000实时采集、转JPG压缩与存储的图像数据流水线模型及其优化。
1、流水线模型及其优化结果
(1)流水线的功能流
依据实施例1的优化方法,高速高分辨率相机图像实时采集、转JPG压缩与存储的功能流向为:;/>实现图像的JPG存储,数据速度将降低至高速高分辨率相机的图像采集速度/>的10%,即/>为全速数据流水线。
(2)流水线的硬件设计
工业相机的型号为EVT21000,最大图像数据输出速率(即图像采集速度)为90.93Gbps,分辨率为5120×4096,Fps值为542;据此可确定如下表1所示的CPU/GPU的硬件架构。
表1 ***硬件列表
***硬件结构如图2所示,选用的主板中包括2个Socket,分别命名为为Socket0与Socket1,对应安装CPU0与CPU1;CPU0包含2个Node,分别命名为Node 0与Node 1,CPU1包含2个Node,分别命名为Node 2与Node 3;每个Node由1个NUMA、内存控制器和8个核心组成。图2中,工业相机EVT21000连接至采集卡ConnectX-5,采集卡通过PCIE4.0方式连接至Node 0,GPU0同样通过PCIE4.0方式连接至Node 0。
获取硬件配置的NUMA相关参数:在Windows操作***中使用Coreinfo命令,显示CPU核心映射关系的软件截图,如图3和图4所示。图3中,星号表示各个逻辑处理器分别与CPU核心的对应关系,即1个线程占用1个CPU核心。每个CPU核心与CPU/GPU架构插槽的Socket、NUMA的映射关系如图4所示。
图4中呈现的内容表示1至16号CPU核心部署在Socket0物理插槽,其中的1至8号对应NUMA的节点Node 0,9至16号对应NUMA的节点Node 1;而17至32号CPU核心部署在Socket1物理插槽,其中的17至24号对应NUMA的节点Node 2,25至32号对应NUMA的节点Node 3。
采集卡ConnectX-5 Ex Adapter #3的驱动程序使用了Node0的4个CPU核心,由此可得整个***中每个Node的可用核心比例分别为:;本实施例中,用于确定序号的参数/>,即分别代表Node 0、Node 1、Node 2、Node 3。
硬件架构的NUMA距离矩阵如图5所示。矩阵/>中的元素/>表示节点Node/>至Node/>的NUMA距离。
(3)全速数据流水线的软硬件平衡模型和转发路径图
确定各给定功能对应顶点(即软件模块)在CPU核心上的运行速度。由于所采用的各个CPU核心的计算能力相同,因此将需测试的软件模块均部署在Node 1中的1号核心上测速;经过三次重复性实验测量/>,进而得出各个顶点集合/>对应的数据流速测试结果与所需顶点数量/>,如下表2所示。
表2 顶点(即软件模块)的数据流速测试结果与所需顶点数量表
由上表2可以得出拟优化的流水线的转发路径图,如图6所示。图6中,为所有顶点集合,其中包含各阶段的顶点集合/>,而其中包括各顶点/>,可得下式:
即可进行第(4)部分。
(4)最小延迟的流水线软硬件部署方案
依据上述内容,可得下式:
其中,4个节点的构成集合/>。如前表1所示,CPU/GPU架构的节点数为4,每个Node中均具有8个CPU核心,其中Node 0的可用核心比例为1/2,其余均为1,而后获取每个Node的可部署顶点/>如下:
将其代入构建的硬件部署优化模型:
解得下式:
由此即得出了最优部署方案。
2、验证实验与分析
(1)部署在不同节点上的对比测试实验
部署在不同节点上运行速率的三次重复性测试结果如下表3所示。由于Node 0的CPU核心占用率高(采集卡占用了4个核心),导致部署在Node 0的/>的运行速率仅为56.06 Gbps。所以,由硬件架构的NUMA距离矩阵/>可知:/>部署在Node 1中运行流速最快,得到了实测数据的证实;因此若初始顶点/>部署Node 1,具有最快运行流速,能满足工业相机在满分辨率满帧率下的最高速率要求。
表3部署在不同节点上的运行速率测试结果表
(2)不同软硬件部署方案的对比测试实验
下表4为不同软硬件的节点部署方案。不同软硬件的节点部署方案的对比测试结果如图7所示,图7中每个柱形上方标示了其对应于表4的不同节点方案,其中标识B为本发明方案,标识Win为Windows部署方案。可见,部署节点改变后,压缩速率降为原来的59.22%,影响最大;/>、/>、/>部署节点改变后,压缩速率分别降为原来的87.29%、97.80%、97.75%,影响相对较小。
表4 不同软硬件部署方案的示意表
下表5为依赖Windows操作***,给软件部署CPU核心后的运行速率测试结果。由于Windows操作***没有按照CPU节点间NUMA距离最小化,部署在流水线上顺序软件模块运行的CPU核心,因此增加了节点间的数据访问次数,进而导致数据访问时间变长,以至于全速数据流水线的速率仅为46.62 Gbps,无法达到满分辨率满帧率的运行。
表5 Windows部署方案各软件模块的运行速率测试结果表
下表6为本发明方案的实测结果:、/>、/>、/>顶点速率相较于Windows部署方案,速率分别提升了194.63%、116.68%、173.90%、119.41%,确保了/>以满分辨率满帧率的状态输出JPG压缩图像,相较于Windows部署方案提升了195.64%的性能。
表6 本发明部署方案的顶点处理速率与压缩速率测试结果表
将图7的数据流速换算为满分辨率下以帧率大小区分的测试结果,来表述各方案的优劣:如图8所示,除本发明方案外,其余方案均不能在分辨率5120×4096下以542 Fps值的满帧率情况下实时压缩存储图像,可见本发明方案为最优方案。
各方案对于压缩延时的影响如图9所示。由于Windows部署只能达到278 Fps的数据速度,因此本实施例此处测试时将工业相机的采图频率统一设置为278 Fps,并统计工业相机从开始采集直至获得压缩存储文件的延时(ms);结果表明:本发明方案相较于Windows部署方案及方案1至方案4,延时分别缩短了19.99%、10.81%、11%、8.5%、11.03%。
综上,可见本发明方案为最优方案,其所应用的优化方法正确,工程价值显著,具有广阔的应用前景。
Claims (10)
1.一种基于NUMA的实时位姿视频测量流水线模型优化方法,其特征在于,所述方法包括如下步骤:
S1、在实时位姿视频测量***的全部功能中,确定出需进行全速数据流水线建模的多个给定功能;
S2、依据CPU/GPU架构,完成实时位姿视频测量***的硬件设计;
S3、建立全速数据流水线的软硬件平衡模型;
S4、依据软硬件平衡模型,构建出具有最低延迟的流水线软件模块,应用至实时位姿视频测量***中,完成硬件部署优化。
2.根据权利要求1所述的基于NUMA的实时位姿视频测量流水线模型优化方法,其特征在于:步骤S4的硬件部署优化过程中,以全速数据流水线的瓶颈流速的边顶点为起始点,遍历与起始点相连的每个顶点;依据遍历得到的结果,将实时位姿视频测量***的流水线软件模块部署于具有最短NUMA距离的CPU核心处。
3.根据权利要求1所述的基于NUMA的实时位姿视频测量流水线模型优化方法,其特征在于:步骤S1中,需进行全速数据流水线建模的多个给定功能包括:相机图像采集功能、面向抽帧显示的降频功能/>、面向PCIE的降频功能/>、图像转JPG压缩功能/>、JPG图像存储功能/>、图像显示功能/>、标记点图像检测与坐标定位功能/>、位姿参数计算功能/>、位姿参数可视化功能/>、位姿参数存储功能/>。
4.根据权利要求3所述的基于NUMA的实时位姿视频测量流水线模型优化方法,其特征在于:基于确定的10个给定功能至/>,在步骤S4需构建的流水线软件模块中,将给定功能以/>形式记录,其中上标/>表示/>在数据流中的序号,下标/>表示第/>种给定功能,则流水线软件模块的数据流包括:
高速高分辨率相机图像实时采集、转JPG压缩与存储数据流,对应给定功能流向为:;
抽帧显示数据流,对应给定功能流向为:;
高速高分辨率相机图像实时采集、位姿计算数据流,对应给定功能流向为:;
以上3条数据流在分别流经、/>和/>后,速度将降低至高速高分辨率相机的图像采集速度/>的10%以内;从而确定出对应的3条全速数据流水线,分别为:/>、和/>。
5.根据权利要求1所述的基于NUMA的实时位姿视频测量流水线模型优化方法,其特征在于:步骤S2中,实时位姿视频测量***中,给定高速高分辨率相机及其采集卡的图像采集速度,则依据CPU/GPU架构的硬件设计中,PCIE吞吐率/>、内存吞吐率/>、GPU带宽;再依据固态硬盘SSD的存储空间与JPG图像质量,令JPG压缩率/>、SSD存储速率;通过上述参数,完成硬件设计过程。
6.根据权利要求4所述的基于NUMA的实时位姿视频测量流水线模型优化方法,其特征在于,步骤S3具体包括:
S31、确定运行各个给定功能的软件子模块及其线程数量;
S32、确定全速数据流水线的转发路径图;
S33、确定转发路径图中边的数据流速,即可得到全速数据流水线的软硬件平衡模型;
步骤S31中,将所有软件子模块组成的集合记为,对于给定的全速数据流水线上序号为/>的第/>种功能/>,将实现/>的软件子模块记为/>;运行/>的线程/>独占1个CPU核心,则满足/>处数据流速为图像采集速度/>的/>数量为:/>;其中,符号/>表示向上取整,/>为/>在给定CPU核心上的运行数据流速;
当时,以并行方式开启/>个线程,每个线程独占1个CPU核心,且独立运行1个/>的软件子模块/>,从而确保/>处的数据流速/>;将多个以并行方式实现/>的软件子模块/>组成的集合记为/>,用下标/>表示并行的/>序号,即/>,/>。
7.根据权利要求6所述的基于NUMA的实时位姿视频测量流水线模型优化方法,其特征在于:步骤S32中,按顺序将全速数据流水线中实现各个给定功能的并行软件子模块记为转发路径图的顶点,顶点间的数据流连线记为边;对于给定的顶点/>和/>,下标/>表示并行的/>序号,即软件子模块/>的并行集合中的序号;将顶点/>和/>的边记为/>,/>中的上标表示两个顶点所属功能的序号,下标表示两个顶点所属功能的并行软件子模块集合中的序号;将转发路径图中所有边组成的集合记为/>,其中/>和/>之间所有的边组成的集合记为/>,/>,由此完成转发路径图的确定。
8.根据权利要求7所述的基于NUMA的实时位姿视频测量流水线模型优化方法,其特征在于:步骤S33中,全速数据流水线中和/>之间的边的总流速/>为:
式中,表示集合/>中所有边的总数;/>表示顶点/>的执行线程输出数据存入内存buffer与顶点/>的执行线程访问内存buffer的数据流速;然后通过优化NUMA节点间距的方式,提高/>,缩短实时位姿视频测量***的延时;
对于通过步骤S2的硬件设计给定的计算机主板和CPU,由顶点/>和/>分别所在的Node决定,/>的长度由顶点/>和/>所在的Node之间的NUMA距离决定;选出执行顶点/>的Node以及对应的CPU核心,定义参数/>如下:
式中,当参数为1时,代表顶点/>部署于第/>个Node的第/>个CPU核心上,为0时则代表不部署于此CPU核心;经过上述方式,确定了转发路径图中边的数据流速,以及将顶点部署在对应CPU核心后,软硬件平衡模型即为后续硬件部署优化的依据。
9.根据权利要求8所述的基于NUMA的实时位姿视频测量流水线模型优化方法,其特征在于:步骤S4中,依据确定的转发路径图,以及顶点和/>在CPU核心上的固定运行速度,构建出硬件部署优化模型,如下式:
式中,表示序号为/>的Node中可用CPU核心的比例;/>表示同一CPU核心上部署顶点数量的上限值;/>表示序号为/>的Node中的CPU核心数量;
在硬件部署优化模型的基础上,结合最优后续Node查找算法,得出符合硬件部署优化模型的最优部署方案,使具有最低延迟的流水线软件模块部署于实时位姿视频测量***中,完成流水线模型优化过程,实现最小延迟的实时位姿视频测量。
10.根据权利要求9所述的基于NUMA的实时位姿视频测量流水线模型优化方法,其特征在于:通过硬件部署优化模型与最优后续Node查找算法,从全速数据流水线的瓶颈流速的边顶点开始,遍历每个与边顶点相连接的顶点,并将顶点部署、运行于具有最短NUMA距离的CPU核心处。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410160185.6A CN117710449B (zh) | 2024-02-05 | 2024-02-05 | 基于numa的实时位姿视频测量流水线模型优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410160185.6A CN117710449B (zh) | 2024-02-05 | 2024-02-05 | 基于numa的实时位姿视频测量流水线模型优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117710449A true CN117710449A (zh) | 2024-03-15 |
CN117710449B CN117710449B (zh) | 2024-04-16 |
Family
ID=90153765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410160185.6A Active CN117710449B (zh) | 2024-02-05 | 2024-02-05 | 基于numa的实时位姿视频测量流水线模型优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117710449B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120293667A1 (en) * | 2011-05-16 | 2012-11-22 | Ut-Battelle, Llc | Intrinsic feature-based pose measurement for imaging motion compensation |
CN103528568A (zh) * | 2013-10-08 | 2014-01-22 | 北京理工大学 | 一种基于无线信道的目标位姿图像测量方法 |
WO2018080533A1 (en) * | 2016-10-31 | 2018-05-03 | Siemens Aktiengesellschaft | Real-time generation of synthetic data from structured light sensors for 3d object pose estimation |
US20180315221A1 (en) * | 2017-05-01 | 2018-11-01 | Lockheed Martin Corporation | Real-time camera position estimation with drift mitigation in incremental structure from motion |
US20190346271A1 (en) * | 2016-03-11 | 2019-11-14 | Kaarta, Inc. | Laser scanner with real-time, online ego-motion estimation |
CN111272380A (zh) * | 2020-02-24 | 2020-06-12 | 中国空气动力研究与发展中心高速空气动力研究所 | 风洞试验模型位姿视频测量的风轴系自标定方法 |
CN111882608A (zh) * | 2020-07-14 | 2020-11-03 | 中国人民解放军军事科学院国防科技创新研究院 | 一种增强现实眼镜跟踪相机和人眼之间的位姿估计方法 |
WO2021177596A1 (en) * | 2020-03-03 | 2021-09-10 | Samsung Electronics Co., Ltd. | Fast bi-layer neural synthesis of one-shot realistic images of neural avatar |
US20220414919A1 (en) * | 2021-05-24 | 2022-12-29 | Samsung Electronics Co., Ltd. | Method and apparatus for depth-aided visual inertial odometry |
US20230068415A1 (en) * | 2021-09-01 | 2023-03-02 | Qualcomm Incorporated | Systems and Method for Modem Power Aware Extended Reality (XR) and Gaming Software Applications |
CN116049995A (zh) * | 2023-03-15 | 2023-05-02 | 中国空气动力研究与发展中心高速空气动力研究所 | 级间分离试验中基于虚拟样机的特种机构碰撞预测方法 |
CN116124081A (zh) * | 2023-04-18 | 2023-05-16 | 菲特(天津)检测技术有限公司 | 一种非接触式的工件检测方法、装置、电子设备及介质 |
-
2024
- 2024-02-05 CN CN202410160185.6A patent/CN117710449B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120293667A1 (en) * | 2011-05-16 | 2012-11-22 | Ut-Battelle, Llc | Intrinsic feature-based pose measurement for imaging motion compensation |
CN103528568A (zh) * | 2013-10-08 | 2014-01-22 | 北京理工大学 | 一种基于无线信道的目标位姿图像测量方法 |
US20190346271A1 (en) * | 2016-03-11 | 2019-11-14 | Kaarta, Inc. | Laser scanner with real-time, online ego-motion estimation |
WO2018080533A1 (en) * | 2016-10-31 | 2018-05-03 | Siemens Aktiengesellschaft | Real-time generation of synthetic data from structured light sensors for 3d object pose estimation |
US20180315221A1 (en) * | 2017-05-01 | 2018-11-01 | Lockheed Martin Corporation | Real-time camera position estimation with drift mitigation in incremental structure from motion |
CN111272380A (zh) * | 2020-02-24 | 2020-06-12 | 中国空气动力研究与发展中心高速空气动力研究所 | 风洞试验模型位姿视频测量的风轴系自标定方法 |
WO2021177596A1 (en) * | 2020-03-03 | 2021-09-10 | Samsung Electronics Co., Ltd. | Fast bi-layer neural synthesis of one-shot realistic images of neural avatar |
CN111882608A (zh) * | 2020-07-14 | 2020-11-03 | 中国人民解放军军事科学院国防科技创新研究院 | 一种增强现实眼镜跟踪相机和人眼之间的位姿估计方法 |
US20220414919A1 (en) * | 2021-05-24 | 2022-12-29 | Samsung Electronics Co., Ltd. | Method and apparatus for depth-aided visual inertial odometry |
US20230068415A1 (en) * | 2021-09-01 | 2023-03-02 | Qualcomm Incorporated | Systems and Method for Modem Power Aware Extended Reality (XR) and Gaming Software Applications |
CN116049995A (zh) * | 2023-03-15 | 2023-05-02 | 中国空气动力研究与发展中心高速空气动力研究所 | 级间分离试验中基于虚拟样机的特种机构碰撞预测方法 |
CN116124081A (zh) * | 2023-04-18 | 2023-05-16 | 菲特(天津)检测技术有限公司 | 一种非接触式的工件检测方法、装置、电子设备及介质 |
Non-Patent Citations (5)
Title |
---|
3D视觉开发者社区: ""近十年的VI-SLAM算法综述与发展"", pages 1 - 11, Retrieved from the Internet <URL:《https://zhuanlan.zhihu.com/p/548908552》> * |
C. BILBAO等: ""Divide&Content: A Fair OS-Level Resource Manager for Contention Balancing on NUMA Multicores"", 《IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS》, vol. 34, no. 11, 30 August 2023 (2023-08-30), pages 2928 - 2945 * |
DA CRUZ BAPTISTA DIAS, DUARTE: ""Distributed State Estimation and Control of Autonomous Quadrotor Formations Using Exclusively Onboard Resources"", 《EPFL》, no. 9224, 27 March 2019 (2019-03-27), pages 1 - 214 * |
刘斌: ""两轮自平衡小车软硬件研发与基于模糊线性化模型的变结构控制研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》, 15 July 2009 (2009-07-15), pages 140 - 127 * |
张超: ""基于GPU图像特征点检测方法研究"", 《中国学位论文全文数据库》, 12 September 2023 (2023-09-12), pages 1 - 78 * |
Also Published As
Publication number | Publication date |
---|---|
CN117710449B (zh) | 2024-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10776688B2 (en) | Multi-frame video interpolation using optical flow | |
US10922793B2 (en) | Guided hallucination for missing image content using a neural network | |
US20190362502A1 (en) | System and method for optical flow estimation | |
US20200293867A1 (en) | Efficient neural network accelerator dataflows | |
CN111143174B (zh) | 在共享功率/热约束下操作的硬件的最佳操作点估计器 | |
US11651194B2 (en) | Layout parasitics and device parameter prediction using graph neural networks | |
JP6335335B2 (ja) | タイルベースのレンダリングgpuアーキテクチャのための任意のタイル形状を有する適応可能なパーティションメカニズム | |
TWI772857B (zh) | 系統封裝內的邏輯裝置和記憶體裝置之並行測試 | |
US11954830B2 (en) | High dynamic range support for legacy applications | |
US20200285618A1 (en) | Decompression techniques for processing compressed data suitable for artificial neural networks | |
US11847733B2 (en) | Performance of ray-traced shadow creation within a scene | |
CN112288619A (zh) | 用于在渲染图形时预加载纹理的技术 | |
US20200242739A1 (en) | Convolutional blind-spot architectures and bayesian image restoration | |
JP6680454B2 (ja) | Lsiチップ積層システム | |
US20190318533A1 (en) | Realism of scenes involving water surfaces during rendering | |
US11106968B1 (en) | Circuit arrangements and methods for traversing input feature maps | |
CN112825199B (zh) | 碰撞检测方法、装置、设备及存储介质 | |
US11476852B2 (en) | Glitch-free multiplexer | |
CN113822975B (zh) | 用于对图像进行有效采样的技术 | |
CN117710449B (zh) | 基于numa的实时位姿视频测量流水线模型优化方法 | |
CN116127802A (zh) | 3d视景展示cae仿真结果的方法、装置及*** | |
CN113626080B (zh) | 数据处理装置以及相关产品 | |
CN111221498A (zh) | 动态方向舍入 | |
US11809989B2 (en) | Preventing glitch propagation | |
US20230297379A1 (en) | Data processing apparatus and related product |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |