一种GPU服务器的显卡的识别方法、装置、设备及介质与流程

文档序号:15888436发布日期:2018-11-09 19:47阅读:575来源:国知局
一种GPU服务器的显卡的识别方法、装置、设备及介质与流程

本发明涉及gpu服务器计算领域,特别是涉及一种gpu服务器的显卡的识别方法、装置、设备及介质。

背景技术

与传统的服务器相比,gpu服务器具有更高的计算处理能力,尤其是在人工智能等对于计算处理能力要求较高的领域应用更广。在gpu服务器中,其显卡是一项重要的部件。当前有的显卡虽然性能较好,但是价格上比较昂贵,因此,对于大部分企业来说,应用最多的还是价格较低的显卡。

对于部分显卡来说,应用于gpu服务器时,会出现特定环境下(通常情况是gpu服务器重启之后)无法识别出显卡的问题,例如amdmi25显卡。

很显然,当无法识别出显卡时,就无法正常使用显卡的功能,因此,如何确保gpu服务器重启之后能够正常识别出显卡是本领域技术人员亟待解决的问题。



技术实现要素:

本发明的目的是提供一种gpu服务器的显卡的识别方法、装置、设备及介质,用于确保gpu服务器重启之后能够正常识别出显卡。

为解决上述技术问题,本发明提供一种gpu服务器的显卡的识别方法,包括:

在执行bios的开机过程中,获取pci枚举操作所抓取到的显卡的关联信息;

根据所述关联信息判断所述显卡是否为预设种类显卡;

如果是,则读取所述显卡在pci配置空间中的内存地址,并根据所述内存地址与所述显卡在上一工作周期中的偏移变量得到实际内存地址;

按照所述实际内存地址对所述显卡进行复位操作,并发送重启指令以进入重启操作。

优选地,所述关联信息具体包括版本id信息和pci设备id信息;

所述根据所述关联信息判断所述显卡是否为预设种类显卡具体包括:

判断所述版本id信息和所述pci设备id信息是否均与所述预设种类显卡的id信息对应,如果是,则确定所述显卡为所述预设种类显卡。

优选地,若所述显卡不为所述预设种类显卡,则对所述显卡进行时序操作,并正常进入操作系统。

优选地,所述读取所述显卡在pci配置空间中的内存地址具体为:读取所述显卡在所述pci配置空间中的bar5寄存器的内存地址。

优选地,所述显卡的数量为8或16。

优选地,所述预设种类显卡具体为amdmi25显卡。

为解决上述技术问题,本发明还提供一种gpu服务器的显卡的识别装置,其特征在于,包括:

获取单元,用于在执行bios的开机过程中,获取pci枚举操作所抓取到的显卡的关联信息;

判断单元,用于根据所述关联信息判断所述显卡是否为预设种类显卡;

读取单元,用于在所述判断单元的结果为是时,则读取所述显卡在pci配置空间中的内存地址,并根据所述内存地址与所述显卡在上一工作周期中的偏移变量得到实际内存地址;

复位单元,用于按照所述实际内存地址对所述显卡进行复位操作,并发送重启指令以进入重启操作。

优选地,所述关联信息具体包括版本id信息和pci设备id信息;

所述判断单元具体用于判断所述版本id信息和所述pci设备id信息是否均与所述预设种类显卡的id信息对应,如果是,则确定所述显卡为所述预设种类显卡。

为解决上述技术问题,本发明还提供一种gpu服务器的显卡的识别设备,包括存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上述所述的gpu服务器的显卡的识别方法的步骤。

为解决上述技术问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的gpu服务器的显卡的识别方法的步骤。

本发明所提供的gpu服务器的显卡的识别方法,在执行bios的开机过程中,获取pci枚举操作所抓取到的显卡的关联信息;根据关联信息判断显卡是否为预设种类显卡;如果是,则读取显卡在pci配置空间中的内存地址,并根据内存地址与显卡在上一工作周期中的偏移变量得到实际内存地址;按照实际内存地址对显卡进行复位操作,并发送重启指令以进入重启操作。由此可见,该方法中,通过pci配置空间中的内存地址和上一工作周期中的偏移变量得到显卡的实际内存地址,从而依据内存地址对显卡进行复位。复位之后,显卡就不会处于工作状态,再重启之后,显卡就会被释放,因此,能够被识别从而投入正常使用。相对于现有技术来说,本方法可以采用成本较低的显卡,能够降低对成本较高的显卡的依赖性,降低了采购成本。

此外,本发明所提供的gpu服务器的显卡的识别装置、设备及介质,同样具有上述有益效果。

附图说明

为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种gpu服务器的显卡的识别方法的流程图;

