IO性能数据的采集方法、装置、设备及存储介质制造方法及图纸

技术编号:35246900 阅读:23 留言:0更新日期:2022-10-19 09:54
本公开实施例涉及一种IO性能数据的采集方法、装置、设备及存储介质。其中,IO性能数据的采集方法包括:在目标设备运行目标IO请求对应的目标内核代码的过程中,基于目标设备中的预设执行引擎对目标内核代码的运行进度进行监听;当监听到目标内核代码运行至预设触发事件对应的内核代码时,采集当前系统层对应的IO性能数据,其中,当前系统层为目标设备的操作系统中当前对目标IO请求进行处理的系统层;确定用于标识当前系统层对应的IO性能数据的来源的追踪元数据。如此,可使IO性能数据的采集在内核空间中完成,无需像现有技术中在应用空间中进行插桩,因此,有利于提高可移植性。有利于提高可移植性。有利于提高可移植性。

【技术实现步骤摘要】
IO性能数据的采集方法、装置、设备及存储介质


[0001]本公开实施例涉及计算机
,尤其涉及一种IO性能数据的采集方法、装置、设备及存储介质。

技术介绍

[0002]随着计算机技术的不断发展,超级计算机已在诸如天气预报、航天等科技领域大展身手。对于超级计算机而言,其应用程序会产生或依赖大量数据,这些数据以文件的形式存储在PB级别的共享的高性能文件系统中,由于无论是应用超级计算机的用户,还是高性能文件系统的开发人员,对访问这些文件的时超级计算机的IO性能的了解都非常有限,因此,研究超级计算机的IO性能具有重大意义。
[0003]目前,采集超级计算机的IO性能数据时,通常需要在超级计算机的用户空间中进行插桩。由于插桩与用户空间中应用程序的开发语言强相关,因此现有的IO性能数据采集工具可移植性低。

技术实现思路

