CN111736989B - 多模式分布式集群gpu指标检测方法及系统 - Google Patents
多模式分布式集群gpu指标检测方法及系统 Download PDFInfo
- Publication number
- CN111736989B CN111736989B CN202010506445.2A CN202010506445A CN111736989B CN 111736989 B CN111736989 B CN 111736989B CN 202010506445 A CN202010506445 A CN 202010506445A CN 111736989 B CN111736989 B CN 111736989B
- Authority
- CN
- China
- Prior art keywords
- gpu
- information
- working
- mode
- node
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5044—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种多模式分布式集群GPU指标检测方法及系统,包括GPU嗅探器读取工作节点环境变量中的模式值和计时器频率,读取工作节点的GPU数量和GPU信息参数,计算出自身不同工作模式下工作节点的GPU性能得分,进行信息上报;存储器比对上报信息和数据平面的数据库,使数据库对应数据内部的各个字段更新为上报信息内部的各个字段;校验器等待接收并校验上报信息。本发明通过工作节点设置GPU信息列表缓存和数据平面设置字段对比来实现GPU信息更新从而降低信息上报频率、减少信息传输成本;通过多模式评分策略凸显GPU资源的多样性,以适配更多复杂场景的GPU计算需求。
Description
技术领域
本发明涉及一种多模式分布式集群GPU指标检测方法及系统,属于云计算技术领域。
背景技术
在云计算领域,应用GPU(Graphics Processing Unit,图形处理器)可以加快机器学习算法的训练速度,且应用GPU的训练任务和工作流逐渐多样化,这些训练任务和工作流对GPU的性能指标提出了不同的要求,然而目前大部分的分布式集群对GPU的性能指标检测力度不足,只能简单检测显卡数量而不能检测显卡细颗粒的性能指标,这样便无法适配各种复杂场景的计算需求,导致有特定需求的GPU被调度在非适配节点上运行,使得整个分布式集群的GPU资源利用率低下,影响整个分布式集群性能。
云计算业务中使用GPU的频率呈上升趋势,使用GPU的任务将不断涌现,这将会给GPU资源调度带来挑战,GPU资源调度的合理性和分布式集群GPU 检测及时性有关,分布式集群需要及时检测GPU状态,否则会导致整个分布式集群内部任务分配不均衡,影响GPU资源调度结果,间接造成分布式集群运算效率的低下。
发明内容
本发明的目的在于克服现有技术中的不足,提供一种多模式分布式集群 GPU指标检测方法及系统,能够降低信息上报频率、减少信息传输成本,适配更多复杂场景的GPU计算需求。
为达到上述目的,本发明是采用下述技术方案实现的:
第一方面,本发明提供了一种多模式分布式集群GPU指标检测方法,所述方法包括如下步骤:
步骤(1):检查工作节点的配置文件内容是否存在,若存在,读取工作节点的配置文件内容并将其保存至GPU信息列表缓存中从而与数据平面通信,若通信正常,执行步骤(2);若通信失败,则将失败原因记录并发送至本地,将失败信息发送至工程人员,等待额定时间再次与数据平面通信直至通信正常;若不存在,则将故障原因记录并发送至本地,将故障信息发送至工程人员,步骤结束;
步骤(2):读取工作节点环境变量中的模式值,并根据模式值对自身工作模式作出相应的模式切换;
步骤(3):从工作节点的环境变量中读取计时器频率,以便设置自身读取 GPU信息参数的时间周期;读取工作节点的GPU数量和GPU信息参数,并将其保存至GPU信息列表缓存中,若GPU信息列表缓存中不存在GPU,则将GPU 信息列表缓存置空;若GPU健康状态为不健康,则不会将GPU信息参数加入 GPU信息列表缓存中;等待步骤(5)执行后,重置计时器,等待下一个自身读取GPU信息参数的时间周期到来,再次执行步骤(3);工作节点异步并发,执行步骤(4);
步骤(4):计算工作节点的GPU信息参数的最大值,并将其保存至GPU 信息列表缓存中,若工作节点的GPU信息列表缓存为空,直接执行步骤(5);根据GPU信息参数值和GPU信息参数的最大值,计算出自身不同工作模式下工作节点的GPU性能得分,并将性能得分最高的GPU设置为MainGPU;
步骤(5):对发送信息初始化,判断工作节点的GPU信息列表缓存中是否存在GPU,若不存在,则将GPU不存在的信息进行封装,通过加载步骤(1) GPU信息列表缓存中的配置文件内容,将封装的信息发送至数据平面进行上报;若存在,则将MainGPU的信息参数及其对应值加入到发送信息的字段中,计算出GPU的数量与GPU显存容量总和并将其加入到发送信息的字段中,通过加载步骤(1)GPU信息列表缓存中的配置文件内容,将发送信息发送至数据平面进行上报,供校验器接收并校验,并保存至GPU信息列表缓存中;
当下次执行信息上报时,将GPU信息列表缓存中的发送信息各个字段和新生成的发送信息各个字段进行对比,若对比相同则不进行信息上报,否则用新生成的发送信息覆盖GPU信息列表缓存中的发送信息,并加载步骤(1)GPU 信息列表缓存中的配置文件内容,将新生成的发送信息发送至数据平面进行上报,供校验器接收并校验。
结合第一方面,进一步的,步骤(1)中工作节点的配置文件内容包括数据平面的IP地址和端口号。
结合第一方面,进一步的,步骤(2)中基于模式值的有无和大小,将模式划分为资源优先模式、高性能模式和节能模式,若模式值为空,则将自身工作模式切换为资源优先模式;若模式值属于高性能模式,则将自身工作模式切换为高性能模式;若模式值属于节能模式,则将自身工作模式切换为节能模式。
结合第一方面,进一步的,步骤(3)中所述计时器频率的有效范围为0.1~10,所述计时器频率的单位为秒分之一;
若读取的计时器频率值为空,则GPU嗅探器读取GPU信息参数的时间周期
默认设置为1秒,即每隔1秒再次读取工作节点的GPU信息参数;若读取的计时器频率值超过10,则将计时器频率值设置为10;若读取的计时器频率值低于 0.1,则将计时器频率值设置为0.1;若读取的计时器频率值在有效范围,则不对计时器频率值进行重新设置;
GPU信息参数包括GPU识别号、GPU健康状态、GPU型号、GPU工作功率、GPU显存频率、GPU显存容量、GPU空闲显存、GPU核心数和GPU位宽。
结合第一方面,进一步的,步骤(4)中不同工作模式下工作节点的GPU 性能得分计算公式为
其中,Score为不同工作模式下工作节点的GPU性能得分;
MemCWeight为GPU显存频率权重,CoreWeight为GPU核心数权重, BandWeight为GPU位宽权重,PowWeight为GPU工作功率权重,FreeMemWeight 为GPU空闲显存权重,MemoryWeight为GPU显存容量权重;
GMemoryClock为GPU显存频率,GCores为GPU核心数,GBandwidth为GPU位宽,GPower为GPU工作功率,GMemory为GPU显存容量,GFreeMemory 为GPU空闲显存;
MaxMemClock为GPU显存频率的最大值,MaxCores为GPU核心数的最大值,MaxBandwidth为GPU位宽的最大值,MaxPower为GPU工作功率的最大值,MaxMemory为GPU显存容量的最大值,MaxFreeMem为GPU空闲显存的最大值;
根据不同工作模式设置相应的GPU显存频率权重、GPU核心数权重、GPU 位宽权重、GPU工作功率权重、GPU空闲显存权重和GPU显存容量权重,且 GPU显存频率权重、GPU核心数权重、GPU位宽权重、GPU工作功率权重、 GPU空闲显存权重和GPU显存容量权重也可根据当前分布式集群的真实状态作出相应的调整。
第二方面,本发明还提供了一种多模式分布式集群GPU指标检测方法,所述方法包括如下步骤:
等待存储器启动并对接共享存储,若对接失败,则数据节点将对接日志写入本地用于工程人员排查错误,步骤结束;若对接成功,则数据节点启动校验器;
检查数据节点的配置文件内容是否存在,若不存在,则将失败原因记录并发送至本地,将故障信息发送至工程人员,步骤结束;
若存在,读取数据节点的配置文件内容并将其保存至工作节点的GPU信息列表缓存中从而开启Web服务器阻塞监听,等待接收并校验GPU嗅探器传来的上报信息,若校验出错,则丢弃上报信息并将上报时间和错误写入数据平面日志;若校验通过,则将上报信息发送给存储器,以使存储器比对上报信息和数据平面的数据库;
若比对结果是上报信息为新数据,则存储器立即存储上报信息,否则比对上报信息内部的各个字段和数据库对应数据内部的各个字段是否一致;
若一致,则存储器不做处理;若不一致,则存储器使数据库对应数据内部的各个字段更新为上报信息内部的各个字段,并将更新结果写入数据平面日志;
再次等待接收并校验GPU嗅探器传来的上报信息。
结合第二方面,进一步的,数据节点的配置文件内容包括数据节点的IP地址和端口号;
上报信息包括上报节点是否为分布式集群内部节点、是否具有上报信息权限、上报信息格式是否规范、上报信息内部字段是否合法;
数据节点是否隶属于分布式集群和上报信息权限均事先存入数据平面的数据库中。
结合第一方面或第二方面,进一步的,工作节点的数量根据实际生产进行扩缩,但是至少大于一个,所述工作节点内部包括GPU嗅探器;数据平面由不少于3个的数据节点组成,所述数据节点包括存储器和校验器。
第三方面,本发明提供了一种多模式分布式集群GPU指标检测系统,所述系统包括:
检查配置文件内容模块:用于检查工作节点的配置文件内容是否存在;
模式切换模块:用于读取工作节点环境变量中的模式值,并根据模式值对自身工作模式作出相应的模式切换;
读取模块:用于从工作节点的环境变量中读取计时器频率以便设置自身读取GPU信息参数的时间周期;还用于读取工作节点的GPU数量和GPU信息参数,并将其保存至GPU信息列表缓存中;
计算得分模块:用于计算工作节点的GPU信息参数的最大值,并将其保存至GPU信息列表缓存中;还用于根据GPU信息参数值和GPU信息参数的最大值,计算出自身不同工作模式下工作节点的GPU性能得分,并将性能得分最高的GPU设置为MainGPU;
信息上报模块:用于对发送信息初始化,判断工作节点的GPU信息列表缓存中是否存在GPU并进行信息上报。
第四方面,本发明还提供了一种多模式分布式集群GPU指标检测系统,所述系统包括:
等待对接模块:用于等待存储器启动并对接共享存储;
检查配置文件内容模块:用于检查数据节点的配置文件内容是否存在;
数据比对模块:用于存储器比对上报信息和数据平面的数据库;
更新写入模块:用于存储器使数据库对应数据内部的各个字段更新为上报信息内部的各个字段,并将更新结果写入数据平面日志;
再次等待上报模块:用于再次等待接收并校验GPU嗅探器传来的上报信息。
与现有技术相比,本发明所达到的有益效果:
本发明通过工作节点设置GPU信息列表缓存和数据平面设置字段对比来实现GPU信息更新从而降低信息上报频率、减少信息传输成本;通过多模式评分策略凸显GPU资源的多样性,以适配更多复杂场景的GPU计算需求。
附图说明
图1是本发明实施例提供的多模式分布式集群GPU指标检测方法的工作节点和数据平面的内部架构图;
图2是本发明实施例提供的多模式分布式集群GPU指标检测方法的GPU 嗅探器工作流程图;
图3是本发明实施例提供的多模式分布式集群GPU指标检测方法的校验器工作流程图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
如图2所示,本发明提供了一种多模式分布式集群GPU指标检测方法,所述方法包括如下步骤:
步骤(1):GPU嗅探器检查工作节点的配置文件内容是否存在,所述工作节点的配置文件内容包括数据平面的IP地址和端口号,若存在,读取工作节点的配置文件内容并将其保存至GPU信息列表缓存中从而与数据平面通信,若通信正常,执行步骤(2);若通信失败,则将失败原因记录并发送至本地,将失败信息发送至工程人员,等待额定时间再次与数据平面通信直至通信正常;若不存在,则将故障原因记录并发送至本地,将故障信息发送至工程人员,步骤结束;
步骤(2):模式切换,GPU嗅探器读取工作节点环境变量中的模式值,并根据模式值对自身工作模式作出相应的模式切换,具体来说是基于模式值的有无和大小,将模式划分为资源优先模式、高性能模式和节能模式,若模式值为空,则将自身工作模式切换为资源优先模式;若模式值属于高性能模式,则将自身工作模式切换为高性能模式;若模式值属于节能模式,则将自身工作模式切换为节能模式;
步骤(3):读取计数器频率和GPU,GPU嗅探器从工作节点的环境变量中读取计时器频率,以便设置自身读取GPU信息参数的时间周期;
所述计时器频率的有效范围为0.1~10,所述计时器频率的单位为秒分之一;若读取的计时器频率值为空,则GPU嗅探器读取GPU信息参数的时间周期默认设置为1秒,即每隔1秒再次读取工作节点的GPU信息参数;若读取的计时器频率值超过10,则将计时器频率值设置为10;若读取的计时器频率值低于0.1,则将计时器频率值设置为0.1;若读取的计时器频率值在有效范围,则不对计时器频率值进行重新设置;
GPU嗅探器读取工作节点的GPU数量和GPU信息参数,并将其保存至GPU 信息列表缓存中,所述GPU信息参数包括GPU识别号、GPU健康状态、GPU 型号、GPU工作功率、GPU显存频率、GPU显存容量、GPU空闲显存、GPU 核心数和GPU位宽;
若GPU信息列表缓存中不存在GPU,则将GPU信息列表缓存置空;若GPU 健康状态为不健康,则不会将GPU信息参数加入GPU信息列表缓存中;等待步骤(5)执行后,重置计时器,等待下一个自身读取GPU信息参数的时间周期到来,再次执行步骤(3);工作节点异步并发,执行步骤(4);
步骤(4):GPU性能得分计算,GPU嗅探器计算工作节点的GPU信息参数的最大值,并将其保存至GPU信息列表缓存中,若工作节点的GPU信息列表缓存为空,直接执行步骤(5);根据GPU信息参数值和GPU信息参数的最大值,计算出自身不同工作模式下工作节点的GPU性能得分,并将性能得分最高的GPU设置为MainGPU;
不同工作模式下工作节点的GPU性能得分计算公式为
其中,Score为不同工作模式下工作节点的GPU性能得分;
MemCWeight为GPU显存频率权重,CoreWeight为GPU核心数权重, BandWeight为GPU位宽权重,PowWeight为GPU工作功率权重,FreeMemWeight 为GPU空闲显存权重,MemoryWeight为GPU显存容量权重;
GMemoryClock为GPU显存频率,GCores为GPU核心数,GBandwidth为 GPU位宽,GPower为GPU工作功率,GMemory为GPU显存容量,GFreeMemory 为GPU空闲显存;
MaxMemClock为GPU显存频率的最大值,MaxCores为GPU核心数的最大值,MaxBandwidth为GPU位宽的最大值,MaxPower为GPU工作功率的最大值,MaxMemory为GPU显存容量的最大值,MaxFreeMem为GPU空闲显存的最大值;
根据不同工作模式设置相应的GPU显存频率权重、GPU核心数权重、GPU 位宽权重、GPU工作功率权重、GPU空闲显存权重和GPU显存容量权重,且 GPU显存频率权重、GPU核心数权重、GPU位宽权重、GPU工作功率权重、 GPU空闲显存权重和GPU显存容量权重也可根据当前分布式集群的真实状态作出相应的调整。
步骤(5):信息上报,GPU嗅探器对发送信息初始化,判断工作节点的GPU 信息列表缓存中是否存在GPU,若不存在,则将GPU不存在的信息进行封装,通过加载步骤(1)GPU信息列表缓存中的配置文件内容,将封装的信息发送至数据平面进行上报;若存在,则将MainGPU的信息参数及其对应值加入到发送信息的字段中,计算出GPU的数量与GPU显存容量总和并将其加入到发送信息的字段中,通过加载步骤(1)GPU信息列表缓存中的配置文件内容,将发送信息发送至数据平面进行上报,供校验器接收并校验,并保存至GPU信息列表缓存中;
当下次执行信息上报时,GPU嗅探器将GPU信息列表缓存中的发送信息各个字段和新生成的发送信息各个字段进行对比,若对比相同则不进行信息上报,否则用新生成的发送信息覆盖GPU信息列表缓存中的发送信息,并加载步骤(1) GPU信息列表缓存中的配置文件内容,将新生成的发送信息发送至数据平面进行上报,供校验器接收并校验。
如图3所示,本发明还提供了一种多模式分布式集群GPU指标检测方法,所述方法包括如下步骤:
校验器等待存储器启动并对接共享存储,若对接失败,则数据节点将对接日志写入本地用于工程人员排查错误,步骤结束;若对接成功,则数据节点启动校验器;
校验器检查数据节点的配置文件内容是否存在,所述数据节点的配置文件内容包括数据节点的IP地址和端口号;
若不存在,则校验器将失败原因记录并发送至本地,将故障信息发送至工程人员,步骤结束;
若存在,校验器读取数据节点的配置文件内容并将其保存至工作节点的 GPU信息列表缓存中从而开启Web服务器阻塞监听,从而校验器等待接收并校验GPU嗅探器传来的上报信息,所述上报信息包括上报节点是否为分布式集群内部节点、是否具有上报信息权限、上报信息格式是否规范、上报信息内部字段是否合法;所述数据节点是否隶属于分布式集群和上报信息权限均事先存入数据平面的数据库中;
若校验出错,则校验器丢弃上报信息并将上报时间和错误写入数据平面日志;若校验通过,则校验器将上报信息发送给存储器,以使存储器比对上报信息和数据平面的数据库;
若比对结果是上报信息为新数据,则存储器立即存储上报信息,否则比对上报信息内部的各个字段和数据库对应数据内部的各个字段是否一致;
若一致,则存储器不做处理;若不一致,则存储器使数据库对应数据内部的各个字段更新为上报信息内部的各个字段,并将更新结果写入数据平面日志;
校验器再次等待接收并校验GPU嗅探器传来的上报信息。
如图1所示,工作节点的数量根据实际生产进行扩缩,但是至少大于一个,所述工作节点内部包括GPU嗅探器和GPU;数据平面由不少于3个的数据节点组成,所述数据节点包括存储器和校验器;
数据平面通过现有云计算技术中的心跳检测技术和虚拟IP(Virtual IP)技术实现数据节点流量的负载均衡,从而保证多模式分布式集群GPU指标检测系统的高效可用性,避免系统发生单点故障,同时数据平面可通过共享存储(Shared Memory)的方式实现多个数据节点内部数据的一致性。
本发明实施例通过工作节点设置GPU信息列表缓存和数据平面设置字段对比来实现GPU信息更新从而降低信息上报频率、减少信息传输成本;通过多模式评分策略凸显GPU资源的多样性,以适配更多复杂场景的GPU计算需求。
本发明实施例还提供了一种多模式分布式集群GPU指标检测系统,所述系统包括:
检查配置文件内容模块:用于检查工作节点的配置文件内容是否存在;
模式切换模块:用于读取工作节点环境变量中的模式值,并根据模式值对自身工作模式作出相应的模式切换;
读取模块:用于从工作节点的环境变量中读取计时器频率以便设置自身读取GPU信息参数的时间周期;还用于读取工作节点的GPU数量和GPU信息参数,并将其保存至GPU信息列表缓存中;
计算得分模块:用于计算工作节点的GPU信息参数的最大值,并将其保存至GPU信息列表缓存中;还用于根据GPU信息参数值和GPU信息参数的最大值,计算出自身不同工作模式下工作节点的GPU性能得分,并将性能得分最高的GPU设置为MainGPU;
信息上报模块:用于对发送信息初始化,判断工作节点的GPU信息列表缓存中是否存在GPU并进行信息上报。
本发明实施例还提供了一种多模式分布式集群GPU指标检测系统,所述系统包括:
等待对接模块:用于等待存储器启动并对接共享存储;
检查配置文件内容模块:用于检查数据节点的配置文件内容是否存在;
数据比对模块:用于存储器比对上报信息和数据平面的数据库;
更新写入模块:用于存储器使数据库对应数据内部的各个字段更新为上报信息内部的各个字段,并将更新结果写入数据平面日志;
再次等待上报模块:用于再次等待接收并校验GPU嗅探器传来的上报信息。
本发明实施例还提供了一种多模式分布式集群GPU指标检测系统,包括一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行前述多模式分布式集群GPU指标检测方法的指令。
本发明实施例还提供了一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令由处理器执行时得以实现前述多模式分布式集群GPU指标检测方法的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、 CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/ 或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (10)
1.一种多模式分布式集群GPU指标检测方法,其特征在于,所述方法包括如下步骤:
步骤(1):检查工作节点的配置文件内容是否存在,若存在,读取工作节点的配置文件内容并将其保存至GPU信息列表缓存中从而与数据平面通信,若通信正常,执行步骤(2);若通信失败,则将失败原因记录并发送至本地,将失败信息发送至工程人员,等待额定时间再次与数据平面通信直至通信正常;若不存在,则将故障原因记录并发送至本地,将故障信息发送至工程人员,步骤结束;
步骤(2):读取工作节点环境变量中的模式值,并根据模式值对自身工作模式作出相应的模式切换;
步骤(3):从工作节点的环境变量中读取计时器频率,以便设置自身读取GPU信息参数的时间周期;读取工作节点的GPU数量和GPU信息参数,并将其保存至GPU信息列表缓存中,若GPU信息列表缓存中不存在GPU,则将GPU信息列表缓存置空;若GPU健康状态为不健康,则不会将GPU信息参数加入GPU信息列表缓存中;等待步骤(5)执行后,重置计时器,等待下一个自身读取GPU信息参数的时间周期到来,再次执行步骤(3);工作节点异步并发,执行步骤(4);
步骤(4):计算工作节点的GPU信息参数的最大值,并将其保存至GPU信息列表缓存中,若工作节点的GPU信息列表缓存为空,直接执行步骤(5);根据GPU信息参数值和GPU信息参数的最大值,计算出自身不同工作模式下工作节点的GPU性能得分,并将性能得分最高的GPU设置为MainGPU;
步骤(5):对发送信息初始化,判断工作节点的GPU信息列表缓存中是否存在GPU,若不存在,则将GPU不存在的信息进行封装,通过加载步骤(1)GPU信息列表缓存中的配置文件内容,将封装的信息发送至数据平面进行上报;若存在,则将MainGPU的信息参数及其对应值加入到发送信息的字段中,计算出GPU的数量与GPU显存容量总和并将其加入到发送信息的字段中,通过加载步骤(1)GPU信息列表缓存中的配置文件内容,将发送信息发送至数据平面进行上报,供校验器接收并校验,并保存至GPU信息列表缓存中;
当下次执行信息上报时,将GPU信息列表缓存中的发送信息各个字段和新生成的发送信息各个字段进行对比,若对比相同则不进行信息上报,否则用新生成的发送信息覆盖GPU信息列表缓存中的发送信息,并加载步骤(1)GPU信息列表缓存中的配置文件内容,将新生成的发送信息发送至数据平面进行上报,供校验器接收并校验。
2.根据权利要求1所述的一种多模式分布式集群GPU指标检测方法,其特征在于,步骤(1)中工作节点的配置文件内容包括数据平面的IP地址和端口号。
3.根据权利要求1所述的一种多模式分布式集群GPU指标检测方法,其特征在于,步骤(2)中基于模式值的有无和大小,将模式划分为资源优先模式、高性能模式和节能模式,若模式值为空,则将自身工作模式切换为资源优先模式;若模式值属于高性能模式,则将自身工作模式切换为高性能模式;若模式值属于节能模式,则将自身工作模式切换为节能模式。
4.根据权利要求1所述的一种多模式分布式集群GPU指标检测方法,其特征在于,步骤(3)中所述计时器频率的有效范围为0.1~10,所述计时器频率的单位为秒分之一;
若读取的计时器频率值为空,则GPU嗅探器读取GPU信息参数的时间周期默认设置为1秒,即每隔1秒再次读取工作节点的GPU信息参数;若读取的计时器频率值超过10,则将计时器频率值设置为10;若读取的计时器频率值低于0.1,则将计时器频率值设置为0.1;若读取的计时器频率值在有效范围,则不对计时器频率值进行重新设置;
GPU信息参数包括GPU识别号、GPU健康状态、GPU型号、GPU工作功率、GPU显存频率、GPU显存容量、GPU空闲显存、GPU核心数和GPU位宽。
5.根据权利要求1所述的一种多模式分布式集群GPU指标检测方法,其特征在于,步骤(4)中不同工作模式下工作节点的GPU性能得分计算公式为
其中,Score为不同工作模式下工作节点的GPU性能得分;
MemCWeight为GPU显存频率权重,CoreWeight为GPU核心数权重,BandWeight为GPU位宽权重,PowWeight为GPU工作功率权重,FreeMemWeight为GPU空闲显存权重,MemoryWeight为GPU显存容量权重;
GMemoryClock为GPU显存频率,GCores为GPU核心数,GBandwidth为GPU位宽,GPower为GPU工作功率,GMemory为GPU显存容量,GFreeMemory为GPU空闲显存;
MaxMemClock为GPU显存频率的最大值,MaxCores为GPU核心数的最大值,MaxBandwidth为GPU位宽的最大值,MaxPower为GPU工作功率的最大值,MaxMemory为GPU显存容量的最大值,MaxFreeMem为GPU空闲显存的最大值;
根据不同工作模式设置相应的GPU显存频率权重、GPU核心数权重、GPU位宽权重、GPU工作功率权重、GPU空闲显存权重和GPU显存容量权重,且GPU显存频率权重、GPU核心数权重、GPU位宽权重、GPU工作功率权重、GPU空闲显存权重和GPU显存容量权重也可根据当前分布式集群的真实状态作出相应的调整。
6.一种多模式分布式集群GPU指标检测方法,其特征在于,所述方法包括如下步骤:
等待存储器启动并对接共享存储,若对接失败,则数据节点将对接日志写入本地用于工程人员排查错误,步骤结束;若对接成功,则数据节点启动校验器;
检查数据节点的配置文件内容是否存在,若不存在,则将失败原因记录并发送至本地,将故障信息发送至工程人员,步骤结束;
若存在,读取数据节点的配置文件内容并将其保存至工作节点的GPU信息列表缓存中从而开启Web服务器阻塞监听,等待接收并校验GPU嗅探器传来的上报信息,若校验出错,则丢弃上报信息并将上报时间和错误写入数据平面日志;若校验通过,则将上报信息发送给存储器,以使存储器比对上报信息和数据平面的数据库;
若比对结果是上报信息为新数据,则存储器立即存储上报信息,否则比对上报信息内部的各个字段和数据库对应数据内部的各个字段是否一致;
若一致,则存储器不做处理;若不一致,则存储器使数据库对应数据内部的各个字段更新为上报信息内部的各个字段,并将更新结果写入数据平面日志;
再次等待接收并校验GPU嗅探器传来的上报信息。
7.根据权利要求6所述的一种多模式分布式集群GPU指标检测方法,其特征在于,数据节点的配置文件内容包括数据节点的IP地址和端口号;
上报信息包括上报节点是否为分布式集群内部节点、是否具有上报信息权限、上报信息格式是否规范、上报信息内部字段是否合法;
数据节点是否隶属于分布式集群和上报信息权限均事先存入数据平面的数据库中。
8.根据权利要求1或6所述的一种多模式分布式集群GPU指标检测方法,其特征在于,工作节点的数量根据实际生产进行扩缩,但是至少大于一个,所述工作节点内部包括GPU嗅探器;数据平面由不少于3个的数据节点组成,所述数据节点包括存储器和校验器。
9.一种多模式分布式集群GPU指标检测系统,其特征在于,所述系统包括:
检查配置文件内容模块:用于检查工作节点的配置文件内容是否存在;
模式切换模块:用于读取工作节点环境变量中的模式值,并根据模式值对自身工作模式作出相应的模式切换;
读取模块:用于从工作节点的环境变量中读取计时器频率以便设置自身读取GPU信息参数的时间周期;还用于读取工作节点的GPU数量和GPU信息参数,并将其保存至GPU信息列表缓存中;
计算得分模块:用于计算工作节点的GPU信息参数的最大值,并将其保存至GPU信息列表缓存中;还用于根据GPU信息参数值和GPU信息参数的最大值,计算出自身不同工作模式下工作节点的GPU性能得分,并将性能得分最高的GPU设置为MainGPU;
信息上报模块:用于对发送信息初始化,判断工作节点的GPU信息列表缓存中是否存在GPU并进行信息上报。
10.一种多模式分布式集群GPU指标检测系统,其特征在于,所述系统包括:
等待对接模块:用于等待存储器启动并对接共享存储;
检查配置文件内容模块:用于检查数据节点的配置文件内容是否存在;
数据比对模块:用于存储器比对上报信息和数据平面的数据库;
更新写入模块:用于存储器使数据库对应数据内部的各个字段更新为上报信息内部的各个字段,并将更新结果写入数据平面日志;
再次等待上报模块:用于再次等待接收并校验GPU嗅探器传来的上报信息。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010506445.2A CN111736989B (zh) | 2020-06-05 | 2020-06-05 | 多模式分布式集群gpu指标检测方法及系统 |
PCT/CN2020/110992 WO2021243855A1 (zh) | 2020-06-05 | 2020-08-25 | 一种多模式分布式集群gpu指标检测方法及系统 |
US17/369,909 US11734152B2 (en) | 2020-06-05 | 2021-07-07 | Method and system for detecting GPU-related factors of multi-mode distributed cluster |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010506445.2A CN111736989B (zh) | 2020-06-05 | 2020-06-05 | 多模式分布式集群gpu指标检测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111736989A CN111736989A (zh) | 2020-10-02 |
CN111736989B true CN111736989B (zh) | 2022-10-14 |
Family
ID=72648351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010506445.2A Active CN111736989B (zh) | 2020-06-05 | 2020-06-05 | 多模式分布式集群gpu指标检测方法及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111736989B (zh) |
WO (1) | WO2021243855A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114584489A (zh) * | 2022-03-08 | 2022-06-03 | 浪潮云信息技术股份公司 | 一种基于ssh通道的远程环境信息和配置检测方法和系统 |
CN117135151B (zh) * | 2023-09-01 | 2024-05-03 | 摩尔线程智能科技(北京)有限责任公司 | 一种gpu集群的故障检测方法及gpu集群、电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106446168A (zh) * | 2016-09-26 | 2017-02-22 | 北京赛思信安技术股份有限公司 | 一种面向分布式数据仓库的高效加载客户端实现方法 |
WO2019233047A1 (zh) * | 2018-06-07 | 2019-12-12 | 国电南瑞科技股份有限公司 | 基于电网调度的运维方法 |
CN110647580A (zh) * | 2019-09-05 | 2020-01-03 | 南京邮电大学 | 分布式容器集群镜像管理主节点、从节点、系统及方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776252B (zh) * | 2016-12-08 | 2019-08-02 | 武汉斗鱼网络科技有限公司 | 一种评价gpu性能的方法及装置 |
CN108021487B (zh) * | 2017-11-24 | 2021-03-26 | 中国航空工业集团公司西安航空计算技术研究所 | 一种gpu图形处理性能监测与分析方法 |
CN110891000B (zh) * | 2019-11-07 | 2021-10-26 | 浪潮(北京)电子信息产业有限公司 | 一种gpu带宽性能的检测方法、系统及相关装置 |
-
2020
- 2020-06-05 CN CN202010506445.2A patent/CN111736989B/zh active Active
- 2020-08-25 WO PCT/CN2020/110992 patent/WO2021243855A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106446168A (zh) * | 2016-09-26 | 2017-02-22 | 北京赛思信安技术股份有限公司 | 一种面向分布式数据仓库的高效加载客户端实现方法 |
WO2019233047A1 (zh) * | 2018-06-07 | 2019-12-12 | 国电南瑞科技股份有限公司 | 基于电网调度的运维方法 |
CN110647580A (zh) * | 2019-09-05 | 2020-01-03 | 南京邮电大学 | 分布式容器集群镜像管理主节点、从节点、系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111736989A (zh) | 2020-10-02 |
WO2021243855A1 (zh) | 2021-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111736989B (zh) | 多模式分布式集群gpu指标检测方法及系统 | |
AU2011299337B2 (en) | Controlled automatic healing of data-center services | |
CN101976217A (zh) | 网络处理器异常检测方法及系统 | |
CN112799923B (zh) | 系统异常原因确定方法、装置、设备及存储介质 | |
CN106777126B (zh) | 一种支持异构时序数据库的数据在线迁移方法 | |
CN118093434B (zh) | 一种智能化信息系统性能评估与测试方法及系统 | |
CN110766167B (zh) | 交互式特征选择方法、设备及可读存储介质 | |
US20230305880A1 (en) | Cluster distributed resource scheduling method, apparatus and device, and storage medium | |
CN104850394A (zh) | 分布式应用程序的管理方法和分布式系统 | |
CN112558875A (zh) | 数据校验方法、装置、电子设备及存储介质 | |
WO2022120995A1 (zh) | 一种基于PoW共识机制的设备算力评价方法及系统 | |
CN110147273A (zh) | 一种任务执行方法及装置 | |
CN103297264A (zh) | 一种云平台故障恢复方法和系统 | |
CN115656788B (zh) | 一种芯片测试系统、方法、设备及存储介质 | |
CN114243715B (zh) | 一种水电站agc控制装置的测试方法及系统 | |
CN115454958A (zh) | 基于人工智能的数据处理方法、装置、设备、系统及介质 | |
CN111782141A (zh) | 一种数据巡检方法及装置 | |
CN111581034A (zh) | 一种raid卡故障处理方法及装置 | |
JP5832408B2 (ja) | 仮想計算機システム及びその制御方法 | |
CN118468409B (zh) | 基于人工智能的bim系统信息化处理方法及系统 | |
CN113535528B (zh) | 面向分布式图迭代计算作业的日志管理系统、方法及介质 | |
CN118503055B (zh) | 一种链路监控方法、设备、介质及计算机程序产品 | |
US9244832B1 (en) | Cache learning model | |
CN115587366A (zh) | 一种漏洞威胁权重的计算方法、系统、设备及存储介质 | |
CN110286937B (zh) | 一种分布式软件运行的方法及其系统 |
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 |