CN111858241B - 一种fpga云平台的监控方法、装置、设备及存储介质 - Google Patents

一种fpga云平台的监控方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN111858241B
CN111858241B CN202010663082.3A CN202010663082A CN111858241B CN 111858241 B CN111858241 B CN 111858241B CN 202010663082 A CN202010663082 A CN 202010663082A CN 111858241 B CN111858241 B CN 111858241B
Authority
CN
China
Prior art keywords
fpga
information
task
power consumption
current target
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
CN202010663082.3A
Other languages
English (en)
Other versions
CN111858241A (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.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry 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 Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN202010663082.3A priority Critical patent/CN111858241B/zh
Publication of CN111858241A publication Critical patent/CN111858241A/zh
Application granted granted Critical
Publication of CN111858241B publication Critical patent/CN111858241B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • 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)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Abstract

本发明公开了一种FPGA云平台的监控方法、装置、设备及计算机可读存储介质,该方法包括:获取预设FPGA资源池中的目标FPGA的状态信息;根据状态信息,确定每个目标FPGA对应的控制信息;其中,控制信息包括温度信息和功耗信息;根据控制信息,控制目标FPGA的任务执行状态;本发明通过根据获取的状态信息,确定每个目标FPGA对应的控制信息,能够监测运行有任务的FPGA对应的包含温度信息和功耗信息的控制信息;通过根据控制信息,控制目标FPGA的任务执行状态,能够根据温度信息和功耗信息动态管理FPGA板卡的负载,从而实现对FPGA板卡的保护,减少FPGA板卡down机甚至器件损坏问题,提升用户体验。

Description