[0004]为了解决上述技术问题或者至少部分地解决上述技术问题,本公开实施例提供了一种IO性能数据的采集方法、装置、设备及存储介质。
[0005]本公开实施例的第一方面提供了一种IO性能数据的采集方法,该方法包括:在目标设备运行目标IO请求对应的目标内核代码的过程中,基于目标设备中的预设执行引擎对目标内核代码的运行进度进行监听;当监听到目标内核代码运行至预设触发事件对应的内核代码时,采集当前系统层对应的IO性能数据,其中,当前系统层为目标设备的操作系统中当前对目标IO请求进行处理的系统层;确定用于标识当前系统层对应的IO性能数据的来源的追踪元数据。
[0006]本公开实施例的第二方面提供了一种IO性能数据的采集装置,该装置包括:监听模块,用于在目标设备运行目标IO请求对应的目标内核代码的过程中,基于目标设备中的预设执行引擎对目标内核代码的运行进度进行监听;采集模块,用于当监听到目标内核代码运行至预设触发事件对应的内核代码时,采集当前系统层对应的IO性能数据,其中,当前系统层为目标设备的操作系统中当前对目标IO请求进行处理的系统层;确定模块,用于确定用于标识当前系统层对应的IO性能数据的来源的追踪元数据。
[0007]本公开实施例的第三方面提供了一种电子设备,该服务器包括:处理器和存储器,其中,所述存储器中存储有计算机程序,当所述计算机程序被所述处理器执行时,所述处理器执行上述第一方面的方法。
[0008]本公开实施例的第四方面提供了一种计算机可读存储介质,该存储介质中存储有
计算机程序,当该计算机程序被处理器执行时,可以实现上述第一方面的方法。
[0009]第五方面,本公开提供了一种计算机程序产品,计算机程序产品包括计算机程序/指令,计算机程序/指令被处理器执行时实现上述第一方面的方法。
[0010]本公开实施例提供的技术方案与现有技术相比具有如下优点:本公开实施例,通过在目标设备运行目标IO请求对应的目标内核代码的过程中,基于目标设备中的预设执行引擎对目标内核代码的运行进度进行监听;当监听到目标内核代码运行至预设触发事件对应的内核代码时,采集当前系统层对应的IO性能数据,其中,当前系统层为目标设备的操作系统中当前对目标IO请求进行处理的系统层;确定用于标识当前系统层对应的IO性能数据的来源的追踪元数据。采用上述技术方案,可使IO性能数据的采集在内核空间中完成,无需像现有技术中在应用空间中进行插桩,因此,有利于提高可移植性。
附图说明
[0011]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
[0012]为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0013]图1是本公开实施例提供的一种通过插桩采集IO性能数据的逻辑示意图;图2是本公开实施例提供的一种IO性能数据的采集方法的流程示意图;图3是本公开实施例提供的一种eBPF的执行逻辑示意图;图4是本公开实施例提供的一种IO性能数据采集过程的逻辑示意图;图5是本公开实施例提供的另一种IO性能数据采集方法的流程示意图;图6是本公开实施例提供的一种IO性能数据采集过程的逻辑示意图;图7是本公开实施例提供的一种IO性能数据的采集装置的结构示意图;图8是本公开实施例中的一种电子设备的结构示意图。
具体实施方式
[0014]为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
[0015]在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
[0016]图1是本公开实施例提供的一种通过插桩采集IO性能数据的逻辑示意图。参见图1,若应用开发者进行应用开发时,为实现某些应用功能编写出的应用程序包括“第一代码、第二代码、第三代码、第四代码
…”
等多段应用功能代码(即用户代码),一些应用功能代码可以调用内核空间中的内核功能代码(即内核代码),例如,“第三代码”可以调用“第一内核功能代码”,“第四代码”可以调用“第二内核功能代码”。而为了实现IO性能数据的采集需要
进行插桩,例如,在“第二代码”和“第三代码”之间插入“第一插入代码和第二插入代码”,在“第四代码”和“第五代码”之间插入“第三插入代码和第四插入代码”,并且需要应用开发者使用与应用功能代码相同的编程语言来编写“第一插入代码、第二插入代码、第三插入代码和第四插入代码”,如此,导致可移植性低,一方面,应用侧插桩强依赖于应用程序的编程语言和运行规模,可移植性低,且无法动态检测I/O性能数据;另一方面,系统侧插装依赖于特定的系统支撑软件,无法适应不同硬件系统架构的超级计算系统,可移植性低。
[0017]有鉴于此,本公开实施例提供了一种IO性能数据的采集方法、装置、设备及存储介质。下面,先对IO性能数据的采集方法进行详细描述。
[0018]图2是本公开实施例提供的一种IO性能数据的采集方法的流程示意图,该方法可以由一种电子设备来执行。该电子设备可以示例性的理解为诸如手机、平板电脑、笔记本电脑、台式机、智能电视等设备。如图1所示,本实施例提供的方法包括如下步骤:S210、在目标设备运行目标IO请求对应的目标内核代码的过程中,基于目标设备中的预设执行引擎对目标内核代码的运行进度进行监听。
[0019]具体地,目标设备可以包括超级计算机,但并不限于此。
[0020]具体地,目标设备在硬件系统架构上可以划分为多个节点,例如,对于两层硬件系统架构的超级计算机而言,其包括计算节点和存储节点两个节点,对于三层硬件系统架构的超级计算机而言,其包括计算节点、IO转发节点、以及存储节点三个节点。
[0021]在一个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种IO性能数据的采集方法,其特征在于,包括:在目标设备运行目标IO请求对应的目标内核代码的过程中,基于所述目标设备中的预设执行引擎对所述目标内核代码的运行进度进行监听;当监听到所述目标内核代码运行至预设触发事件对应的内核代码时,采集当前系统层对应的IO性能数据,其中,所述当前系统层为所述目标设备的操作系统中当前对所述目标IO请求进行处理的系统层;确定用于标识所述当前系统层对应的IO性能数据的来源的追踪元数据。2.根据权利要求1所述的方法,其特征在于,所述目标IO请求包括块IO请求;其中,所述当监听到所述目标内核代码运行至预设触发事件对应的内核代码时,采集当前系统层对应的IO性能数据,包括:当监听到所述目标内核代码运行至块请求发出追踪点时,获取块请求发出追踪点对应的请求发出时刻;当监听到所述目标内核代码运行至块请求完成追踪点时,获取块请求完成追踪点对应的请求完成时刻;将所述请求发出时刻和所述请求完成时刻作差,确定所述块IO请求的块IO请求延迟。3.根据权利要求1所述的方法,其特征在于,所述确定用于标识所述当前系统层对应的IO性能数据的来源的追踪元数据,包括:若所述当前系统层属于所述目标设备的首个节点且为所述首个节点对应的多个预设触发事件中的首个预设触发事件时,则确定所述目标IO请求所属的任务的任务标识、确定所述目标IO请求的IO请求标识、将父节点标识设置为空、确定所述当前系统层所属的节点的当前处理节点标识、确定记录追踪元数据时的时间标识。4.根据权利要求3所述的方法,其特征在于,所述确定用于标识所述当前系统层对应的IO性能数据的来源的追踪元数据,还包括:若所述当前系统层属于所述目标设备的非首个节点且为所述非首个节点对应的多个预设触发事件中的首个预设触发事件时,则从父节点继承所述任务标识、以及所述IO请求标识,并更新所述父节点标识、更新...

【专利技术属性】
技术研发人员:贺成李宇奇张健杨满堂朱明祖徐斌冯景华
申请(专利权)人:天津市天河计算机技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1