一种NVLINK通信状态监测方法和装置制造方法及图纸

技术编号:21605166 阅读:42 留言:0更新日期:2019-07-13 18:06
本发明专利技术公开了一种NVLINK通信状态监测方法和装置,该方法包括以下步骤:在通过NVLINK总线互联的多个处理器进行分布式计算时,获取需要监测的NVLINK总线在预设监测周期内的多个瞬时传输速率;利用剔除算法从多个瞬时传输速率中剔除干扰速率;以及根据剔除后剩余的瞬时传输速率构造拉格朗日插值公式并利用拉格朗日插值公式计算得出需要监测的NVLINK总线在预设监测周期内的传输速率曲线。本发明专利技术能够精确地实时监测NVLINK各个通道的收发字节数和通信速率,并且在执行本发明专利技术的方法时系统不会出现崩溃现象。

A NVLINK Communication State Monitoring Method and Device

【技术实现步骤摘要】
一种NVLINK通信状态监测方法和装置
本专利技术涉及计算机
,更具体地,特别是指一种NVLINK通信状态监测方法和装置。
技术介绍
随着计算机科学技术的发展,GPU在图形处理领域已经取得了飞速的发展,同时由于GPU的可编程性不断增强,GPU的应用能力已经远远超出了图形渲染任务的范畴。利用GPU完成通用计算的研究逐渐活跃起来,将GPU用于图形渲染以外领域的计算称为GPGPU(GeneralPurposecomputingongraphicsprocessingunits,基于GPU的通用计算)。近两年随着神经网络的兴起,使得GPU成为神经网络应用的一个主要芯片。在人工智能领域已经出现很多CPU+GPU架构的产品。随着GPU技术的发展,并行计算计算量已经可以达到Tflops的级别,这也使得在进行分布式计算时CPU与GPU之间、GPU与GPU之间的通信成为主要的瓶颈。为此英伟达公司研发出了最新的NVLINK总线,其主要应用于CPU与GPU之间以及GPU与GPU之间的相互连接。NVLINK总线总共有六路,每路单方向传输速度最大可达25GB/s。同时,英伟达公司还提出了如下两种监测NVLINK通信状态的方法。一、应用nvprof指令监测过程如下:1.生成GPU可执行程序;2.输入nvprof--metricsall+可执行程序;3.在输出的各选项中可以看到NVLINK收发字节数和吞吐量等信息。二、应用nvidia-smi指令监测过程如下:1.生成GPU可执行程序;2.输入nvidianvlink–sc0bz来对计数器进行初始化;3.输入nvidianvlink–g0来显示NVLINK的各路通道收发字节数。但是,上述现有的监测方法存在如下缺点:nvprof主要是通过收集程序运行的信息来对NVLINK通信链路进行监测,必须要等待程序执行完或者中途退出程序才能进行NVLINK通信状态的查看,且只能看整体信息,对于每路的收发字节数和收发速率无法进行查看;Nvidia-sminvlink虽然能看每路通道的具体信息,但是不能够实时监测NVLINK的数据量和传输速率,而如果频繁调用Nvidia-sminvlink命令很容易会导致系统崩溃。另外,现有技术在监测NVLINK通信链路时,必须要在20ms或者更短的时间内完成。当数据在20ms之间的某一时刻进行传输时,测出的NVLINK传输速率则会与实际出现偏差从而导致测量不准。综上,针对上述现有技术中存在的问题,本领域亟待需要一种能够精确地实时监测NVLINK各个通道的收发字节数和通信速率并且不会导致系统崩溃的方案。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提出一种NVLINK通信状态监测方法和装置,能够解决现有NVLINK通信状态监测方案无法精确地实时监测NVLINK通信状态并记录通信时各个通道的收发字节数和通信速率以及频繁执行现有监测命令而导致系统崩溃等问题。基于上述目的,本专利技术实施例的一方面提供了一种NVLINK通信状态监测方法,包括以下步骤:在通过NVLINK总线互联的多个处理器进行分布式计算时,获取需要监测的NVLINK总线在预设监测周期内的多个瞬时传输速率;利用剔除算法从多个瞬时传输速率中剔除干扰速率;以及根据剔除后剩余的瞬时传输速率构造拉格朗日插值公式并利用拉格朗日插值公式计算得出需要监测的NVLINK总线在预设监测周期内的传输速率曲线。在一些实施方式中,利用剔除算法从多个瞬时传输速率中剔除干扰速率进一步包括以下步骤:计算多个瞬时传输速率中的一部分瞬时传输速率的平均值和均方差;和将多个瞬时传输速率中的每一个减去平均值之后的值和均方差进行比较,响应于值大于均方差而剔除对应的瞬时传输速率。在一些实施方式中,该方法还包括以下步骤:编辑NVLINK监测命令并在NVLINK监测命令中设置监测参数;和在通过NVLINK总线互联的多个处理器进行分布式计算时执行NVLINK监测命令,以根据监测参数监测需要监测的NVLINK总线传输的数据量。在一些实施方式中,在NVLINK监测命令中设置监测参数进一步包括:设置监测计数器ID、监测单位以及NVLINK通信方式。在一些实施方式中,根据监测参数监测需要监测的NVLINK总线传输的数据量进一步包括:利用监测计数器ID标识的监测计数器基于监测单位和NVLINK通信方式对需要监测的NVLINK总线传输的数据量进行计数。在一些实施方式中,在NVLINK监测命令中设置监测参数进一步包括:设置指定时间间隔,指定时间间隔大于等于预设监测周期。在一些实施方式中,在NVLINK监测命令中设置监测参数进一步包括设置记录文件名;并且该方法进一步包括以下步骤:检测是否存在与记录文件名对应的记录文件;响应于不存在记录文件而新建记录文件;和每隔指定时间间隔将数据量的计数值和传输速率曲线记录到记录文件中。在一些实施方式中,该方法进一步包括以下步骤:每隔指定时间间隔将数据量的计数值和传输速率曲线显示给用户。本专利技术实施例的另一方面,还提供了一种NVLINK通信状态监测装置,包括:通过NVLINK总线互联的多个处理器;和存储器,存储器存储有可在处理器上运行的计算机程序,处理器执行程序时执行上述的方法。在一些实施方式中,多个处理器包括CPU和GPU。本专利技术具有以下有益技术效果:本专利技术实施例提供的NVLINK通信状态监测方法和装置能够精确地实时监测NVLINK通信链路的情况并记录通信时各个通道的收发字节数和通信速率,并且本专利技术的方法不需频繁执行,例如,当监测数据量时,只要在处理器运行相关程序时向系统输入nvlink-monitor命令并设置好相关监测参数,系统就会自动监测并记录NVLINK通信链路的各个通道的收发字节数(传输数据量),因此不会导致系统崩溃。另外,本专利技术在设置相关参数的情况下还可以显示当前NVLINK链路存在的GPU个数和GPU信息。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。图1为根据本专利技术一个实施例的NVLINK通信状态监测方法的示意性流程图;和图2为根据本专利技术一个实施例的NVLINK通信状态监测装置的硬件结构示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本专利技术实施例进一步详细说明。基于上述目的,本专利技术实施例的第一个方面,提出了一种NVLINK通信状态监测方法的一个实施例。图1示出的是该方法的示意性流程图。如图1中所示,该NVLINK通信状态监测方法可以包括以下步骤:步骤S101,在通过NVLINK总线互联的多个处理器进行分布式计算时,获取需要监测的NVLINK总线在预设监测周期内的多个瞬时传输速率;步骤S102,利用剔除算法从多个瞬时传输速率中剔除干扰速率;以及步骤S103,根据剔除后剩余的瞬时传输速率构造拉格朗日插值公式并利用拉格朗日插值公式计算得出需要监测的NVLINK总线在预设监测周期内的传输速率曲线。本专利技术采用插值法估算预设监测周期(例如,20ms或者更短的时间本文档来自技高网
...

【技术保护点】
1.一种NVLINK通信状态监测方法,其特征在于,包括以下步骤:在通过NVLINK总线互联的多个处理器进行分布式计算时,获取需要监测的NVLINK总线在预设监测周期内的多个瞬时传输速率;利用剔除算法从所述多个瞬时传输速率中剔除干扰速率;以及根据剔除后剩余的瞬时传输速率构造拉格朗日插值公式并利用所述拉格朗日插值公式计算得出所述需要监测的NVLINK总线在所述预设监测周期内的传输速率曲线。

【技术特征摘要】
1.一种NVLINK通信状态监测方法,其特征在于,包括以下步骤:在通过NVLINK总线互联的多个处理器进行分布式计算时,获取需要监测的NVLINK总线在预设监测周期内的多个瞬时传输速率;利用剔除算法从所述多个瞬时传输速率中剔除干扰速率;以及根据剔除后剩余的瞬时传输速率构造拉格朗日插值公式并利用所述拉格朗日插值公式计算得出所述需要监测的NVLINK总线在所述预设监测周期内的传输速率曲线。2.根据权利要求1所述的方法,其特征在于,所述利用剔除算法从所述多个瞬时传输速率中剔除干扰速率进一步包括以下步骤:计算所述多个瞬时传输速率中的一部分瞬时传输速率的平均值和均方差;和将所述多个瞬时传输速率中的每一个减去所述平均值之后的值和所述均方差进行比较,响应于所述值大于所述均方差而剔除对应的瞬时传输速率。3.根据权利要求1所述的方法,其特征在于,还包括以下步骤:编辑NVLINK监测命令并在所述NVLINK监测命令中设置监测参数;和在通过所述NVLINK总线互联的所述多个处理器进行分布式计算时执行所述NVLINK监测命令,以根据所述监测参数监测所述需要监测的NVLINK总线传输的数据量。4.根据权利要求3所述的方法,其特征在于,所述在所述NVLINK监测命令中设置监测参数进一步包括:设置监测计数器ID、监测单位以及NVLINK通信方式。5.根...

【专利技术属性】
技术研发人员:孙红岩景璐
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏,32

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

1