图2为本发明实施例提供的一种根据pci设备的类型分配资源的装置的结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。

本发明的核心是提供一种gpu服务器的显卡的识别方法、装置、设备及介质,用于确保gpu服务器重启之后能够正常识别出显卡。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。

图1为本发明实施例提供的一种gpu服务器的显卡的识别方法的流程图。如图1所示,该方法包括:

s10:在执行bios的开机过程中,获取pci枚举操作所抓取到的显卡的关联信息。

需要说明的是,bios是一组固化在计算机或服务器设备主板上一个rom芯片上的程序,它保存着计算机或服务器最重要的基本输入输出的程序、开机后自检程序和系统自启动程序,因此其主要的功能是为计算机或服务器提供最底层的硬件设置和控制途径。本发明中提到的显卡的类型不作限定,例如可以为amdmi25显卡。

在开机时,需要执行bios,在这一过程中,常规操作包含有pci枚举操作,也就是使用一些过滤条件将系统中的各pci设备(其中就有显卡)筛选出来。对于不同的操作系统,枚举的方法不同,例如linux系统没有windows系统那样直接枚举显卡的函数,只有借用shell脚本或者读取pci设备配置空间来获取pci设备信息。可以理解的是,pci枚举操作是现有技术,是本领域技术人员熟知的内容,详细内容在此不再赘述。

s11:根据关联信息判断显卡是否为预设种类显卡;如果是,则进入s12,否则进入s14。

在具体实施中,并不是所有的显卡都会造成重启之后无法识别的问题,因此,本步骤中就是根据关联信息判断显卡是否为预设种类显卡,可以理解的是,预设种类显卡也并不是特指某一种固定类型的显卡,可以有多种类型。例如可以为amdmi25显卡。

作为优选地实施方式,关联信息具体包括版本id信息和pci设备id信息;对应的,s11具体包括:

判断版本id信息和pci设备id信息是否均与预设种类显卡的id信息对应,如果是,则确定显卡为预设种类显卡。

s12:读取显卡在pci配置空间中的内存地址,并根据内存地址与显卡在上一工作周期中的偏移变量得到实际内存地址。

每个显卡都在pci配置空间中有对应的内存地址,但是在使用过程中可能会有一定的偏移量,所以当前显卡的实际内存地址与pci配置空间中的内存地址有不同,具体偏差就是偏移量,而偏移量是该显卡在上一个工作周期中产生的,因此,可以通过上一个工作周期确定出偏移量的具体数值。

需要说明的是,正是由于在开机时,每个显卡并没有复位,即仍然处于工作状态,因此,在重启之后,该显卡无法被识别,也就无法正常使用。本步骤就是通过显卡在pci配置空间中的内存地址和偏移量确定出显卡的实际内存地址。该实际内存地址才是该显卡当前正确的内存地址。

作为优选地实施方式s12中,读取显卡在pci配置空间中的内存地址具体为:读取显卡在pci配置空间中的bar5寄存器的内存地址。

s13:按照实际内存地址对显卡进行复位操作,并发送重启指令以进入重启操作。

在s12中已经确定了显卡的实际内存地址,本步骤就是依据该地址找到对应的显卡,将其复位,然后发送重启指令进入重启操作。可以理解的是,进入重启操作后,由于显卡经过了复位操作,因此,显卡不再是工作状态能够被识别。重启之后,依然是要进行pci枚举操作,根据显卡的内存地址和偏移量确定出实际内存地址,然后依据实际内存地址进程时序操作,当时序操作完成后则可以正常进入操作系统,从而保证每次开机都可以识别到显卡且功能正常。

相对于现有技术来说,本方法可以采用成本较低的显卡,能够降低对成本较高的显卡的依赖性,降低了采购成本。

s14:对显卡进行时序操作,并正常进入操作系统。

需要说明的是,本步骤进入重启操作后进行的动作均为现有技术,具体的时序操作参见现有技术,本实施例不再赘述。

本实施例提供的gpu服务器的显卡的识别方法,在执行bios的开机过程中,获取pci枚举操作所抓取到的显卡的关联信息;根据关联信息判断显卡是否为预设种类显卡;如果是,则读取显卡在pci配置空间中的内存地址,并根据内存地址与显卡在上一工作周期中的偏移变量得到实际内存地址;按照实际内存地址对显卡进行复位操作,并发送重启指令以进入重启操作。由此可见,该方法中,通过pci配置空间中的内存地址和上一工作周期中的偏移变量得到显卡的实际内存地址,从而依据内存地址对显卡进行复位。复位之后,显卡就不会处于工作状态,再重启之后,显卡就会被释放,因此,能够被识别从而投入正常使用。相对于现有技术来说,本方法可以采用成本较低的显卡,能够降低对成本较高的显卡的依赖性,降低了采购成本。