一种FPGA云平台的监控方法、装置、设备及存储介质
技术领域
本发明涉及监控技术领域,特别涉及一种FPGA云平台的监控方法、装置、设备及计算机可读存储介质。
背景技术
随着现代社会科技的发展,大数据和AI(Artificial Intelligence,人工智能)得到了迅猛发展,尤其是深度学习领域,传统CPU(中央处理器)已经不能满足计算需求。需要FPGA(Field-Programmable Gate Array,现场可编程门阵列)和GPU(GraphicsProcessing Unit,图形处理器)等硬件支持。随着FPGA处理能力的不断增强,越来越多的数据中心开始使用FPGA进行加速。为了使FPGA资源得到充分利用,通常会让FPGA长期高频高压的高负荷运行,使得FPGA板卡温度过高,导致FPGA板卡down机甚至器件损坏问题。
因此,如何能够对FPGA板卡提供一种保护机制,减少FPGA芯片过热导致的FPGA板卡down机甚至器件损坏问题,提升用户体验,是现今急需解决的问题。
发明内容
本发明的目的是提供一种FPGA云平台的监控方法、装置、设备及计算机可读存储介质,以保护FPGA板卡,减少FPGA芯片过热导致的FPGA板卡down机甚至器件损坏问题,提升用户体验。
为解决上述技术问题,本发明提供一种FPGA云平台的监控方法,包括:
获取预设FPGA资源池中的目标FPGA的状态信息;其中,所述目标FPGA包括所述预设FPGA资源池中运行有任务的FPGA,所述状态信息包括功率信息、资源使用率信息和板卡温度信息;
根据所述状态信息,确定每个所述目标FPGA对应的控制信息;其中,所述控制信息包括温度信息和功耗信息;
根据所述控制信息,控制所述目标FPGA的任务执行状态。
可选的,所述根据所述控制信息,控制所述目标FPGA的任务执行状态,包括:
根据所述控制信息,控制k8s环境中每个所述目标FPGA对应的容器。
可选的,所述温度信息包括高温档位、中温档位和低温档位,所述功耗信息包括高功耗档位、中功耗档位和低功耗档位时,所述根据所述控制信息,控制k8s环境中每个所述目标FPGA对应的容器,包括:
若当前目标FPGA对应的温度信息和功耗信息分别为所述高温档位和所述高功耗档位,则控制当前目标FPGA对应的容器进行降功耗操作;其中,当前目标FPGA为任一所述目标FPGA
若当前目标FPGA对应的温度信息不为所述高温档位且当前目标FPGA对应的功耗信息为所述低功耗档位,或当前目标FPGA对应的温度信息和功耗信息分别为所述低温档位和所述中功耗档位,则控制当前目标FPGA对应的容器进行升功耗操作。
可选的,所述控制当前目标FPGA对应的容器进行降功耗操作,包括:
在所述k8s环境中启动新的运行目标任务的容器,并关闭当前目标FPGA对应的容器;其中,所述目标任务为当前目标FPGA对应的容器运行的任务,所述目标任务的容器与选择FPGA相对应,所述选择FPGA为所述预设FPGA资源池中任一未执行任务的FPGA。
可选的,所述控制当前目标FPGA对应的容器进行降功耗操作,包括:
当前目标FPGA为第一FPGA时,调整当前目标FPGA的主频和电压运行对应的低水平范围,并调整当前目标FPGA对应的容器运行的任务的QPS为低QPS阈值,使超过所述低QPS阈值的任务请求分配到同任务FPGA对应的容器;其中,所述第一FPGA对应的容器与所述同任务FPGA对应的容器运行相同的任务;
当前目标FPGA为第二FPGA时,调整当前目标FPGA的主频和电压运行对应的低水平范围,将任务切换FPGA对应的容器运行的任务切换为当前目标FPGA对应的容器运行的任务,并调整当前目标FPGA对应的容器运行的任务的QPS为低QPS阈值,使超过所述低QPS阈值的任务请求分配到所述任务切换FPGA;其中,所述第二FPGA执行单独的任务,所述任务切换FPGA为所述目标FPGA中对应的温度信息和功耗信息分别为所述高温档位和所述高功耗档位的FPGA。
可选的,所述控制当前目标FPGA对应的容器进行降功耗操作,包括:
当前目标FPGA为第二FPGA时,将当前目标FPGA对应的容器运行的任务与目标第二FPGA对应的容器运行的任务进行互换;其中,所述第二FPGA执行单独的任务,所述目标第二FPGA为所述目标FPGA中的一个执行单独的任务且对应的温度信息和功耗信息分别为所述低温档位和所述低功耗档位的FPGA。
可选的,所述目标FPGA为所述预设FPGA资源池中的全部FPGA时,所述获取预设FPGA资源池中的目标FPGA的状态信息,包括:
通过FPGA云接口向所述预设FPGA资源池中的全部FPGA发送状态传输命令;
接收所述预设FPGA资源池的每个FPGA发送的各自对应的状态信息。
本发明还提供了一种FPGA云平台的监控装置,包括:
获取模块,用于获取预设FPGA资源池中的目标FPGA的状态信息;其中,所述目标FPGA包括所述预设FPGA资源池中运行有任务的FPGA,所述状态信息包括功率信息、资源使用率信息和板卡温度信息;
确定模块,用于根据所述状态信息,确定每个所述目标FPGA对应的控制信息;其中,所述控制信息包括温度信息和功耗信息;
控制模块,用于根据所述控制信息,控制所述目标FPGA的任务执行状态。
本发明还提供了一种FPGA云平台的监控设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述所述的FPGA云平台的监控方法的步骤。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的FPGA云平台的监控方法的步骤。
本发明所提供的一种FPGA云平台的监控方法,包括:获取预设FPGA资源池中的目标FPGA的状态信息;其中,目标FPGA包括预设FPGA资源池中运行有任务的FPGA,状态信息包括功率信息、资源使用率信息和板卡温度信息;根据状态信息,确定每个目标FPGA对应的控制信息;其中,控制信息包括温度信息和功耗信息;根据控制信息,控制目标FPGA的任务执行状态;
可见,本发明通过根据获取的状态信息,确定每个目标FPGA对应的控制信息,能够监测运行有任务的FPGA对应的包含温度信息和功耗信息的控制信息;通过根据控制信息,控制目标FPGA的任务执行状态,能够根据温度信息和功耗信息动态管理FPGA板卡的负载,从而实现对FPGA板卡的保护,减少FPGA芯片过热导致的FPGA板卡down机甚至器件损坏问题,提升用户体验。此外,本发明还提供了一种FPGA云平台的监控装置、设备及计算机可读存储介质,同样具有上述有益效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例所提供的一种FPGA云平台的监控方法的流程图;
图2为本发明实施例所提供的一种FPGA云平台的监控装置的结构框图;
图3为本发明实施例所提供的一种FPGA云平台的监控设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例所提供的一种FPGA云平台的监控方法的流程图。该方法可以包括:
步骤101:获取预设FPGA资源池中的目标FPGA的状态信息;其中,目标FPGA包括预设FPGA资源池中运行有任务的FPGA,状态信息包括功率信息、资源使用率信息和板卡温度信息。
可以理解的是,本步骤中的预设FPGA资源池可以为预先设置的FPGA云平台对应的包含有多个FPGA的FPGA资源池,即FPGA云平台可以对预设FPGA资源池中的FPGA进行分配和管理。本步骤中的目标FPGA可以为预设FPGA资源池中运行有任务的FPGA,如FPGA云平台中k8s(kubernetes,一种容器编排引擎)环境下对应的容器(docker)运行有任务的FPGA。本步骤中的状态信息可以为FPGA当前状态的信息,如当前功率(即功率信息)、当前资源使用率(即资源使用率信息)和当前板卡温度(即板卡温度信息)等。
具体的,本步骤的目的可以为运行有FPGA云平台管理平台的设备(如服务器)中的处理器通过获取FPGA云平台对应的预设FPGA资源池中的目标FPGA的状态信息,确定预设FPGA资源池中的目标FPGA的当前状态。
对应的,对于本步骤中目标FPGA的具体选择,可以由设计人员或用户根据实用场景和用户需求自行设置,如目标FPGA可以仅包括预设FPGA资源池中运行有任务的FPGA;目标FPGA也可以包括预设FPGA资源池中未运行有任务的FPGA,如目标FPGA可以为预设FPGA资源池中的全部FPGA,即本步骤中运行有运行有FPGA云平台管理平台的设备的处理器可以获取预设FPGA资源池全部FPGA的状态信息;例如处理器可以通过FPGA云接口向预设FPGA资源池中的全部FPGA发送状态传输命令;接收预设FPGA资源池的每个FPGA发送的各自对应的状态信息,即FPGA云平台管理平台的处理器通过FPGA云接口发送广播命令获取预设FPGA资源池中的所有FPGA实时状态。
需要说明的是,对于本步骤中处理器获取的目标FPGA的状态信息的具体数据类型,可以由设计人员自行设置,如状态信息可以包括用于确定控制信息中温度信息的板卡温度信息(即FPGA板卡的温度信息)和用于确定控制信息中功耗信息的功率信息和资源使用率信息;状态信息还可以包括用于确定控制信息中温度信息的其他温度信息和/或用于确定控制信息中功耗信息的FPGA的其他使用信息;状态信息还可以包括用于确定控制信息中的其他信息所对应的信息。只要处理器可以利用每个目标FPGA对应的状态信息,确定每个目标FPGA对应的包含有温度信息和功耗信息的控制信息,本实施例对此不做任何限制。
具体的,对于本步骤中处理器获取目标FPGA的状态信息的具体方式,可以由设计人员自行设置,如状态信息为预设时间段内若干采集点的平均值时,本步骤中处理器可以直接接收目标FPGA发送的各自的状态信息,例如每个目标FPGA可以在预设时间段内实时采集各自的状态(如功率、资源使用率和板卡温度等),将预设时间段内采集的状态的平均值(如平均功率、平均资源使用率和平均板卡温度等)作为状态信息发送给处理器;处理器也可以根据接收的目标FPGA发送的各自的原始状态信息,确定目标FPGA的状态信息,例如处理器可以根据目标FPGA实时发送的各自的原始状态信息,计算预设时间段内每个目标FPGA发送的原始状态信息的平均值,作为每个目标FPGA的状态信息。本实施例对此不做任何限制。
步骤102:根据状态信息,确定每个目标FPGA对应的控制信息;其中,控制信息包括温度信息和功耗信息。
可以理解的是,本步骤的目的可以为处理器根据获取的目标FPGA的状态信息,确定用于控制目标FPGA的任务执行状态的控制信息。对于控制信息的具体数据类型,可以由设计人员自行设置,如控制信息可以包括温度信息和功耗信息(如FPGA的主频功耗信息),控制信息还可以包括其他信息,只要处理器可以利用确定的控制信息,控制对应的目标FPGA的任务执行状态,本实施例对此不做任何限制。
具体的,对于本步骤中确定的目标FPGA对应的控制信息的具体内容,可以由设计人员自行设置,如温度信息可以具体为温度档位信息,即按温度区间划分的档位信息,如温度信息可以包括高温档位、中温档位和低温档位这三档;功耗信息可以具体为功耗档位信息,即按功耗区间划分的档位信息,如功耗信息可以包括高功耗档位、中功耗档位和低功耗档位这三档。本实施例对此不做任何限制。
对应的,对于本步骤中处理器根据状态信息,确定每个目标FPGA对应的控制信息的具体方式,可以由设计人员自行设置,如可以采用与现有技术中温度和功耗计算方式相同或相似的方式实现,本实施例对此不做任何限制。
步骤103:根据控制信息,控制目标FPGA的任务执行状态。
可以理解的是,本步骤的目的可以为处理器根据确定的每个目标FPGA对应的包含有温度信息和功耗信息的控制信息,控制每个目标FPGA的任务执行状态,从而实现对FPGA板卡的保护,减少FPGA芯片过热导致的FPGA板卡down机甚至器件损坏问题。
具体的,对于本步骤中运行有FPGA云平台管理平台的设备中的处理器控制目标FPGA的任务执行状态的具体方式,可以由设计人员自行设置,如处理器可以通过控制每个目标FPGA在FPGA云平台的k8s环境中对应的容器,实现对每个目标FPGA的任务执行状态的控制,即本步骤之前还可以包括在FPGA云平台配置k8s环境,在配置的k8s环境中构建每个目标FPGA对应的容器(docker),并将每个目标FPGA的运行依赖添加到对应的容器中的步骤;由于FPGA云平台中目标FPGA经过容器进行虚拟化,且容器本身轻量易管理,因此可以方便的基于K8s进行管理调度。
需要说明的是,对于本步骤中处理器根据控制信息,控制目标FPGA的任务执行状态的具体过程,可以由设计人员根据使用场景和用户需求自行设置,以控制信息中的温度信息包括高温档位、中温档位和低温档位,控制信息中的功耗信息包括高功耗档位、中功耗档位和低功耗档位为例,可以采用下表的控制策略,控制目标FPGA的任务执行状态:
表1一种任务执行状态的控制策略
温度\主频 Max*0.75--MAX Max*0.5--Max*0.75 <Max*0.5
High 降压降频 维持现状 维持现状
Middle 维持现状 维持现状 升压升频
Normal 维持现状 升压升频 升压升频
如上表所示,当前目标FPGA对应的温度信息和功耗信息分别为高温档位(High)和高功耗档位(0.75倍最大功耗至最大功耗)时,处理器可以控制当前目标FPGA降压降频,从而降低当前目标FPGA的温度和功耗,如处理器可以控制k8s环境中当前目标FPGA对应的容器进行降功耗操作;当前目标FPGA对应的温度信息不为高温档位且当前目标FPGA对应的功耗信息为低功耗档位(小于0.5倍最大功耗),或当前目标FPGA对应的温度信息和功耗信息分别为低温档位(Normal)和中功耗档位(0.5倍最大功耗至0.75倍最大功耗)时,则处理器可以控制当前目标FPGA升压升频,从而提高当前目标FPGA的温度和功耗,如控制k8s环境中当前目标FPGA对应的容器进行升功耗操作;当前目标FPGA对应的温度信息和功耗信息为其他情况(如上表中其他维持现状对应的情况)时,处理器可以控制当前目标FPGA维持现状,如处理器可以控制k8s环境中当前目标FPGA对应的容器维持现状。
具体的,对于上述处理器控制当前目标FPGA降压降频或控制当前目标FPGA升压升频的具体方式,可以由设计人员自行设置,如处理器可以控制k8s环境中当前目标FPGA对应的容器进行降功耗操作,实现对当前目标FPGA的降压降频。例如处理器可以在k8s环境中启动新的运行目标任务的容器,并关闭当前目标FPGA对应的容器;其中,目标任务为当前目标FPGA对应的容器运行的任务,目标任务的容器与选择FPGA相对应,选择FPGA为预设FPGA资源池中任一未执行任务的FPGA;也就是说,处理器可以从预设FPGA资源池选择一个未执行任务的FPGA作为选择FPGA,通过k8s环境启动与当前目标FPGA对应的容器运行同样任务的新的选择FPGA对应的容器,并将当前目标FPGA对应的容器关闭。
对应的,当前目标FPGA为第一FPGA时,处理器也可以调整当前目标FPGA的主频和电压运行对应的低水平范围,并调整当前目标FPGA对应的容器运行的任务的QPS为低QPS阈值,使超过低QPS阈值的任务请求分配到同任务FPGA对应的容器;其中,第一FPGA对应的容器与同任务FPGA对应的容器运行相同的任务。也就是说,当前目标FPGA处于高功率且高温状态,若有其他FPGA(即同任务FPGA)对应的容器一同执行相同任务,则处理器可以向当前目标FPGA发送降频降压操作指令,将当前目标FPGA的主频和电压运行在较低水平达,降低该任务的QPS(每秒请求数量),保证用户正常的时延,将超过QPS的请求指派到运行同样任务的容器,通过多块FPGA运行相同任务以保证任务的吞吐量和实时性。
当前目标FPGA为第二FPGA时,调整当前目标FPGA的主频和电压运行对应的低水平范围,将任务切换FPGA对应的容器运行的任务切换为当前目标FPGA对应的容器运行的任务,并调整当前目标FPGA对应的容器运行的任务的QPS为低QPS阈值,使超过低QPS阈值的任务请求分配到任务切换FPGA;其中,第二FPGA执行单独的任务,任务切换FPGA为目标FPGA中对应的温度信息和功耗信息分别为高温档位和高功耗档位的FPGA。也就是说,若当前目标FPGA处于高功率且高温状态,且当前目标FPGA执行单独的任务,没有其他FPGA运行相同的任务,则处理器可以向当前目标FPGA发送降频降压操作指令,将当前目标FPGA的主频和电压运行在较低水平达的同时为了满足用户需求,将处于同样高功率高温状态的FPGA(即任务切换FPGA)任务切换到同样的任务,通过多块FPGA运行相同任务以保证任务的吞吐量和实时性。
相应的,处理器还可以在当前目标FPGA为第二FPGA时,将当前目标FPGA对应的容器运行的任务与目标第二FPGA对应的容器运行的任务进行互换;其中,第二FPGA执行单独的任务,目标第二FPGA为目标FPGA中的一个执行单独的任务且对应的温度信息和功耗信息分别为低温档位和低功耗档位的FPGA。若当前目标FPGA处于高功率且高温状态,且当前目标FPGA执行单独的任务,没有其他FPGA运行相同的任务,则处理器可以将当前目标FPGA承载的任务与处于温度低且低功率状态的FPGA承载的任务互换。
可以理解的是,上述过程是以处理器控制当前目标FPGA降压降频的多种方式为例进行展示,对于处理器控制当前目标FPGA升压升频的过程,可以采用与上述过程相对应的方式实现,使当前目标FPGA承担更多的负载。本实施例对此不做任何限制。
本实施例中,本发明实施通过根据获取的状态信息,确定每个目标FPGA对应的控制信息,能够监测运行有任务的FPGA对应的包含温度信息和功耗信息的控制信息;通过根据控制信息,控制目标FPGA的任务执行状态,能够根据温度信息和功耗信息动态管理FPGA板卡的负载,从而实现对FPGA板卡的保护,减少FPGA芯片过热导致的FPGA板卡down机甚至器件损坏问题,提升用户体验。
请参考图2,图2为本发明实施例所提供的一种FPGA云平台的监控装置的结构框图。该装置可以包括:
获取模块10,用于获取预设FPGA资源池中的目标FPGA的状态信息;其中,目标FPGA包括预设FPGA资源池中运行有任务的FPGA,状态信息包括功率信息、资源使用率信息和板卡温度信息;
确定模块20,用于根据状态信息,确定每个目标FPGA对应的控制信息;其中,控制信息包括温度信息和功耗信息;
控制模块30,用于根据控制信息,控制目标FPGA的任务执行状态。
可选的,控制模块30,可以包括:
容器控制子模块,用于根据控制信息,控制k8s环境中每个目标FPGA对应的容器。
可选的,温度信息包括高温档位、中温档位和低温档位,功耗信息包括高功耗档位、中功耗档位和低功耗档位时,容器控制子模块,可以包括:
降功耗单元,用于若当前目标FPGA对应的温度信息和功耗信息分别为高温档位和高功耗档位,则控制当前目标FPGA对应的容器进行降功耗操作;其中,当前目标FPGA为任一目标FPGA
升功耗单元,用于若当前目标FPGA对应的温度信息不为高温档位且当前目标FPGA对应的功耗信息为低功耗档位,或当前目标FPGA对应的温度信息和功耗信息分别为低温档位和中功耗档位,则控制当前目标FPGA对应的容器进行升功耗操作。
可选的,降功耗单元,可以包括:
第一降功耗子单元,用于在k8s环境中启动新的运行目标任务的容器,并关闭当前目标FPGA对应的容器;其中,目标任务为当前目标FPGA对应的容器运行的任务,目标任务的容器与选择FPGA相对应,选择FPGA为预设FPGA资源池中任一未执行任务的FPGA。
可选的,降功耗单元,可以包括:
第二降功耗子单元,用于在当前目标FPGA为第一FPGA时,调整当前目标FPGA的主频和电压运行对应的低水平范围,并调整当前目标FPGA对应的容器运行的任务的QPS为低QPS阈值,使超过低QPS阈值的任务请求分配到同任务FPGA对应的容器;其中,第一FPGA对应的容器与同任务FPGA对应的容器运行相同的任务;
第三降功耗子单元,用于当前目标FPGA为第二FPGA时,调整当前目标FPGA的主频和电压运行对应的低水平范围,将任务切换FPGA对应的容器运行的任务切换为当前目标FPGA对应的容器运行的任务,并调整当前目标FPGA对应的容器运行的任务的QPS为低QPS阈值,使超过低QPS阈值的任务请求分配到任务切换FPGA;其中,第二FPGA执行单独的任务,任务切换FPGA为目标FPGA中对应的温度信息和功耗信息分别为高温档位和高功耗档位的FPGA。
可选的,降功耗单元,可以包括:
第四降功耗子单元,用于当前目标FPGA为第二FPGA时,将当前目标FPGA对应的容器运行的任务与目标第二FPGA对应的容器运行的任务进行互换;其中,第二FPGA执行单独的任务,目标第二FPGA为目标FPGA中的一个执行单独的任务且对应的温度信息和功耗信息分别为低温档位和低功耗档位的FPGA。
可选的,目标FPGA为预设FPGA资源池中的全部FPGA时,获取模块10可以具体用于通过FPGA云接口向预设FPGA资源池中的全部FPGA发送状态传输命令;接收预设FPGA资源池的每个FPGA发送的各自对应的状态信息。
本实施例中,本发明实施通过确定模块20根据获取的状态信息,确定每个目标FPGA对应的控制信息,能够监测运行有任务的FPGA对应的包含温度信息和功耗信息的控制信息;通过控制模块30根据控制信息,控制目标FPGA的任务执行状态,能够根据温度信息和功耗信息动态管理FPGA板卡的负载,从而实现对FPGA板卡的保护,减少FPGA芯片过热导致的FPGA板卡down机甚至器件损坏问题,提升用户体验。
请参考图3,图3为本发明实施例所提供的一种FPGA云平台的监控设备的结构示意图。该设备1可以包括:
存储器11,用于存储计算机程序;处理器12,用于执行该计算机程序时实现如上述实施例所提供的FPGA云平台的监控方法的步骤。
设备1(如服务器)可以包括存储器11、处理器12和总线13。
其中,存储器11至少包括一种类型的可读存储介质,该可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是设备1的内部存储单元,例如服务器的硬盘。存储器11在另一些实施例中也可以是设备1的外部存储设备,例如服务器上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括设备1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于设备1的应用软件及各类数据,例如:执行FPGA云平台的监控方法的程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行FPGA云平台的监控方法的程序的代码等。
该总线13可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,设备还可以包括网络接口14,网络接口14可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该设备1与其他电子设备之间建立通信连接。
可选地,该设备1还可以包括用户接口15,用户接口15可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口15还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在设备1中处理的信息以及用于显示可视化的用户界面。
图3仅示出了具有组件11-15的设备1,本领域技术人员可以理解的是,图3示出的结构并不构成对设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
此外,本发明实施例还公开了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现如上述实施例所提供的FPGA云平台的监控方法的步骤。
其中,该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
以上对本发明所提供的一种FPGA云平台的监控方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (7)

