CN112000468B - 一种基于侦测调节模块的gpu管理装置、方法及gpu服务器 - Google Patents

一种基于侦测调节模块的gpu管理装置、方法及gpu服务器 Download PDF

Info

Publication number
CN112000468B
CN112000468B CN202010767363.3A CN202010767363A CN112000468B CN 112000468 B CN112000468 B CN 112000468B CN 202010767363 A CN202010767363 A CN 202010767363A CN 112000468 B CN112000468 B CN 112000468B
Authority
CN
China
Prior art keywords
gpu
module
task
management
processed
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
Application number
CN202010767363.3A
Other languages
English (en)
Other versions
CN112000468A (zh
Inventor
滕学军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202010767363.3A priority Critical patent/CN112000468B/zh
Publication of CN112000468A publication Critical patent/CN112000468A/zh
Priority to PCT/CN2021/096546 priority patent/WO2022028061A1/zh
Application granted granted Critical
Publication of CN112000468B publication Critical patent/CN112000468B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation 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/5038Allocation 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 the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • G06F11/3062Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/508Monitor
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Power Sources (AREA)
  • Multi Processors (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明提出了一种基于侦测调节模块的GPU管理装置,包括:CPU模块、CPU管理模块、转换模块、GPU模块、GPU管理模块、侦测调节模块,所述侦测调节模块的调节控制端分别与GPU管理模块、CPU管理模块的控制端通信连接,用于检测待处理的数据类型,并根据待处理的数据类型选择对应的GPU模块和/或CPU模块进行处理;所述GPU管理模块与GPU模块通信连接,用于实现对GPU模块的管理以及待处理任务的均衡分配;本发明还提出了一种基于侦测调节模块的GPU管理方法及GPU服务器,有效的提高了CPU以及GPU的利用率以及任务处理效率。

Description

一种基于侦测调节模块的GPU管理装置、方法及GPU服务器
技术领域
本发明涉及GPU管理设计领域,尤其是涉及一种基于侦测调节模块的GPU管理装置、方法及GPU服务器。
背景技术
随着GPU(图形处理器)服务器技术的快速发展,越来越多的机器学习及AI(人工智能)应用得到推广使用;GPU服务器作为深度学习,训练等业务得到了大规模的应用。
现有技术中,应用于图形设计、人工智能、科学研究等领域需要使用非常多的GPU处理器,而一台服务器中往往包括GPU处理器以及有CPU处理器。而CPU处理器更擅长整数运算,GPU处理器更擅长浮点运算。
但是,现有任务处理时却无法根据不同的应用场景调整合适的CPU和GPU之间的互联拓扑,以达到一个浮点运算(GPU优势项)和整数运算(CPU优势项)的合理配置,不利于提高CPU以及GPU的利用率以及任务处理效率。
发明内容
本发明为了解决现有技术中存在的问题,创新提出了一种基于侦测调节模块的GPU管理装置、方法及GPU服务器,有效解决由于现有技术造成无法根据不同的应用场景调整合适的CPU和GPU之间的互联拓扑,以达到一个浮点运算和整数运算的合理配置的问题,有效的提高了CPU以及GPU的利用率以及任务处理效率。
本发明第一方面提供了一种基于侦测调节模块的GPU管理装置,包括:CPU模块、CPU管理模块、转换模块、GPU模块、GPU管理模块、侦测调节模块,所述侦测调节模块的调节控制端分别与GPU管理模块、CPU管理模块的控制端通信连接,用于检测待处理的数据类型,并根据待处理的数据类型选择对应的GPU模块和/或CPU模块进行处理;所述CPU管理模块与CPU模块通信连接,用于实现对CPU模块的管理;所述GPU管理模块与GPU模块通信连接,用于实现对GPU模块的管理以及待处理任务的均衡分配;所述CPU模块通过转换模块与GPU模块通信连接。
可选地,所述GPU模块包括多个并联连接的GPU子模块,每个GPU子模块包括若干GPU以及加速卡,若干GPU与加速卡并联设置,多个GPU子模块之间以及若干GPU之间均通过GPU管理模块通信,共同完成GPU管理模块下发的数据处理任务。
进一步地,GPU管理模块包括多个GPU管理子模块,多个GPU管理子模块之间并联连接,且每个GPU管理子模块均与多个并联连接的GPU子模块通信连接。
可选地,还包括:功耗监测模块以及风扇控制模块,所述功耗监测模块的监测端与GPU模块连接,用于实时监测GPU模块的功耗,所述功耗监测模块的输出端与风扇控制模块的输入端连接,一旦监测GPU模块功耗超过设定阈值时,通过风扇控制模块增大风扇运行转速。
本发明第二方面提供了一种基于侦测调节模块的GPU管理方法,是基于本发明第一方面所述的基于侦测调节模块的GPU管理装置基础上实现的,包括:
将待处理的任务划分为整数运算以及浮点运算;
侦测调节模块侦测任务类型,如果是浮点运算任务,则优先通过GPU管理模块调用GPU模块实现数据的运算处理;如果是整数运算任务,则优先通过CPU管理模块调用CPU模块实现数据的运算处理;如果待处理的任务类型包括整数运算部分任务以及浮点运算部分任务,则将浮点运算部分任务优先通过GPU管理模块调用GPU模块实现数据的运算处理,将整数运算部分任务优先通过CPU管理模块调用CPU模块实现数据的运算处理。
可选地,当GPU管理模块接收到侦测调节模块分配的任务时,获取任务队列中优先级最高的任务,根据待处理任务优先级调度GPU模块中的GPU集群资源。
进一步地,根据待处理任务优先级调度GPU模块中的GPU集群资源具体包括:
GPU管理模块遍历GPU集群资源,如果当前GPU集群的空闲运算能力满足所述待处理任务对应的用户的最小运算能力要求,则将待处理任务分配至满足最小运算能力要求且需要的GPU数量最少的GPU集群中;如果当前GPU集群的空闲运算能力不能满足所述待处理任务对应的用户的最小运算能力要求,则根据任务优先级从小到大遍历当前执行任务,根据当前执行任务与待处理任务的优先级进行待处理任务调度。
进一步地,根据当前执行任务与待处理任务的优先级进行待处理任务调度具体包括:
如果所有的当前执行任务的优先级均大于或等于待处理任务的优先级,则待处理任务等待下一次调度;如果当前执行任务的优先级小于待处理任务的优先级,则依次计算处理当前执行任务的GPU集群的空闲运算能力和待释放运算能力的总和,如果当前执行任务的GPU集群的空闲运算能力和待释放运算能力的总和不满足所述待处理任务对应的用户的最小运算能力要求,则等待下一次调度;如果当前执行任务的GPU集群的空闲运算能力和待释放运算能力的总和满足所述待处理任务对应的用户的最小运算能力要求,则将待处理任务分配至满足最小运算能力要求且需要的GPU数量最少的GPU集群,并将所述GPU集群中待释放运算能力对应的当前执行任务保存后挂起。
可选地,还包括:
功耗监测模块实时获取GPU模块功耗,将当前GPU模块功耗值与设定功耗值进行比较,如果当前GPU模块功耗值大于设定功耗值,则控制风扇控制模块增大风扇转速。
本发明第三方面提供了一种GPU服务器,包括如第一方面所述的基于侦测调节模块的GPU管理装置。
本发明采用的技术方案包括以下技术效果:
1、本发明有效解决由于现有技术造成无法根据不同的应用场景调整合适的CPU和GPU之间的互联拓扑,以达到一个浮点运算和整数运算的合理配置的问题,有效的提高了CPU以及GPU的利用率以及任务处理效率。
2、本发明技术方案中多个GPU子模块之间以及若干GPU之间均通过GPU管理模块通信,共同完成GPU管理模块下发的数据处理任务,避免了多个GPU之间通信需要通过CPU模块的转换造成的通信效率低的问题,提高了GPU之间通信效率。
3、本发明技术方案中每个GPU管理子模块均与多个并联连接的GPU子模块通信连接,可以提升并行处理的带宽,使得GPU之间的互联带宽达到最佳性能。
4、本发明技术方案中风扇控制模块以及单独设置的功耗监测模块,所述功耗监测模块实时监测GPU模块的功耗,一旦监测GPU模块功耗超过设定阈值时,及时通过风扇控制模块增大风扇运行转速,避免因为GPU模块功耗变化剧烈,造成风扇控制模块散热不及时造成的发热问题,从而影响GPU使用效率。
应当理解的是以上的一般描述以及后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
为了更清楚说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍,显而易见的,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明方案中实施例一装置的结构示意图;
图2为本发明方案中实施例二方法的流程示意图;
图3为本发明方案中实施例三方法的流程示意图;
图4为本发明方案中实施例三方法中S6的流程示意图;
图5为本发明方案中实施例三方法中S64的流程示意图;
图6为本发明方案中实施例四方法的流程示意图;
图7为本发明方案中实施例五GPU服务器的结构示意图。
具体实施方式
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
实施例一
如图1所示,本发明提供了1、一种基于侦测调节模块的GPU管理装置,包括:CPU模块1、CPU管理模块2、转换模块3、GPU模块4、GPU管理模块5、侦测调节模块6,侦测调节模块6的调节控制端分别与GPU管理模块5、CPU管理模块2的控制端通信连接,用于检测待处理的数据类型,并根据待处理的数据类型选择对应的GPU模块1和/或CPU模块4进行处理;CPU管理模块2与CPU模块1通信连接,用于实现对CPU模块1的管理;GPU管理模块5与GPU模块4通信连接,用于实现对GPU模块4的管理以及待处理任务的均衡分配;CPU模块1通过转换模块3与GPU模块4通信连接。
具体地,GPU模块4包括多个并联连接的GPU子模块41,每个GPU子模块41包括若干GPU411以及加速卡412,若干GPU411与加速卡412并联设置,多个GPU子模块41之间以及若干GPU411之间均通过GPU管理模块5通信,共同完成GPU管理模块5下发的数据处理任务。
CPU在数字媒体处理和科学计算等计算密集型的应用领域执行效率高,而GPU在大规模数据的并行计算执行效率高。基于GPU的高效并行计算主要利用混合架构中CPU与GPU协作计算的模式。在混合架构的系统提高程序的执行性能,在多CPU和多GPU混合架构系统平台上,GPU与GPU之间不能直接的进行数据的传输,只能GPU通过转换模块先传输给CPU,再由CPU把相应的数据传输给另一个接收数据的GPU,这种通信方式将会带来巨大的通信开销。多个GPU子模块之间以及若干GPU之间均通过GPU管理模块通信,利用GPU管理模块5(起到切换和管理双重作用)任务将其均衡分配到各GPU,以防止GPU与GPU间高额的通信开销影响数据流程序的整体性能;多个GPU子模块之间以及若干GPU之间均通过GPU管理模块通信,共同完成GPU管理模块下发的数据处理任务,避免了多个GPU之间通信需要通过CPU模块的转换造成的通信效率低的问题,提高了GPU之间通信效率。
CPU模块1中至少包括两个CPU11,即CPU0、CPU1,转换模块3包括Retime芯片、PCIeSwitch芯片,Retime芯片串联于CPU与PCIe Switch芯片之间,一端与CPU连接,另一端与PCIe Switch芯片连接,主要用于信号中继,以保证信号进行无损传输,PCIe Switch芯片主要作用是通道转换作用;每个CPU11与两个转换模块3分别连接,每个转换模块3与对应GPU子模块41连接,对应地,GPU子模块41为4个,每个GPU子模块41包括两个GPU411以及一个加速卡412,即,从GPU0-GPU7,加速卡0-加速卡3,CPU0引出的一路PCIe X16经Retimer芯片和PCIe Switch芯片扩展为3路PCIe X16,分别连接到GPU0、GPU1和加速卡0;CPU0引出的另一路PCIe X16经Retimer芯片和PCIe Switch芯片扩展为3路PCIe X16,分别连接到GPU2、GPU3和加速卡1;CPU1引出的一路PCIe X16经Retimer芯片和PCIe Switch芯片扩展为3路PCIeX16,分别连接到GPU4、GPU5和加速卡3;CPU1引出的另一路PCIe X16经Retimer芯片和PCIeSwitch芯片扩展为3路PCIe X16,分别连接到GPU6、GPU7和加速卡3。GPU0…GPU7以及加速卡0…加速卡3均分别与GPU管理模块5连接。
GPU管理模块5包括多个GPU管理子模块51,多个GPU管理子模块51之间并联连接,且每个GPU管理子模块51均与多个并联连接的GPU子模块41通信连接。
为匹配本发明中GPU子模块41,GPU管理子模块51的数量可以为多个(一个也可以,但是带宽性能达不到最佳),具体地,可以是6个,每个GPU管理子模块51均与多个并联连接的GPU子模块通信连接,可以提升并行处理的带宽,使得GPU之间的互联带宽达到最佳性能。
进一步地,还包括:功耗监测模块7以及风扇控制模块8,功耗监测模块7的监测端与GPU模块4连接,用于实时监测GPU模块4的功耗,功耗监测模块7的输出端与风扇控制模块8的输入端连接,一旦监测GPU模块4功耗超过设定阈值时,通过风扇控制模块8增大风扇运行转速。
具体地,风扇控制模块8可以包括BMC81(基板管理控制器)、CPLD82(可编程逻辑器件)、风扇83,BMC81的控制输出端与风扇83的控制输入端连接,CPLD82的控制输出端与风扇的控制输入端连接,CPLD82的监测端与BMC81的故障输出端连接,BMC81正常情况下,控制风扇运行;一旦CPLD82监测到BMC故障时,CPLD82接替BMC81控制风扇运行。
本发明技术方案中风扇控制模块8以及单独设置的功耗监测模块7,功耗监测模块7实时监测GPU模块4的功耗,一旦监测GPU模块4功耗超过设定阈值时,及时通过风扇控制模块8增大风扇运行转速,避免因为GPU模块4功耗变化剧烈,造成风扇控制模块8散热不及时造成的发热问题,从而影响GPU使用效率。本发明单独设置功耗监测模块7的目的是为了缩短GPU模块功耗监测报警时间,因为BMC监测GPU模块4功耗时,因为BMC一般采用轮询方式获取GPU模块4的功耗,轮询周期大概需要1s,而GPU模块4功耗变化往往在us级别,因此如果采用BMC直接监控GPU功耗时,容易造成报警不及时,造成GPU模块4过热,而本发明技术方案中通过单独设置功耗监测模块7,可以有效在GPU模块4功耗发生巨大变化时,及时通知BMC进行风扇转速的调节,从而使GPU模块4得到及时的散热,避免因为散热问题影响GPU模块运行。
本发明有效解决由于现有技术造成无法根据不同的应用场景调整合适的CPU和GPU之间的互联拓扑,以达到一个浮点运算和整数运算的合理配置的问题,有效的提高了CPU以及GPU的利用率以及任务处理效率。
实施例二
如图2所示,本发明技术方案还提供了一种基于侦测调节模块的GPU管理方法,是基于本发明实施例一基础上实现的,包括:
S1,将待处理的任务划分为整数运算以及浮点运算;
S2,侦测调节模块侦测任务类型;
S3,如果是浮点运算任务,则优先通过GPU管理模块调用GPU模块实现数据的运算处理;
S4,如果是整数运算任务,则优先通过CPU管理模块调用CPU模块实现数据的运算处理;
S5,如果待处理的任务类型包括整数运算部分任务以及浮点运算部分任务,则将浮点运算部分任务优先通过GPU管理模块调用GPU模块实现数据的运算处理,将整数运算部分任务优先通过CPU管理模块调用CPU模块实现数据的运算处理。
本发明有效解决由于现有技术造成无法根据不同的应用场景调整合适的CPU和GPU之间的互联拓扑,以达到一个浮点运算和整数运算的合理配置的问题,有效的提高了CPU以及GPU的利用率以及任务处理效率。
实施例三
如图3所示,本发明技术方案还提供了一种基于侦测调节模块的GPU管理方法,是基于本发明实施例一基础上实现的,包括:
S1,将待处理的任务划分为整数运算以及浮点运算;
S2,侦测调节模块侦测任务类型;
S3,如果是浮点运算任务,则优先通过GPU管理模块调用GPU模块实现数据的运算处理;
S4,如果是整数运算任务,则优先通过CPU管理模块调用CPU模块实现数据的运算处理;
S5,如果待处理的任务类型包括整数运算部分任务以及浮点运算部分任务,则将浮点运算部分任务优先通过GPU管理模块调用GPU模块实现数据的运算处理,将整数运算部分任务优先通过CPU管理模块调用CPU模块实现数据的运算处理;
S6,当GPU管理模块接收到侦测调节模块分配的任务时,获取任务队列中优先级最高的任务,根据待处理任务优先级调度GPU模块中的GPU集群资源。
如图4所示,步骤S6具体包括:
S61,GPU管理模块遍历GPU集群资源;
S62,判断当前GPU集群的空闲运算能力满足所述待处理任务对应的用户的最小运算能力要求,如果判断结果为是,则执行步骤S63;如果判断结果为否,则执行步骤S64;
S63,将待处理任务分配至满足最小运算能力要求且需要的GPU数量最少的GPU集群中;
S64,根据任务优先级从小到大遍历当前执行任务,根据当前执行任务与待处理任务的优先级进行待处理任务调度。
在步骤S63中,如果至少4个GPU即可满足最小运算能力要求,则将待处理任务分配至对应的4个GPU中进行计算处理。
进一步地,如图5所示,S64具体包括:
S641,所有的当前执行任务的优先级是否均大于或等于待处理任务的优先级,如果判断结果为是,则执行步骤S642,如果判断结果为否,则执行步骤S643;
S642,待处理任务等待下一次调度;
S643,依次计算处理当前执行任务的GPU集群的空闲运算能力和待释放运算能力的总和;
S644,判断当前执行任务的GPU集群的空闲运算能力和待释放运算能力的总和是否满足所述待处理任务对应的用户的最小运算能力要求,如果判断结果为是,则执行步骤S645,如果判断结果为否,则执行步骤S646;
S645,将待处理任务分配至满足最小运算能力要求且需要的GPU数量最少的GPU集群,并将所述GPU集群中待释放运算能力对应的当前执行任务保存后挂起;
S646,等待下一次调度。
本发明技术方案中多个GPU子模块之间以及若干GPU之间均通过GPU管理模块通信,共同完成GPU管理模块下发的数据处理任务,避免了多个GPU之间通信需要通过CPU模块的转换造成的通信效率低的问题,提高了GPU之间通信效率。
本发明技术方案中每个GPU管理子模块均与多个并联连接的GPU子模块通信连接,可以提升并行处理的带宽,使得GPU之间的互联带宽达到最佳性能。
本发明实施例利用GPU管理模块将任务将其均衡分配到各个GPU中,以防止GPU与GPU之间间高额的通信开销影响数据流程序的整体性能,实现GPU之间负载均衡,保证了GPU的高效运行。
实施例四
如图6所示,本发明技术方案还提供了一种基于侦测调节模块的GPU管理方法,是基于本发明实施例一基础上实现的,包括:
S1,将待处理的任务划分为整数运算以及浮点运算;
S2,侦测调节模块侦测任务类型;
S3,如果是浮点运算任务,则优先通过GPU管理模块调用GPU模块实现数据的运算处理;
S4,如果是整数运算任务,则优先通过CPU管理模块调用CPU模块实现数据的运算处理;
S5,如果待处理的任务类型包括整数运算部分任务以及浮点运算部分任务,则将浮点运算部分任务优先通过GPU管理模块调用GPU模块实现数据的运算处理,将整数运算部分任务优先通过CPU管理模块调用CPU模块实现数据的运算处理;
S6,当GPU管理模块接收到侦测调节模块分配的任务时,获取任务队列中优先级最高的任务,根据待处理任务优先级调度GPU模块中的GPU集群资源;
S7,功耗监测模块实时获取GPU模块功耗,将当前GPU模块功耗值与设定功耗值进行比较,如果当前GPU模块功耗值大于设定功耗值,则控制风扇控制模块增大风扇转速。
本发明技术方案中风扇控制模块以及单独设置的功耗监测模块,所述功耗监测模块实时监测GPU模块的功耗,一旦监测GPU模块功耗超过设定阈值时,及时通过风扇控制模块增大风扇运行转速,避免因为GPU模块功耗变化剧烈,造成风扇控制模块散热不及时造成的发热问题,从而影响GPU使用效率。
实施例五
如图7所示,本发明技术方案还提供了一种GPU服务器,包括本发明实施例一的基于侦测调节模块的GPU管理装置。其中,GPU服务器的高度可以是4U,除了本发明实施例一的基于侦测调节模块的GPU管理装置,还可以包括分为CPU Board(CPU板,可以集成2个CPU)、GPU Board(GPU板,可以集成8个GPU)、Bridge Board(CPU板和GPU板互联连接器)、RiserBoard(扩展板)、PDB Board(电源背板)、冗余电源(4+4或者3+3PSU)等,也可以是其他GPU服务器结构,本发明在此不做限制。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

Claims (9)

1.一种基于侦测调节模块的GPU管理装置,其特征是,包括:CPU模块、CPU管理模块、转换模块、GPU模块、GPU管理模块、侦测调节模块,所述侦测调节模块的调节控制端分别与GPU管理模块、CPU管理模块的控制端通信连接,用于检测待处理的数据类型,并根据待处理的数据类型选择对应的GPU模块和/或CPU模块进行处理;所述CPU管理模块与CPU模块通信连接,用于实现对CPU模块的管理;所述GPU管理模块与GPU模块通信连接,用于实现对GPU模块的管理以及待处理任务的均衡分配;所述CPU模块通过转换模块与GPU模块通信连接;所述GPU模块包括多个并联连接的GPU子模块,每个GPU子模块包括若干GPU,若干GPU并联设置,多个GPU子模块之间以及若干GPU之间均通过GPU管理模块通信,共同完成GPU管理模块下发的数据处理任务;GPU管理模块包括多个GPU管理子模块,多个GPU管理子模块之间并联连接,且每个GPU管理子模块均与多个并联连接的GPU子模块通信连接;其中,GPU管理模块中GPU管理子模块的数量为6个。
2.根据权利要求1所述的基于侦测调节模块的GPU管理装置,其特征是,每个GPU子模块还包括加速卡,若干GPU与加速卡并联设置。
3.根据权利要求1或2所述的基于侦测调节模块的GPU管理装置,其特征是,还包括:功耗监测模块以及风扇控制模块,所述功耗监测模块的监测端与GPU模块连接,用于实时监测GPU模块的功耗,所述功耗监测模块的输出端与风扇控制模块的输入端连接,一旦监测GPU模块功耗超过设定阈值时,通过风扇控制模块增大风扇运行转速。
4.一种基于侦测调节模块的GPU管理方法,其特征是,是基于权利要求1-3任一所述的基于侦测调节模块的GPU管理装置基础上实现的,包括:
将待处理的任务划分为整数运算以及浮点运算;
侦测调节模块侦测任务类型,如果是浮点运算任务,则优先通过GPU管理模块调用GPU模块实现数据的运算处理;如果是整数运算任务,则优先通过CPU管理模块调用CPU模块实现数据的运算处理;如果待处理的任务类型包括整数运算部分任务以及浮点运算部分任务,则将浮点运算部分任务优先通过GPU管理模块调用GPU模块实现数据的运算处理,将整数运算部分任务优先通过CPU管理模块调用CPU模块实现数据的运算处理。
5.根据权利要求4所述的基于侦测调节模块的GPU管理方法,其特征是,当GPU管理模块接收到侦测调节模块分配的任务时,获取任务队列中优先级最高的任务,根据待处理任务优先级调度GPU模块中的GPU集群资源。
6.根据权利要求5所述的基于侦测调节模块的GPU管理方法,其特征是,根据待处理任务优先级调度GPU模块中的GPU集群资源具体包括:
GPU管理模块遍历GPU集群资源,如果当前GPU集群的空闲运算能力满足所述待处理任务对应的用户的最小运算能力要求,则将待处理任务分配至满足最小运算能力要求且需要的GPU数量最少的GPU集群中;如果当前GPU集群的空闲运算能力不能满足所述待处理任务对应的用户的最小运算能力要求,则根据任务优先级从小到大遍历当前执行任务,根据当前执行任务与待处理任务的优先级进行待处理任务调度。
7.根据权利要求6所述的基于侦测调节模块的GPU管理方法,其特征是,根据当前执行任务与待处理任务的优先级进行待处理任务调度具体包括:
如果所有的当前执行任务的优先级均大于或等于待处理任务的优先级,则待处理任务等待下一次调度;如果当前执行任务的优先级小于待处理任务的优先级,则依次计算处理当前执行任务的GPU集群的空闲运算能力和待释放运算能力的总和,如果当前执行任务的GPU集群的空闲运算能力和待释放运算能力的总和不满足所述待处理任务对应的用户的最小运算能力要求,则等待下一次调度;如果当前执行任务的GPU集群的空闲运算能力和待释放运算能力的总和满足所述待处理任务对应的用户的最小运算能力要求,则将待处理任务分配至满足最小运算能力要求且需要的GPU数量最少的GPU集群,并将所述GPU集群中待释放运算能力对应的当前执行任务保存后挂起。
8.根据权利要求5-7任一所述的基于侦测调节模块的GPU管理方法,其特征是,还包括:
功耗监测模块实时获取GPU模块功耗,将当前GPU模块功耗值与设定功耗值进行比较,如果当前GPU模块功耗值大于设定功耗值,则控制风扇控制模块增大风扇转速。
9.一种GPU服务器,其特征是,包括如权利要求1-3任一所述的基于侦测调节模块的GPU管理装置。
CN202010767363.3A 2020-08-03 2020-08-03 一种基于侦测调节模块的gpu管理装置、方法及gpu服务器 Active CN112000468B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010767363.3A CN112000468B (zh) 2020-08-03 2020-08-03 一种基于侦测调节模块的gpu管理装置、方法及gpu服务器
PCT/CN2021/096546 WO2022028061A1 (zh) 2020-08-03 2021-05-27 一种基于侦测调节模块的gpu管理装置、方法及gpu服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010767363.3A CN112000468B (zh) 2020-08-03 2020-08-03 一种基于侦测调节模块的gpu管理装置、方法及gpu服务器

Publications (2)

Publication Number Publication Date
CN112000468A CN112000468A (zh) 2020-11-27
CN112000468B true CN112000468B (zh) 2023-02-24

Family

ID=73463606

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010767363.3A Active CN112000468B (zh) 2020-08-03 2020-08-03 一种基于侦测调节模块的gpu管理装置、方法及gpu服务器

Country Status (2)

Country Link
CN (1) CN112000468B (zh)
WO (1) WO2022028061A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000468B (zh) * 2020-08-03 2023-02-24 苏州浪潮智能科技有限公司 一种基于侦测调节模块的gpu管理装置、方法及gpu服务器
CN113194048B (zh) * 2021-04-16 2023-05-26 山东英信计算机技术有限公司 一种动态切换cpu与gpu拓扑的装置及使用方法
CN113504966B (zh) * 2021-06-22 2023-10-31 中国科学院计算技术研究所 Gpu集群调度策略模拟方法及gpu集群模拟器
CN115269209B (zh) * 2022-09-30 2023-01-10 浙江宇视科技有限公司 一种gpu集群调度方法及服务器
CN115373860B (zh) * 2022-10-26 2023-01-10 小米汽车科技有限公司 Gpu任务的调度方法、装置、设备和存储介质
CN117170878B (zh) * 2023-10-31 2024-01-26 北京蓝耘科技股份有限公司 一种动态调整cpu和gpu缓存的方法
CN117311989B (zh) * 2023-11-28 2024-02-02 四川并济科技有限公司 一种gpu集群动态功率管理系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101901042A (zh) * 2010-08-27 2010-12-01 上海交通大学 多gpu系统中基于动态任务迁移技术的降功耗方法
CN103365726A (zh) * 2013-07-08 2013-10-23 华中科技大学 一种面向gpu集群的资源管理方法和系统
CN109033001A (zh) * 2018-07-17 2018-12-18 北京百度网讯科技有限公司 用于分配gpu的方法和装置
CN110908799A (zh) * 2019-11-08 2020-03-24 浪潮电子信息产业股份有限公司 一种分布式训练中的通信方法、装置、设备、介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2887219A1 (en) * 2013-12-23 2015-06-24 Deutsche Telekom AG System and method for mobile augmented reality task scheduling
CN107135257A (zh) * 2017-04-28 2017-09-05 东方网力科技股份有限公司 一种节点集群中任务分配的方法、节点和系统
CN112000468B (zh) * 2020-08-03 2023-02-24 苏州浪潮智能科技有限公司 一种基于侦测调节模块的gpu管理装置、方法及gpu服务器

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101901042A (zh) * 2010-08-27 2010-12-01 上海交通大学 多gpu系统中基于动态任务迁移技术的降功耗方法
CN103365726A (zh) * 2013-07-08 2013-10-23 华中科技大学 一种面向gpu集群的资源管理方法和系统
CN109033001A (zh) * 2018-07-17 2018-12-18 北京百度网讯科技有限公司 用于分配gpu的方法和装置
CN110908799A (zh) * 2019-11-08 2020-03-24 浪潮电子信息产业股份有限公司 一种分布式训练中的通信方法、装置、设备、介质

Also Published As

Publication number Publication date
WO2022028061A1 (zh) 2022-02-10
CN112000468A (zh) 2020-11-27

Similar Documents

Publication Publication Date Title
CN112000468B (zh) 一种基于侦测调节模块的gpu管理装置、方法及gpu服务器
CN108762896B (zh) 一种基于Hadoop集群任务调度方法及计算机设备
US20160378570A1 (en) Techniques for Offloading Computational Tasks between Nodes
US20130198389A1 (en) Dynamic resource adjustment for a distributed process on a multi-node computer system
KR20190058619A (ko) 고성능 컴퓨팅 시스템 및 방법
CN108345555B (zh) 基于高速串行通信的接口桥接电路及其方法
CN104102548A (zh) 任务资源调度处理方法和系统
US7877620B2 (en) Managing power in a parallel computer
CN110851337B (zh) 适用于vpx架构的高带宽多通道的多dsp计算刀片装置
CN107132903B (zh) 一种节能管理实现方法、装置及网络设备
CN117215801B (zh) 一种适用于多核处理器的片上负载性能优化装置
US20220357786A1 (en) Method and system for reducing power consumption by automatically allocating computing resources on the basis of component temperature
US20240073100A1 (en) Isolation method for high-performance computer system, and high-performance computer system
CN113608607B (zh) 多节点服务器控制方法和多节点服务器
CN110647399A (zh) 一种基于人工智能网络的高性能计算系统及方法
CN114115140B (zh) 多核主控制器、主辅多核控制器间数据同步系统和方法
CN112148663A (zh) 一种数据交换芯片及服务器
CN113032098B (zh) 一种虚拟机调度方法、装置、设备及可读存储介质
Wu et al. BPCM: a flexible high-speed bypass parallel communication mechanism for GPU cluster
CN113822485A (zh) 一种配电网调度任务优化方法及系统
CN114625534B (zh) 基于灵活配置实现性能提优的复杂算力系统并行处理系统
CN116594785B (zh) 一种基于硬件的服务器半虚拟化方法
CN117978759B (zh) 一种互联装置、高性能交换装置及大模型一体机
CN107122268A (zh) 一种基于numa多物理层分区处理系统
CN117687956B (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