作为优选地实施方式,显卡的数量为8或16。

可以理解的是,显卡的数量不作限定,但是考虑到gpu服务器通常支持的显卡的数量,本实施例中优选8或16。

上文对于gpu服务器的显卡的识别的方法的实施例进行了详细描述,本发明还提供一种与该方法对应的装置。图2为本发明实施例提供的一种根据pci设备的类型分配资源的装置的结构图。如图2所示,该装置包括:

获取单元10,用于在执行bios的开机过程中,获取pci枚举操作所抓取到的显卡的关联信息。

判断单元11,用于根据关联信息判断显卡是否为预设种类显卡。

读取单元12,用于在判断单元的结果为是时,则读取显卡在pci配置空间中的内存地址,并根据内存地址与显卡在上一工作周期中的偏移变量得到实际内存地址。

复位单元13,用于按照实际内存地址对显卡进行复位操作,并发送重启指令以进入重启操作。

作为优选地实施方式,关联信息具体包括版本id信息和pci设备id信息;

判断单元11具体用于判断版本id信息和pci设备id信息是否均与预设种类显卡的id信息对应,如果是,则确定显卡为预设种类显卡。

由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。

本实施例提供的gpu服务器的显卡的识别装置,在执行bios的开机过程中,获取pci枚举操作所抓取到的显卡的关联信息;根据关联信息判断显卡是否为预设种类显卡;如果是,则读取显卡在pci配置空间中的内存地址,并根据内存地址与显卡在上一工作周期中的偏移变量得到实际内存地址;按照实际内存地址对显卡进行复位操作,并发送重启指令以进入重启操作。由此可见,该装置中,通过pci配置空间中的内存地址和上一工作周期中的偏移变量得到显卡的实际内存地址,从而依据内存地址对显卡进行复位。复位之后,显卡就不会处于工作状态,再重启之后,显卡就会被释放,因此,能够被识别从而投入正常使用。相对于现有技术来说,本装置可以采用成本较低的显卡,能够降低对成本较高的显卡的依赖性,降低了采购成本。

本发明还提供一种gpu服务器的显卡的识别设备,与上文中的装置的区别在于,上文中的装置是从功能模块化的角度进行描述,而本实施例中是从硬件实体的角度进行描述。可以理解的是,上述方法是通过相应的计算机程序实现的,而将该程序存储在存储器中,则处理器在执行时,就可以实现对应的方法。具体包括存储器,用于存储计算机程序;

处理器,用于执行计算机程序时实现如上述实施例所述的gpu服务器的显卡的识别方法的步骤。

本实施例提供的gpu服务器的显卡的识别设备,包括存储器和处理器,处理器能够实现如下方法:在执行bios的开机过程中,获取pci枚举操作所抓取到的显卡的关联信息;根据关联信息判断显卡是否为预设种类显卡;如果是,则读取显卡在pci配置空间中的内存地址,并根据内存地址与显卡在上一工作周期中的偏移变量得到实际内存地址;按照实际内存地址对显卡进行复位操作,并发送重启指令以进入重启操作。由此可见,该方法中,通过pci配置空间中的内存地址和上一工作周期中的偏移变量得到显卡的实际内存地址,从而依据内存地址对显卡进行复位。复位之后,显卡就不会处于工作状态,再重启之后,显卡就会被释放,因此,能够被识别从而投入正常使用。相对于现有技术来说,本方法可以采用成本较低的显卡,能够降低对成本较高的显卡的依赖性,降低了采购成本。

最后,本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述实施例所述的gpu服务器的显卡的识别方法的步骤。

上文中提到的功能单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台设备执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

本发明实施例提供的计算机可读存储介质,用于实现以下方法:在执行bios的开机过程中,获取pci枚举操作所抓取到的显卡的关联信息;根据关联信息判断显卡是否为预设种类显卡;如果是,则读取显卡在pci配置空间中的内存地址,并根据内存地址与显卡在上一工作周期中的偏移变量得到实际内存地址;按照实际内存地址对显卡进行复位操作,并发送重启指令以进入重启操作。由此可见,该方法中,通过pci配置空间中的内存地址和上一工作周期中的偏移变量得到显卡的实际内存地址,从而依据内存地址对显卡进行复位。复位之后,显卡就不会处于工作状态,再重启之后,显卡就会被释放,因此,能够被识别从而投入正常使用。相对于现有技术来说,本方法可以采用成本较低的显卡,能够降低对成本较高的显卡的依赖性,降低了采购成本。

以上对本发明所提供的gpu服务器的显卡的识别方法、装置、设备及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1