1.一种FPGA云平台的监控方法,其特征在于,包括:
获取预设FPGA资源池中的目标FPGA的状态信息;其中,所述目标FPGA包括所述预设FPGA资源池中运行有任务的FPGA,所述状态信息包括功率信息、资源使用率信息和板卡温度信息;
根据所述状态信息,确定每个所述目标FPGA对应的控制信息;其中,所述控制信息包括温度信息和功耗信息;
根据所述控制信息,控制所述目标FPGA的任务执行状态;
所述根据所述控制信息,控制所述目标FPGA的任务执行状态,包括:
根据所述控制信息,控制k8s环境中每个所述目标FPGA对应的容器;
所述温度信息包括高温档位、中温档位和低温档位,所述功耗信息包括高功耗档位、中功耗档位和低功耗档位时,所述根据所述控制信息,控制k8s环境中每个所述目标FPGA对应的容器,包括:
若当前目标FPGA对应的温度信息和功耗信息分别为所述高温档位和所述高功耗档位,则控制当前目标FPGA对应的容器进行降功耗操作;其中,当前目标FPGA为任一所述目标FPGA;
若当前目标FPGA对应的温度信息不为所述高温档位且当前目标FPGA对应的功耗信息为所述低功耗档位,或当前目标FPGA对应的温度信息和功耗信息分别为所述低温档位和所述中功耗档位,则控制当前目标FPGA对应的容器进行升功耗操作;
所述控制当前目标FPGA对应的容器进行降功耗操作,包括:
当前目标FPGA为第一FPGA时,调整当前目标FPGA的主频和电压运行对应的低水平范围,并调整当前目标FPGA对应的容器运行的任务的QPS为低QPS阈值,使超过所述低QPS阈值的任务请求分配到同任务FPGA对应的容器;其中,所述第一FPGA对应的容器与所述同任务FPGA对应的容器运行相同的任务;
当前目标FPGA为第二FPGA时,调整当前目标FPGA的主频和电压运行对应的低水平范围,将任务切换FPGA对应的容器运行的任务切换为当前目标FPGA对应的容器运行的任务,并调整当前目标FPGA对应的容器运行的任务的QPS为低QPS阈值,使超过所述低QPS阈值的任务请求分配到所述任务切换FPGA;其中,所述第二FPGA执行单独的任务,所述任务切换FPGA为所述目标FPGA中对应的温度信息和功耗信息分别为所述高温档位和所述高功耗档位的FPGA。
2.根据权利要求1所述的FPGA云平台的监控方法,其特征在于,所述控制当前目标FPGA对应的容器进行降功耗操作,包括:
在所述k8s环境中启动新的运行目标任务的容器,并关闭当前目标FPGA对应的容器;其中,所述目标任务为当前目标FPGA对应的容器运行的任务,所述目标任务的容器与选择FPGA相对应,所述选择FPGA为所述预设FPGA资源池中任一未执行任务的FPGA。
3.根据权利要求1所述的FPGA云平台的监控方法,其特征在于,所述控制当前目标FPGA对应的容器进行降功耗操作,包括:
当前目标FPGA为第二FPGA时,将当前目标FPGA对应的容器运行的任务与目标第二FPGA对应的容器运行的任务进行互换;其中,所述第二FPGA执行单独的任务,所述目标第二FPGA为所述目标FPGA中的一个执行单独的任务且对应的温度信息和功耗信息分别为所述低温档位和所述低功耗档位的FPGA。
4.根据权利要求1所述的FPGA云平台的监控方法,其特征在于,所述目标FPGA为所述预设FPGA资源池中的全部FPGA时,所述获取预设FPGA资源池中的目标FPGA的状态信息,包括:
通过FPGA云接口向所述预设FPGA资源池中的全部FPGA发送状态传输命令;
接收所述预设FPGA资源池的每个FPGA发送的各自对应的状态信息。
5.一种FPGA云平台的监控装置,其特征在于,包括:
获取模块,用于获取预设FPGA资源池中的目标FPGA的状态信息;其中,所述目标FPGA包括所述预设FPGA资源池中运行有任务的FPGA,所述状态信息包括功率信息、资源使用率信息和板卡温度信息;
确定模块,用于根据所述状态信息,确定每个所述目标FPGA对应的控制信息;其中,所述控制信息包括温度信息和功耗信息;
控制模块,用于根据所述控制信息,控制所述目标FPGA的任务执行状态;
所述控制模块包括:
容器控制子模块,用于根据所述控制信息,控制k8s环境中每个所述目标FPGA对应的容器;
所述温度信息包括高温档位、中温档位和低温档位,所述功耗信息包括高功耗档位、中功耗档位和低功耗档位时,所述容器控制子模块包括:
降功耗单元,用于若当前目标FPGA对应的温度信息和功耗信息分别为所述高温档位和所述高功耗档位,则控制当前目标FPGA对应的容器进行降功耗操作;其中,当前目标FPGA为任一所述目标FPGA;
升功耗单元,用于若当前目标FPGA对应的温度信息不为所述高温档位且当前目标FPGA对应的功耗信息为所述低功耗档位,或当前目标FPGA对应的温度信息和功耗信息分别为所述低温档位和所述中功耗档位,则控制当前目标FPGA对应的容器进行升功耗操作;
所述降功耗单元包括:
第二降功耗子单元,用于在当前目标FPGA为第一FPGA时,调整当前目标FPGA的主频和电压运行对应的低水平范围,并调整当前目标FPGA对应的容器运行的任务的QPS为低QPS阈值,使超过所述低QPS阈值的任务请求分配到同任务FPGA对应的容器;其中,所述第一FPGA对应的容器与所述同任务FPGA对应的容器运行相同的任务;
第三降功耗子单元,用于当前目标FPGA为第二FPGA时,调整当前目标FPGA的主频和电压运行对应的低水平范围,将任务切换FPGA对应的容器运行的任务切换为当前目标FPGA对应的容器运行的任务,并调整当前目标FPGA对应的容器运行的任务的QPS为低QPS阈值,使超过所述低QPS阈值的任务请求分配到所述任务切换FPGA;其中,所述第二FPGA执行单独的任务,所述任务切换FPGA为所述目标FPGA中对应的温度信息和功耗信息分别为所述高温档位和所述高功耗档位的FPGA。
6.一种FPGA云平台的监控设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述的FPGA云平台的监控方法的步骤。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述的FPGA云平台的监控方法的步骤。
CN202010663082.3A 2020-07-10 2020-07-10 一种fpga云平台的监控方法、装置、设备及存储介质 Active CN111858241B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010663082.3A CN111858241B (zh) 2020-07-10 2020-07-10 一种fpga云平台的监控方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010663082.3A CN111858241B (zh) 2020-07-10 2020-07-10 一种fpga云平台的监控方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN111858241A CN111858241A (zh) 2020-10-30
CN111858241B true CN111858241B (zh) 2022-06-10

Family

ID=73153280

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010663082.3A Active CN111858241B (zh) 2020-07-10 2020-07-10 一种fpga云平台的监控方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111858241B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112541822A (zh) * 2020-12-04 2021-03-23 深圳市瑞尚信息科技有限公司 一种基于fpga加速卡的金融风控系统

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104503843A (zh) * 2014-12-25 2015-04-08 浪潮电子信息产业股份有限公司 一种功耗管理方法及装置
WO2017029826A1 (ja) * 2015-08-18 2017-02-23 日本電信電話株式会社 リソース構成システム、リソース構成方法及びリソース構成プログラム
US10140032B1 (en) * 2017-03-02 2018-11-27 EMC IP Holding Company LLC Multi-tier storage system with dynamic power management utilizing configurable data mover modules
CN107506279A (zh) * 2017-08-18 2017-12-22 江苏微锐超算科技有限公司 Fpga器件的性能控制方法及装置
US11138037B2 (en) * 2017-11-02 2021-10-05 Mediatek Inc. Switch policy for hybrid scheduling in multi-processor systems
CN108052436A (zh) * 2017-12-28 2018-05-18 郑州云海信息技术有限公司 对fpga板卡进行管控的方法、装置、设备及存储介质
CN108628674A (zh) * 2018-05-11 2018-10-09 深圳市零度智控科技有限公司 基于云平台的任务调度方法、云平台及计算机存储介质
CN109471727B (zh) * 2018-10-29 2021-01-22 北京金山云网络技术有限公司 一种任务处理方法、装置及系统
CN109614293A (zh) * 2018-12-13 2019-04-12 广东浪潮大数据研究有限公司 一种fpga异构加速卡的管理系统及方法
CN109739729A (zh) * 2019-01-08 2019-05-10 郑州云海信息技术有限公司 Fpga板卡状态自管理方法、fpga板卡及相关组件
CN110673935A (zh) * 2019-08-23 2020-01-10 苏州浪潮智能科技有限公司 一种基于Kubernetes系统的作业调度方法、设备以及存储介质
CN111090438A (zh) * 2019-11-07 2020-05-01 苏州浪潮智能科技有限公司 一种基于kubernetes的FPGA虚拟化训练的方法、设备及介质
CN111131395B (zh) * 2019-11-29 2022-06-07 苏州浪潮智能科技有限公司 一种fpga云平台任务资源分配装置、方法及设备
CN111124607A (zh) * 2019-12-16 2020-05-08 上海大学 Fpga虚拟化部署实现高速安全的服务器集群管理方法
CN111176919B (zh) * 2019-12-29 2022-08-12 苏州浪潮智能科技有限公司 一种fpga的测试方法、设备以及存储介质

Also Published As

Publication number Publication date
CN111858241A (zh) 2020-10-30

Similar Documents

Publication Publication Date Title
CN107111553B (zh) 用于在多集群异构处理器架构中提供动态高速缓存扩展的系统和方法
CN105814543B (zh) 用于增加负荷密度和改进能效的功率平衡
CN111625080B (zh) 一种服务器节能方法、装置及电子设备和存储介质
CN105320561A (zh) 任务管理方法和系统
US11782769B2 (en) Virtual machine scheduling method and system
CN104252390A (zh) 资源调度方法、装置和系统
CN110795238B (zh) 负载计算方法、装置、存储介质及电子设备
CN107995286B (zh) 基于dubbo平台的服务自动启停方法、服务器及存储介质
CN105320570A (zh) 资源管理方法和系统
CN109313477A (zh) 基于激活的核的性能提升
CN111858241B (zh) 一种fpga云平台的监控方法、装置、设备及存储介质
US10037225B2 (en) Method and system for scheduling computing
CN107132903B (zh) 一种节能管理实现方法、装置及网络设备
CN110795323A (zh) 负载统计方法、装置、存储介质及电子设备
CN112527509B (zh) 一种资源分配方法、装置、电子设备及存储介质
CN114003238B (zh) 一种基于转码卡的容器部署方法、装置、设备及存储介质
CN115562878B (zh) Gpu计算资源的管理方法、装置、电子设备及可读存储介质
CN115269145A (zh) 一种面向海上无人设备的高能效异构多核调度方法及装置
CN114741200A (zh) 面向数据中台的计算资源分配方法、装置及电子设备
CN106326001B (zh) 一种信息处理方法及电子设备
CN117666750B (zh) 电源能耗的调整方法及装置
CN104238716A (zh) 电源管理方法
CN111352721A (zh) 一种业务的迁移方法及装置
CN117579626B (zh) 基于分布式实现边缘计算下的优化方法及系统
CN114003367B (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