CN116737626B - Hca卡控制方法、***、装置、存储介质及电子装置 - Google Patents
Hca卡控制方法、***、装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN116737626B CN116737626B CN202311030380.9A CN202311030380A CN116737626B CN 116737626 B CN116737626 B CN 116737626B CN 202311030380 A CN202311030380 A CN 202311030380A CN 116737626 B CN116737626 B CN 116737626B
- Authority
- CN
- China
- Prior art keywords
- target
- software environment
- configuration information
- pld
- hca card
- 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
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000005540 biological transmission Effects 0.000 claims description 31
- 230000006870 function Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 11
- 238000013524 data verification Methods 0.000 claims description 10
- 238000004891 communication Methods 0.000 claims description 6
- 238000004806 packaging method and process Methods 0.000 claims description 4
- 230000007613 environmental effect Effects 0.000 abstract description 18
- 238000005516 engineering process Methods 0.000 abstract description 9
- 230000006978 adaptation Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 6
- 230000002093 peripheral effect Effects 0.000 description 6
- 230000003993 interaction Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/387—Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1694—Configuration of memory controller to different memory types
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/38—Universal adapter
- G06F2213/3808—Network interface controller
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例提供了一种HCA卡控制方法、***、装置、存储介质及电子装置,其中,该方法包括:在HCA卡与主机连接的情况下,获取主机的当前软件环境标识,其中,当前软件环境标识用于标识主机中的处理器和操作***;基于目标存储器中预先存储的一组软件环境配置信息确定与当前软件环境标识匹配的目标配置信息,HCA卡上设置有目标存储器,目标配置信息用于表示适配处理器和操作***的目标指令集;将目标配置信息表示的目标指令集配置在PLD中,以使得目标指令集中的指令被允许在HCA卡中执行。通过本申请实施例,解决了相关技术中存在的HCA卡的环境兼容性较差的技术问题。
Description
技术领域
本申请实施例涉及服务器技术领域,具体而言,涉及一种HCA卡控制方法、***、装置、存储介质及电子装置。
背景技术
HCA卡(Host Channel Adapter)是一种用于连接计算机主机和高速网络的适配器。HCA卡可以提供高带宽、低延迟的数据传输服务,适用于高性能计算、云计算、大数据等场景。然而,现有的HCA卡存在环境兼容性较差的问题,即HCA卡对软件环境(如操作***、驱动程序、应用程序等)有较高的依赖性,不同的软件环境可能导致HCA卡的性能和稳定性下降。例如,某些操作***可能不支持HCA卡的某些功能或参数,某些驱动程序可能存在缺陷或不兼容,某些应用程序可能无法正确调用HCA卡的接口或资源等。这些问题会影响HCA卡的正常工作,甚至导致数据丢失、传输错误、***崩溃等故障。相关技术中的HCA卡需要依赖一些特定的软件环境才能发挥其作用,这就要求HPC***需要配合特定的软件环境,这可能会影响一些存储设备的通用性,可见,相关技术中的HCA卡存在着环境兼容性较差的问题。
针对相关技术中存在的HCA卡的环境兼容性较差的技术问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种HCA卡控制方法、***、装置、存储介质及电子装置,以至少解决相关技术中存在的HCA卡的环境兼容性较差的技术问题。
根据本申请的一个实施例,提供了一种HCA卡控制方法,包括:在主机通道适配器HCA卡与主机连接的情况下,获取所述主机的当前软件环境标识,其中,所述当前软件环境标识用于标识所述主机中的处理器以及所述主机中的操作***;基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息,其中,所述一组软件环境配置信息中包括的每个软件环境配置信息中均包括软件环境标识以及与所述软件环境标识相匹配的配置信息,所述HCA卡上设置有所述目标存储器,所述目标配置信息用于表示适配所述处理器和所述操作***的目标指令集;将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中,以使得所述目标指令集中的指令被允许在所述HCA卡中执行,其中,所述HCA卡上设置有所述PLD。
在一个示例性实施例中,在将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中之后,所述方法还包括:在接收到所述主机向所述HCA卡发送的目标指令、且所述目标指令是所述目标指令集中的指令的情况下,在所述HCA卡中执行所述目标指令。
在一个示例性实施例中,在所述HCA卡中执行所述目标指令,包括:在所述HCA卡中运行所述PLD中与所述目标指令对应的目标电路,其中,所述目标电路用于实现所述目标指令的指令执行逻辑。
在一个示例性实施例中,在所述HCA卡中执行所述目标指令,包括:在所述目标指令用于表示对所述主机发送的目标业务的数据进行转发的情况下,通过所述HCA卡中的控制器执行在所述PLD中记录的所述目标指令的数据转发逻辑,所述数据转发逻辑用于对所述目标业务的数据进行路由信息的封装,并向封装的目标路由地址发送封装得到的数据包;或者在所述目标指令用于表示对所述主机发送的目标业务的数据进行校验的情况下,通过所述HCA卡中的控制器执行在所述PLD中记录的所述目标指令的数据校验逻辑,所述数据校验逻辑用于对所述目标业务的数据进行校验。
在一个示例性实施例中,将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中,包括:对于所述目标指令集中的第i个指令,在所述PLD中创建对应的第i个电路,其中,所述第i个电路用于实现所述第i个指令的指令执行逻辑,其中,i为大于或等于1的正整数。
在一个示例性实施例中,所述基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息,包括:在所述目标存储器所存储的所述一组软件环境配置信息中查找是否存在与所述当前软件环境标识匹配的目标软件环境配置信息,得到查找结果;在所述查找结果表示所述一组软件环境配置信息中存在所述目标软件环境配置信息的情况下,将所述目标软件环境配置信息中所包含的配置信息确定为所述目标配置信息,其中,所述目标软件环境配置信息中包括与所述当前软件环境标识相同的所述软件环境标识。
在一个示例性实施例中,所述方法还包括:在所述查找结果表示所述一组软件环境配置信息中不存在所述目标软件环境配置信息的情况下,将预设配置信息确定为所述目标配置信息,其中,所述预设配置信息用于指示按照预设参数对所述PLD进行配置。
在一个示例性实施例中,所述方法还包括:在所述查找结果表示所述一组软件环境配置信息中不存在所述目标软件环境配置信息的情况下,在所述目标存储器中添加第一配置信息,其中,所述第一配置信息中包括所述当前软件环境标识以及与所述前软件环境标识匹配的预设配置信息。
在一个示例性实施例中,所述在所述目标存储器所存储的所述一组软件环境配置信息中查找是否存在与所述当前软件环境标识匹配的目标软件环境配置信息,得到查找结果,包括:将所述当前软件环境标识依次与一组软件环境标识进行对比,得到对比结果,其中,所述对比结果用于指示所述一组软件环境标识中是否包括与所述当前软件环境标识相同的软件环境标识,所述一组软件环境配置信息中包括所述一组软件环境标识;基于所述对比结果确定所述查找结果。
在一个示例性实施例中,所述基于所述对比结果确定所述查找结果,包括:在所述对比结果表示所述一组软件环境标识中包括与所述当前软件环境标识相同的软件环境标识的情况下,确定所述查找结果为所述一组软件环境配置信息中存在所述目标软件环境配置信息;在所述对比结果表示所述一组软件环境标识中不包括与所述当前软件环境标识相同的软件环境标识的情况下,确定所述查找结果为所述一组软件环境配置信息中不存在所述目标软件环境配置信息。
在一个示例性实施例中,所述将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中,包括:将所述目标指令集配置在目标重构逻辑单元和目标配置逻辑单元中,其中,所述PLD包括所述目标重构逻辑单元和所述目标配置逻辑单元。
在一个示例性实施例中,所述将所述目标指令集配置在目标重构逻辑单元和目标配置逻辑单元中,包括:基于目标硬件参数对所述目标重构逻辑单元进行配置,以及基于目标软件参数对所述目标配置逻辑单元进行配置,其中,所述目标配置信息中包括所述目标硬件参数和所述目标软件参数,所述目标硬件参数用于配置所述HCA卡的硬件功能,所述目标软件参数用于配置所述HCA卡的软件功能。
在一个示例性实施例中,所述目标重构逻辑单元包括一组重构逻辑门,其中,所述一组重构逻辑门用于对所述PLD进行重构逻辑配置;所述目标配置逻辑单元包括一组配置逻辑门,其中,所述一组配置逻辑门用于对所述PLD进行配置逻辑配置。
在一个示例性实施例中,在基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息之前,所述方法还包括:配置所述一组软件环境配置信息;将所述一组软件环境配置信息存储至所述目标存储器中。
在一个示例性实施例中,所述获取所述主机的当前软件环境标识,包括:通过高速串行计算机扩展总线标准PCIE接口获取所述当前软件环境标识。
在一个示例性实施例中,在将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中之后,所述方法还包括:通过所述PLD控制所述HCA卡与所述当前软件环境标识所指示的软件环境之间进行数据传输。
根据本申请的另一个实施例,还提供了一种HCA卡控制***,包括:可编程逻辑器件PLD,设置于主机通道适配器HCA卡上;控制器,与所述PLD通信连接,所述控制器被设置为执行以下操作:在所述HCA卡与主机连接的情况下,获取所述主机的当前软件环境标识,其中,所述当前软件环境标识用于标识所述主机中的处理器以及所述主机中的操作***;基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息,其中,所述一组软件环境配置信息中包括的每个软件环境配置信息中均包括软件环境标识以及与所述软件环境标识相匹配的配置信息,所述目标配置信息用于表示适配所述处理器和所述操作***的目标指令集;将所述目标配置信息表示的所述目标指令集配置在所述PLD中,以使得所述目标指令集中的指令被允许在所述HCA卡中执行;所述目标存储器,与所述控制器通信连接,所述目标存储器被设置为存储所述一组软件环境配置信息。
在一个示例性实施例中,所述PLD包括目标重构逻辑单元和目标配置逻辑单元。
在一个示例性实施例中,所述目标重构逻辑单元包括一组重构逻辑门,其中,所述一组重构逻辑门用于对所述PLD进行重构逻辑配置;所述目标配置逻辑单元包括一组配置逻辑门,其中,所述一组配置逻辑门用于对所述PLD进行配置逻辑配置。
在一个示例性实施例中,所述目标配置信息中包括目标硬件参数和目标软件参数,其中,所述目标硬件参数用于指示对所述目标重构逻辑单元进行配置,所述目标软件参数用于指示对所述目标配置逻辑单元进行配置。
在一个示例性实施例中,所述控制器中设置有高速串行计算机扩展总线标准PCIE接口,其中,所述控制器通过所述PCIE接口获取所述当前软件环境标识。
根据本申请的又一个实施例,还提供了一种HCA卡控制装置,包括:获取模块,用于在主机通道适配器HCA卡与主机连接的情况下,获取所述主机的当前软件环境标识,其中,所述当前软件环境标识用于标识所述主机中的处理器以及所述主机中的操作***;第一确定模块,用于基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息,其中,所述一组软件环境配置信息中包括的每个软件环境配置信息中均包括软件环境标识以及与所述软件环境标识相匹配的配置信息,所述HCA卡上设置有所述目标存储器,所述目标配置信息用于表示适配所述处理器和所述操作***的目标指令集;处理模块,用于将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中,以使得所述目标指令集中的指令被允许在所述HCA卡中执行,其中,所述HCA卡上设置有所述PLD。
根据本申请的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本申请的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本申请实施例,在HCA卡与主机连接的情况下,获取主机的当前软件环境标识,其中,当前软件环境标识用于标识主机中的处理器以及主机中的操作***;再基于目标存储其中预先存储的一组软件环境配置信息确定与当前软件环境标识匹配的目标配置信息,其中,一组软件环境配置信息中包括的每个软件环境配置信息中均包括软件环境标识以及与软件环境标识相匹配的配置信息,HCA卡上设置有目标存储器,目标配置信息用于表示适配处理器和操作***的目标指令集;然后将目标配置信息表示的目标指令集配置在PLD中,以使得目标指令集中的指令被允许在HCA卡中执行,实现了基于目标配置信息配置后的PLD控制HCA卡与当前软件环境标识所标识的主机之间进行数据传输。即通过确定出与当前软件环境标识匹配的目标配置信息,并将目标配置信息所表示的目标指令集配置在PLD中,实现了控制HCA卡与主机之间进行数据传输的目的,避免了相关技术中的HCA卡需要依赖特定的软件环境或需要配合特定的软件环境才能正常工作的问题。因此,可以解决相关技术中存在的HCA卡的环境兼容性较差的技术问题,达到了改善HCA卡的环境兼容性的效果。
附图说明
图1是根据本申请实施例的HCA卡控制方法的服务器的硬件环境示意图;
图2是根据本申请实施例的一种HCA卡控制方法流程图;
图3是根据本申请实施例的HCA卡控制***的架构图;
图4是根据本申请实施例的改善HCA卡环境兼容性的方法流程图;
图5是根据本申请实施例的改善HCA卡环境兼容性的装置示意图;
图6是根据本申请实施例的PLD结构示意图;
图7是根据本申请实施例的一种HCA卡控制装置结构图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例所提供的方法实施例可以在服务器、计算机终端、设备终端或者类似的运算装置中执行。以运行在服务器上为例,图1是根据本申请实施例的HCA卡控制方法的服务器的硬件环境示意图。如图1所示,服务器可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,在一个示例性实施例中,上述服务器还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述服务器的结构造成限定。例如,服务器还可包括比图1中所示更多或者更少的组件,或者具有与图1所示等同功能或比图1所示功能更多的不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的HCA卡控制方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种HCA卡控制方法,图2是根据本申请实施例的一种HCA卡控制方法流程图,如图2所示,该流程包括如下步骤:
步骤S202,在主机通道适配器HCA卡与主机连接的情况下,获取所述主机的当前软件环境标识,其中,所述当前软件环境标识用于标识所述主机中的处理器以及所述主机中的操作***;
步骤S204,基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息,其中,所述一组软件环境配置信息中包括的每个软件环境配置信息中均包括软件环境标识以及与所述软件环境标识相匹配的配置信息,所述HCA卡上设置有所述目标存储器,所述目标配置信息用于表示适配所述处理器和所述操作***的目标指令集;
步骤S206,将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中,以使得所述目标指令集中的指令被允许在所述HCA卡中执行,其中,所述HCA卡上设置有所述PLD。
通过上述步骤,在HCA卡与主机连接的情况下,获取主机的当前软件环境标识,其中,当前软件环境标识用于标识主机中的处理器以及主机中的操作***;再基于目标存储其中预先存储的一组软件环境配置信息确定与当前软件环境标识匹配的目标配置信息,其中,一组软件环境配置信息中包括的每个软件环境配置信息中均包括软件环境标识以及与软件环境标识相匹配的配置信息,HCA卡上设置有目标存储器,目标配置信息用于表示适配处理器和操作***的目标指令集;然后将目标配置信息表示的目标指令集配置在PLD中,以使得目标指令集中的指令被允许在HCA卡中执行,实现了基于目标配置信息配置后的PLD控制HCA卡与当前软件环境标识所标识的主机之间进行数据传输。即通过确定出与当前软件环境标识匹配的目标配置信息,并将目标配置信息所表示的目标指令集配置在PLD中,实现了控制HCA卡与主机之间进行数据传输的目的,避免了相关技术中的HCA卡需要依赖特定的软件环境或需要配合特定的软件环境才能正常工作的问题。因此,可以解决相关技术中存在的HCA卡的环境兼容性较差的技术问题,达到了改善HCA卡的环境兼容性的效果。
其中,上述步骤的执行主体可以为控制器,或上述HCA卡,或集成有控制器的HCA卡,或者为配置在存储设备上的具备人机交互能力的处理器,或者为具备类似处理能力的处理设备或处理单元等,但不限于此。
在上述步骤S202提供的技术方案中,当HCA卡连接到计算机主机上时,可获取主机的当前软件环境标识,例如,可通过PCIE(Peripheral Component Interconnect Express,***组件快速互连)接口获取当前软件环境标识,PCIE接口是一种高速串行计算机扩展总线标准;当前软件环境标识用于标识主机的当前软件环境,例如,当前软件环境标识可以用于标识主机的处理器和操作***。在该步骤中,可以获取主机的当前软件环境标识。
在上述步骤S204提供的技术方案中,可预先存储一组软件环境配置信息,其中,一组软件环境配置信息中可包括一个或多个软件环境配置信息,每个软件环境配置信息中均包括软件环境标识以及与软件环境标识相匹配的配置信息,与软件环境标识匹配的配置信息可包括一些硬件参数和/或一些软件参数,在实际应用中,可将一组软件环境配置信息存储于目标存储器中,HCA卡上设置有目标存储器;例如,软件环境标识为标识1(arm_centos7),标识1也可以用其它字母或字符串表示,该标识1表示对应的处理器架构为aarch64架构,对应的操作***或软件为Centos v7.1,可预先将该标识1与对应的配置信息(硬件参数为aarch64架构、软件参数为Centos v7.1)作为一个软件环境配置信息存储起来;同样,还可以预先配置多个软件环境配置信息,每个软件环境配置信息中包括对应的软件环境标识与配置信息;这样当在上述步骤S202中获取到主机的当前软件环境标识时,可以根据预先存储的一组软件环境配置信息确定出与当前软件环境标识相匹配的目标配置信息,目标配置信息可用于表示适配上述主机中的处理器和操作***的目标指令集。通过该步骤,可在一组软件环境配置信息中确定出与当前软件环境标识匹配的目标配置信息的目的。
在上述步骤S206提供的技术方案中,可将目标配置信息所表示的目标指令集配置在PLD中,这样可使得目标指令集中的指令被允许在HCA卡中执行,实现了主机的处理器直接将指令发送给HCA卡进行交互的目的,例如,可将数据转发逻辑或数据校验逻辑或其它指令执行逻辑配置在PLD中,当HCA卡接收到主机发送的指令时,可实现HCA卡与主机之间的数据传输的目的。在实际应用中,PLD中包括可重构逻辑单元和可配置逻辑单元,可根据目标配置信息对可重构逻辑单元进行重构逻辑配置,以及对可配置逻辑单元进行配置逻辑配置。通过该步骤,可根据确定出的目标配置信息对PLD进行配置,以实现HCA卡与当前软件环境之间的正常数据传输的目的。
在上述实施例中,通过获取当前软件环境标识并确定出与当前软件环境标识匹配的目标配置信息,再将目标配置信息表示的目标指令集配置在PLD中,以使得目标指令集中的指令被允许在HCA卡中执行,从而实现HCA卡与主机之间进行数据传输的目的,避免了相关技术中的HCA卡需要依赖特定的软件环境或需要配合特定的软件环境才能正常工作的问题。因此,可以解决相关技术中存在的HCA卡的环境兼容性较差的技术问题,达到了改善HCA卡的环境兼容性的效果。
在一个可选的实施例中,在将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中之后,所述方法还包括:在接收到所述主机向所述HCA卡发送的目标指令、且所述目标指令是所述目标指令集中的指令的情况下,在所述HCA卡中执行所述目标指令。
在上述实施例中,在将目标配置信息所表示的目标指令集配置在PLD中之后,当HCA卡接收到主机发送的目标指令集中所包括的目标指令时,可在HCA卡中执行目标指令,这样可免去在主机中安装驱动,可实现主机的处理器直接将指令发送给HCA卡进行交互的目的。
在一个可选的实施例中,在所述HCA卡中执行所述目标指令,包括:在所述HCA卡中运行所述PLD中与所述目标指令对应的目标电路,其中,所述目标电路用于实现所述目标指令的指令执行逻辑。
在上述实施例中,可在HCA卡中运行PLD中与目标指令所对应的目标电路,例如,目标电路是执行加或减或其它运算的指令的电路,或者目标电路是执行逻辑判断的电路等,这样,可根据配置后的PLD执行目标指令。
在一个可选的实施例中,在所述HCA卡中执行所述目标指令,包括:在所述目标指令用于表示对所述主机发送的目标业务的数据进行转发的情况下,通过所述HCA卡中的控制器执行在所述PLD中记录的所述目标指令的数据转发逻辑,所述数据转发逻辑用于对所述目标业务的数据进行路由信息的封装,并向封装的目标路由地址发送封装得到的数据包;或者在所述目标指令用于表示对所述主机发送的目标业务的数据进行校验的情况下,通过所述HCA卡中的控制器执行在所述PLD中记录的所述目标指令的数据校验逻辑,所述数据校验逻辑用于对所述目标业务的数据进行校验。
在上述实施例中,可选的,可将目标指令集配置在PLD中,例如,将数据转发逻辑配置在PLD中,这样当目标指令是表示对主机发送的目标业务的数据进行转发的情况下,可通过HCA卡中的控制器执行PLD中记录的目标指令的数据转发逻辑,从而实现在HCA卡中执行目标业务的数据的转发指令;例如,将数据校验逻辑配置在PLD中,这样当目标指令用于表示对主机发送的目标业务的数据进行校验的情况下,可通过HCA卡中的控制器执行PLD中记录的目标指令的数据校验逻辑,从而实现在HCA卡中执行目标业务的数据的校验指令。
在一个可选的实施例中,将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中,包括:对于所述目标指令集中的第i个指令,在所述PLD中创建对应的第i个电路,其中,所述第i个电路用于实现所述第i个指令的指令执行逻辑,其中,i为大于或等于1的正整数。
在上述实施例中,对于目标指令集中包括的任一个指令,例如对于第i个指令,在PLD中创建对应的第i个电路,第i个电路可以是由PLD中的一个或多个逻辑门电路组成的,从而实现基于配置后的PLD控制HCA卡执行相应指令的目的。
在一个可选的实施例中,所述基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息,包括:在所述目标存储器所存储的所述一组软件环境配置信息中查找是否存在与所述当前软件环境标识匹配的目标软件环境配置信息,得到查找结果;在所述查找结果表示所述一组软件环境配置信息中存在所述目标软件环境配置信息的情况下,将所述目标软件环境配置信息中所包含的配置信息确定为所述目标配置信息,其中,所述目标软件环境配置信息中包括与所述当前软件环境标识相同的所述软件环境标识。
在上述实施例中,一组软件环境配置信息可预先存储于目标存储器中,在获取到主机的当前软件环境标识时,可在目标存储器所存储的一组软件环境配置信息中查找是否存在与当前软件环境标识匹配的目标软件环境配置信息,即在目标存储器中查找是否存在与当前软件环境标识匹配的软件环境配置信息,得到查找结果;当根据查找结果确定一组软件环境配置信息中存在目标软件环境配置信息的情况下,将目标软件环境配置信息中所包含的配置信息确定为目标配置信息,即目标软件环境配置信息中包括与当前软件环境标识相同的软件环境标识和目标配置信息。通过本实施例,可通过在目标存储器中所存储的一组软件环境配置信息中查找与当前软件环境标识匹配的目标配置信息的目的。
在一个可选的实施例中,所述方法还包括:在所述查找结果表示所述一组软件环境配置信息中不存在所述目标软件环境配置信息的情况下,将预设配置信息确定为所述目标配置信息,其中,所述预设配置信息用于指示按照预设参数对所述PLD进行配置。
在上述实施例中,当根据查找结果确定一组软件环境配置信息中不存在目标软件环境配置信息的情况下,即一组软件环境配置信息中不存在与当前软件环境标识匹配的软件环境配置信息时,可将预设配置信息确定为目标配置信息,预设配置信息也可理解为默认配置信息,可选地,针对所获取的当前软件环境标识的不同,可以设置不同的预设配置信息,例如,获取的当前软件环境标识为arm_Ubuntu22,若预先存储的一组软件环境配置信息中不存在该环境标识,则可将aarch64架构、Ubuntu20.04操作***作为与其对应的默认配置信息;假设获取的当前软件环境标识为X86_fedora38,若预先存储的一组软件环境配置信息中不存在该环境标识,则可将X86_64架构、fedora37操作***作为与其对应的默认配置信息;在实际应用中可根据需要进行设置上述预设配置信息,该预设配置信息用于指示按照预设参数对PLD进行配置。通过本实施例,当目标存储器中查找不到与当前软件环境标识匹配的软件环境配置信息时可实现按照预设配置信息对PLD进行配置的目的。
在一个可选的实施例中,所述方法还包括:在所述查找结果表示所述一组软件环境配置信息中不存在所述目标软件环境配置信息的情况下,在所述目标存储器中添加第一配置信息,其中,所述第一配置信息中包括所述当前软件环境标识以及与所述前软件环境标识匹配的预设配置信息。
在上述实施例中,当根据查找结果确定一组软件环境配置信息中不存在目标软件环境配置信息的情况下,即一组软件环境配置信息中不存在与当前软件环境标识匹配的软件环境配置信息时,可将获取的当前软件环境标识添加到目标存储器中,可选地,可将当前软件环境标识与上述预设配置信息作为一个配置信息(类似于前述一组软件环境配置信息中的一个软件环境配置信息)存储于目标存储器中。这样目标存储器中可存储更多针对不同软件环境的配置信息,有利于进一步扩大本实施例的应用范围。
在一个可选的实施例中,所述在所述目标存储器所存储的所述一组软件环境配置信息中查找是否存在与所述当前软件环境标识匹配的目标软件环境配置信息,得到查找结果,包括:将所述当前软件环境标识依次与一组软件环境标识进行对比,得到对比结果,其中,所述对比结果用于指示所述一组软件环境标识中是否包括与所述当前软件环境标识相同的软件环境标识,所述一组软件环境配置信息中包括所述一组软件环境标识;基于所述对比结果确定所述查找结果。
在上述实施例中,可将获取的当前软件环境标识依次与一组软件环境标识进行对比,一组软件环境配置信息中可包括多个软件环境配置信息,例如一组软件环境配置信息中包括N个软件环境配置信息,N为大于或等于1的正整数,因为每个软件环境配置信息中均包括一个软件环境标识和匹配的配置信息,这样N个软件环境配置信息中可能共有N个软件环境标识以及与N个软件环境标识所分别对应的配置信息,因此,可将当前软件环境标识依次与一组软件环境标识(如N个)进行对比,以确定一组软件环境标识中是否存在与当前软件环境标识相同的软件环境标识,根据对比结果即可确定出上述查找结果。通过本实施例,实现了在一组软件环境配置信息所包括的一组软件环境标识中确定是否存在与当前软件环境标识相同的软件环境标识的目的,进而可以确定一组软件环境配置信息中是否存在与当前软件环境标识匹配的目标软件环境配置信息的目的。
在一个可选的实施例中,所述基于所述对比结果确定所述查找结果,包括:在所述对比结果表示所述一组软件环境标识中包括与所述当前软件环境标识相同的软件环境标识的情况下,确定所述查找结果为所述一组软件环境配置信息中存在所述目标软件环境配置信息;在所述对比结果表示所述一组软件环境标识中不包括与所述当前软件环境标识相同的软件环境标识的情况下,确定所述查找结果为所述一组软件环境配置信息中不存在所述目标软件环境配置信息。
在上述实施例中,当上述对比结果表示一组软件环境标识中存在与当前软件环境标识相同的软件环境标识时,可确定上述查找结果为一组软件环境配置信息中存在目标软件环境配置信息;而当上述对比结果表示一组软件环境标识中不存在与当前软件环境标识相同的软件环境标识时,可确定上述查找结果为一组软件环境配置信息中不存在目标软件环境配置信息。通过本实施例,根据对比结果可以确定一组软件环境配置信息中是否存在与当前软件环境标识匹配的目标软件环境配置信息的目的。
在一个可选的实施例中,所述将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中,包括:将所述目标指令集配置在目标重构逻辑单元和目标配置逻辑单元中,其中,所述PLD包括所述目标重构逻辑单元和所述目标配置逻辑单元。
在上述实施例中,PLD中可包括目标重构逻辑单元和目标配置逻辑单元,可将目标配置信息所表示的目标指令集配置在目标重构逻辑单元和目标配置逻辑单元中,例如,对目标重构逻辑单元进行重构逻辑配置,以及对目标配置逻辑单元进行配置逻辑配置,从而实现HCA卡与当前软件环境标识所标识的主机之间的正常数据传输的目的。
在一个可选的实施例中,所述将所述目标指令集配置在目标重构逻辑单元和目标配置逻辑单元中,包括:基于目标硬件参数对所述目标重构逻辑单元进行配置,以及基于目标软件参数对所述目标配置逻辑单元进行配置,其中,所述目标配置信息中包括所述目标硬件参数和所述目标软件参数,所述目标硬件参数用于配置所述HCA卡的硬件功能,所述目标软件参数用于配置所述HCA卡的软件功能。
在上述实施例中,目标配置信息中可包括目标硬件参数和目标软件参数,基于目标硬件参数对PLD中的目标重构逻辑单元进行配置,以及基于目标软件参数对PLD中的目标配置逻辑单元进行配置,从而实现HCA卡的硬件功能和实现HCA卡的软件功能。
在一个可选的实施例中,所述目标重构逻辑单元包括一组重构逻辑门,其中,所述一组重构逻辑门用于对所述PLD进行重构逻辑配置;所述目标配置逻辑单元包括一组配置逻辑门,其中,所述一组配置逻辑门用于对所述PLD进行配置逻辑配置。
在上述实施例中,目标重构逻辑单元中可包括一组重构逻辑门,基于该一组重构逻辑门可实现对PLD的重构逻辑配置,目标配置逻辑单元中可包括一组配置逻辑门,基于该一组配置逻辑门可实现对PLD的配置逻辑配置。
在一个可选的实施例中,在基于目标存储器预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息之前,所述方法还包括:配置所述一组软件环境配置信息;将所述一组软件环境配置信息存储至所述目标存储器中。
在上述实施例中,可预先配置一组软件环境配置信息,例如,一组软件环境配置信息中包括多个软件环境配置信息,其中,每个软件环境配置信息中均包括一个或一种软件环境标识以及与软件环境标识相匹配的配置信息,配置信息可包括一条信息或多条信息或一组信息,例如,配置信息中可包括一些具体的硬件参数和/或软件参数;并将一组软件环境配置信息存储于目标存储器中,在实际应用中,可将目标存储器设置于HCA卡中。
在一个可选的实施例中,所述获取所述主机的当前软件环境标识,包括:通过高速串行计算机扩展总线标准PCIE接口获取所述当前软件环境标识。
在上述实施例中,可通过PCIE(Peripheral Component Interconnect Express,***组件快速互连)接口获取主机的当前软件环境标识,PCIE接口是一种高速串行计算机扩展总线标准。
在一个可选的实施例中,在将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中之后,所述方法还包括:通过所述PLD控制所述HCA卡与所述当前软件环境标识所指示的软件环境之间进行数据传输。
在上述实施例中,在将目标配置信息表示的目标指令集配置在PLD中之后,即可通过PLD控制HCA卡与主机的当前软件环境标识所标识的主机之间进行数据传输,即HCA卡能够与当前的软件环境相互兼容,当前软件环境标识可以用于标识主机的处理器和操作***。避免了相关技术中的HCA卡需要依赖特定的软件环境或需要配合特定的软件环境才能正常工作的问题,例如,相关技术中一些操作***可能不支持HCA卡的某些功能或参数,一些驱动程序可能存在缺陷或不兼容,一些应用程序可能无法正确调用HCA卡的接口或资源等,而通过本申请实施例,可以实现HCA卡与软件环境相兼容的目的,从而可以实现正常的数据传输的目的。
在本实施例中还提供了一种HCA卡控制***,图3是根据本申请实施例的HCA卡控制***的架构图,如图3所示,该HCA卡控制***包括:
可编程逻辑器件PLD 302,设置于主机通道适配器HCA卡(图3中未示出)上;
控制器304,与所述PLD 302通信连接,所述控制器304被设置为执行以下操作:
在所述HCA卡与主机连接的情况下,获取所述主机的当前软件环境标识,其中,所述当前软件环境标识用于标识所述主机中的处理器以及所述主机中的操作***;基于目标存储器306中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息,其中,所述一组软件环境配置信息中包括的每个软件环境配置信息中均包括软件环境标识以及与所述软件环境标识相匹配的配置信息,所述目标配置信息用于表示适配所述处理器和所述操作***的目标指令集;将所述目标配置信息表示的所述目标指令集配置在所述PLD中,以使得所述目标指令集中的指令被允许在所述HCA卡中执行;
所述目标存储器306,与所述控制器304通信连接,所述目标存储器306被设置为存储所述一组软件环境配置信息。
通过上述实施例,在HCA卡与主机连接的情况下,控制器304可获取主机的当前软件环境标识,其中,当前软件环境标识用于标识主机中的处理器以及主机中的操作***;再基于目标存储器中预先存储的一组软件环境配置信息确定与当前软件环境标识匹配的目标配置信息,其中,一组软件环境配置信息中包括的每个软件环境配置信息中均包括软件环境标识以及与软件环境标识相匹配的配置信息,目标配置信息用于表示适配处理器和操作***的目标指令集;并将目标配置信息表示的目标指令集配置在HCA卡上设置的PLD 302中,以使得目标指令集中的指令被允许在HCA卡中执行,实现了基于目标配置信息配置后的PLD 302控制HCA卡与当前软件环境标识所标识的主机之间进行数据传输。即通过确定出与当前软件环境标识匹配的目标配置信息,并将目标配置信息所表示的目标指令集配置在PLD 302中,实现了控制HCA卡与主机之间进行数据传输的目的,避免了相关技术中的HCA卡需要依赖特定的软件环境或需要配合特定的软件环境才能正常工作的问题。因此,可以解决相关技术中存在的HCA卡的环境兼容性较差的技术问题,达到了改善HCA卡的环境兼容性的效果。
图3中控制器304可获取主机的当前软件环境标识,例如,可通过PCIE(PeripheralComponent Interconnect Express,***组件快速互连)接口获取当前软件环境标识,PCIE接口是一种高速串行计算机扩展总线标准;控制器304再根据获取的当前软件环境标识在目标存储器306中查找是否存在与当前软件环境标识匹配的软件环境配置信息,目标存储器306中存储有一组软件环境配置信息,而一组软件环境配置信息中的每个软件环境配置信息中均包括软件环境标识以及与软件环境标识相匹配的配置信息,当查找到目标存储器306中存在与当前软件环境标识匹配的软件环境配置信息(例如可称为目标软件环境配置信息)时,即目标软件环境配置信息中所包括的软件环境标识与上述当前软件环境标识是相同的,则可将目标软件环境配置信息中所包括的配置信息确定为目标配置信息,目标配置信息用于表示适配处理器和操作***的目标指令集,然后控制器304可根据目标配置信息对PLD 302进行配置,例如,可将目标配置信息表示的目标指令集配置在PLD 302中,以实现控制HCA卡与主机之间的数据传输的目的。在实际应用中,PLD 302中包括可重构逻辑单元和可配置逻辑单元,可根据目标配置信息对可重构逻辑单元进行重构逻辑配置,以及对可配置逻辑单元进行配置逻辑配置。通过该步骤,可根据确定出的目标配置信息对PLD 302进行配置,以实现HCA卡与当前软件环境标识所标识的主机之间的正常数据传输的目的。
在一个可选的实施例中,所述PLD 302包括目标重构逻辑单元和目标配置逻辑单元。
在上述实施例中,PLD 302中可包括目标重构逻辑单元和目标配置逻辑单元,具体地,控制器304可根据目标配置信息对目标重构逻辑单元进行重构逻辑配置,以及对目标配置逻辑单元进行配置逻辑配置,从而实现HCA卡与当前软件环境之间的正常数据传输的目的。
在一个可选的实施例中,所述目标重构逻辑单元包括一组重构逻辑门,其中,所述一组重构逻辑门用于对所述PLD 302进行重构逻辑配置;所述目标配置逻辑单元包括一组配置逻辑门,其中,所述一组配置逻辑门用于对所述PLD 302进行配置逻辑配置。
在上述实施例中,目标重构逻辑单元中可包括一组重构逻辑门,在实际应用中,目标重构逻辑单元可包括一个或多个可重构逻辑块,每个可重构逻辑块可包括一个或多个可重构逻辑组件,每个可重构逻辑组件可包括一个或多个可重构逻辑元件,每个可重构逻辑元件可包括一个或多个可重构逻辑门,因此,目标重构逻辑单元中包括一组重构逻辑门,基于该一组重构逻辑门可实现对PLD 302的重构逻辑配置;同理,目标配置逻辑单元中可包括一组配置逻辑门,在实际应用中,目标配置逻辑单元可包括一个或多个可配置逻辑块,每个配置构逻辑块可包括一个或多个可配置逻辑组件,每个可配置逻辑组件可包括一个或多个可配置逻辑元件,每个可配置逻辑元件可包括一个或多个可配置逻辑门,因此,目标配置逻辑单元中包括一组配置逻辑门,基于该一组配置逻辑门可实现对PLD 302的配置逻辑配置。
在一个可选的实施例中,所述目标配置信息中包括目标硬件参数和目标软件参数,其中,所述目标硬件参数用于指示对所述目标重构逻辑单元进行配置,所述目标软件参数用于指示对所述目标配置逻辑单元进行配置。
在上述实施例中,前述目标配置信息中可包括目标硬件参数和目标软件参数,基于目标硬件参数对PLD中的目标重构逻辑单元进行配置,以及基于目标软件参数对PLD中的目标配置逻辑单元进行配置,从而实现HCA卡的硬件功能和实现HCA卡的软件功能。
在一个可选的实施例中,所述控制器304中设置有高速串行计算机扩展总线标准PCIE接口,其中,所述控制器304通过所述PCIE接口获取所述当前软件环境标识。
在上述实施例中,控制器304可通过PCIE(Peripheral Component InterconnectExpress,***组件快速互连)接口获取主机的当前软件环境标识,PCIE接口是一种高速串行计算机扩展总线标准。
需要说明的是,本申请实施例中的HCA卡控制***可设置于HCA卡上,即与HCA卡集成于一起,也可作为一个独立的控制部件与HCA卡连接。
显然,上述所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。下面结合实施例对本申请进行具体说明。
图4是根据本申请实施例的改善HCA卡环境兼容性的方法流程图,包括以下步骤:
1、在HCA卡上设置一个可编程逻辑器件(PLD),该PLD包含一个可重构逻辑单元(RLU)和一个可配置逻辑单元(CLU);
2、在HCA卡上设置一个存储器(对应于前述目标存储器),该存储器存储有多个软件环境信息(SEI),每个SEI包含一个软件环境标识(SEID)和一个与该软件环境对应的配置信息(CI),其中CI包含一个硬件参数(HP)和一个软件参数(SP);
如表1所示,表1中记录了不同的软件环境标识所对应的配置信息,例如,标识1(arm_centos7)对应的配置信息包括:硬件参数HP为aarch64架构、软件参数SP为centosv7.1,标识14(X86_redhat8)对应的配置信息包括:硬件参数HP为X86_64架构、软件参数SP为redhat v8.5等,表1仅为一种示例,在实际应用中,还可包括其它的标识及与其对应的配置信息。
表1
3、当HCA卡连接到计算机主机时,通过PCIe(PCI-express)接口获取当前软件环境标识(CSEID),并在存储器中查找与CSEID匹配的SEI;
4、如果找到匹配的SEI,则根据该SEI中的CI对PLD进行配置,其中RLU根据HP进行重构逻辑配置,CLU根据SP进行配置逻辑配置;
5、如果没有找到匹配的SEI,则将PCIe接口获取的当前软件环境标识(CSEID)添加到存储器中,根据预设的默认配置信息(DCI)对PLD进行配置;
6、通过配置后的PLD实现HCA卡与当前软件环境之间的数据传输。即配置完成后可实现HCA卡与当前软件环境之间的正常数据传输。
需要说明的是,上述步骤1、步骤2不是每次都需执行的,只需执行一次即可,当HCA卡与主机连接后,即当HCA卡正式使用后,只需执行上述步骤3~步骤6即可。
在上述实施例中,当HCA卡连接到计算机主机时,通过PCIe接口获取当前软件环境信息,确认当前***类型(如Ubuntu,redhat,centos,fedora等),***版本,(如ubuntu20.04,redhat8.5,centos8.1,fedor36)确认当前CPU架构(如X86_64,aarch64),根据预设的默认信息进行架构,***类型、***版本匹配, 可编程逻辑器件PLD根据获取的架构信息HP进行重构逻辑配置,根据OS信息SP进行配置逻辑配置。
图5是根据本申请实施例的改善HCA卡环境兼容性的装置示意图,该装置包括:一个可编程逻辑器件(PLD)、一个存储器和一个控制器。下面对各部分进行说明:
(1)、一个可编程逻辑器件(PLD),该PLD包含一个可重构逻辑单元(RLU)和一个可配置逻辑单元(CLU),用于根据不同的软件环境信息(SEI)进行逻辑配置,以实现HCA卡与当前软件环境之间的数据传输;
(2)、一个存储器,该存储器存储有多个软件环境信息(SEI),每个SEI包含一个软件环境标识(SEID)和一个与该软件环境对应的配置信息(CI),其中CI包含一个硬件参数(HP)和一个软件参数(SP);
(3)、一个控制器,该控制器用于通过PCIe接口获取当前软件环境标识(CSEID),并在存储器中查找与CSEID匹配的SEI,如果找到匹配的SEI,则根据该SEI中的CI对PLD进行配置,其中RLU根据HP进行重构逻辑配置,CLU根据SP进行配置逻辑配置;如果没有找到匹配的SEI,则将PCIe接口获取的当前软件环境标识(CSEID)添加到存储器中,根据预设的默认配置信息(DCI)对PLD进行配置。
图6是根据本申请实施例的PLD结构示意图,下面对PLD中包括的可重构逻辑单元(RLU)和可配置逻辑单元(CLU)分别进行说明:
(1)、一个可重构逻辑单元(RLU),该RLU包含多个可重构逻辑块(RLB),每个RLB包含多个可重构逻辑组件(RLC),每个RLC包含多个可重构逻辑元件(RLE),每个RLE包含多个可重构逻辑门(RLG),用于根据硬件参数(HP)进行重构逻辑配置,以实现HCA卡的硬件功能;
(2)、一个可配置逻辑单元(CLU),该CLU包含多个可配置逻辑块(CLB),每个CLB包含多个可配置逻辑组件(CLC),每个CLC包含多个可配置逻辑元件(CLE),每个CLE包含多个可配置逻辑门(CLG),用于根据软件参数(SP)进行配置逻辑配置,以实现HCA卡的软件功能。
本申请实施例提供了改善HCA卡环境兼容性的方法和装置,通过本申请实施例,可以改善HCA卡的环境兼容性,降低对软件环境的依赖性,提高HCA卡的性能和稳定性,实现更高效的数据传输。通过将HCA卡的硬件设计和软件设计优化,合理设置软硬件接口,实现更稳定的传输效果。
与相关技术相比,本申请实施例可以带来以下有益效果:1)通过在HCA卡上设置一个可编程逻辑器件(PLD),可以根据不同的软件环境信息(SEI)进行逻辑配置,从而改善HCA卡的环境兼容性,降低对软件环境的依赖性;2)通过在HCA卡上设置一个存储器,可以存储多个软件环境信息(SEI),并根据当前软件环境标识(CSEID)进行查找和匹配,从而实现HCA卡的自适应配置,提高HCA卡的性能和稳定性;3)通过合理设置软硬件接口,可以实现HCA卡与当前软件环境之间的高效数据传输,提高HCA卡的传输效果。
下面对本申请实施例中出现的相关术语解释如下:
HCA:Host Channel Adapter,主机通道适配器;
PLD:Programmable Logic Device,可编程逻辑器件;
RLU:Reconsitution Logic Unit,可重构逻辑单元;
RLB:Reconsitution Logic Block,可重构逻辑块;
RLC:Reconsitution Logic Cell,可重构逻辑组件;
RLE:Reconsitution Logic Element,可重构逻辑元件;
RLG:Reconsitution Logic Gate,可重构逻辑门;
CLU:Configuration Logic Unit,可配置逻辑单元;
CLB:Configuration Logic Block,可配置逻辑块;
CLC:Configuration Logic Cell,可配置逻辑组件;
CLE:Configuration Logic Element,可配置逻辑元件;
CLG:Configuration Logic Gate,可配置逻辑门;
PCIE:Peripheral Component Interconnect Express(***组件快速互连),是一种高速串行计算机扩展总线标准。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
在本实施例中还提供了一种HCA卡控制装置,图7是根据本申请实施例的一种HCA卡控制装置结构图,如图7所示,该装置包括:
获取模块702,用于在主机通道适配器HCA卡与主机连接的情况下,获取所述主机的当前软件环境标识,其中,所述当前软件环境标识用于标识所述主机中的处理器以及所述主机中的操作***;
第一确定模块704,用于基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息,其中,所述一组软件环境配置信息中包括的每个软件环境配置信息中均包括软件环境标识以及与所述软件环境标识相匹配的配置信息,所述HCA卡上设置有所述目标存储器,所述目标配置信息用于表示适配所述处理器和所述操作***的目标指令集;
处理模块706,用于将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中,以使得所述目标指令集中的指令被允许在所述HCA卡中执行,其中,所述HCA卡上设置有所述PLD。
在一个可选的实施例中,上述装置还包括:执行模块,用于在将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中之后,在接收到所述主机向所述HCA卡发送的目标指令、且所述目标指令是所述目标指令集中的指令的情况下,在所述HCA卡中执行所述目标指令。
在一个可选的实施例中,上述执行模块包括:运行子模块,用于在所述HCA卡中运行所述PLD中与所述目标指令对应的目标电路,其中,所述目标电路用于实现所述目标指令的指令执行逻辑。
在一个可选的实施例中,上述执行模块包括:第一执行子模块,用于在所述目标指令用于表示对所述主机发送的目标业务的数据进行转发的情况下,通过所述HCA卡中的控制器执行在所述PLD中记录的所述目标指令的数据转发逻辑,所述数据转发逻辑用于对所述目标业务的数据进行路由信息的封装,并向封装的目标路由地址发送封装得到的数据包;或者第二执行子模块,用于在所述目标指令用于表示对所述主机发送的目标业务的数据进行校验的情况下,通过所述HCA卡中的控制器执行在所述PLD中记录的所述目标指令的数据校验逻辑,所述数据校验逻辑用于对所述目标业务的数据进行校验。
在一个可选的实施例中,上述处理模块706包括:创建子模块,用于对于所述目标指令集中的第i个指令,在所述PLD中创建对应的第i个电路,其中,所述第i个电路用于实现所述第i个指令的指令执行逻辑,其中,i为大于或等于1的正整数。
在一个可选的实施例中,上述第一确定模块704包括:查找子模块,用于在目标存储器所存储的所述一组软件环境配置信息中查找是否存在与所述当前软件环境标识匹配的目标软件环境配置信息,得到查找结果;确定子模块,用于在所述查找结果表示所述一组软件环境配置信息中存在所述目标软件环境配置信息的情况下,将所述目标软件环境配置信息中所包含的配置信息确定为所述目标配置信息,其中,所述目标软件环境配置信息中包括与所述当前软件环境标识相同的所述软件环境标识。
在一个可选的实施例中,上述装置还包括:第二确定模块,用于在所述查找结果表示所述一组软件环境配置信息中不存在所述目标软件环境配置信息的情况下,将预设配置信息确定为所述目标配置信息,其中,所述预设配置信息用于指示按照预设参数对所述PLD进行配置。
在一个可选的实施例中,上述装置还包括:添加模块,用于在所述查找结果表示所述一组软件环境配置信息中不存在所述目标软件环境配置信息的情况下,在所述目标存储器中添加第一配置信息,其中,所述第一配置信息中包括所述当前软件环境标识以及与所述前软件环境标识匹配的预设配置信息。
在一个可选的实施例中,上述查找子模块包括:对比单元,用于将所述当前软件环境标识依次与一组软件环境标识进行对比,得到对比结果,其中,所述对比结果用于指示所述一组软件环境标识中是否包括与所述当前软件环境标识相同的软件环境标识,所述一组软件环境配置信息中包括所述一组软件环境标识;确定单元,用于基于所述对比结果确定所述查找结果。
在一个可选的实施例中,上述确定单元包括:第一确定子单元,用于在所述对比结果表示所述一组软件环境标识中包括与所述当前软件环境标识相同的软件环境标识的情况下,确定所述查找结果为所述一组软件环境配置信息中存在所述目标软件环境配置信息;第二确定子单元,用于在所述对比结果表示所述一组软件环境标识中不包括与所述当前软件环境标识相同的软件环境标识的情况下,确定所述查找结果为所述一组软件环境配置信息中不存在所述目标软件环境配置信息。
在一个可选的实施例中,上述处理模块706包括:配置子模块,用于将所述目标指令集配置在目标重构逻辑单元和目标配置逻辑单元中,其中,所述PLD包括所述目标重构逻辑单元和所述目标配置逻辑单元。
在一个可选的实施例中,上述配置子模块包括:配置单元,用于基于目标硬件参数对所述目标重构逻辑单元进行配置,以及基于目标软件参数对所述目标配置逻辑单元进行配置,其中,所述目标配置信息中包括所述目标硬件参数和所述目标软件参数,所述目标硬件参数用于配置所述HCA卡的硬件功能,所述目标软件参数用于配置所述HCA卡的软件功能。
在一个可选的实施例中,所述目标重构逻辑单元包括一组重构逻辑门,其中,所述一组重构逻辑门用于对所述PLD进行重构逻辑配置;所述目标配置逻辑单元包括一组配置逻辑门,其中,所述一组配置逻辑门用于对所述PLD进行配置逻辑配置。
在一个可选的实施例中,上述装置还包括:配置模块,用于在基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息之前,配置所述一组软件环境配置信息;存储模块,用于将所述一组软件环境配置信息存储至目标存储器中,其中,所述HCA卡上设置有所述目标存储器。
在一个可选的实施例中,上述获取模块702包括:获取子模块,用于通过高速串行计算机扩展总线标准PCIE接口获取所述当前软件环境标识。
在一个可选的实施例中,上述装置还包括:控制模块,用于在将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中之后,通过所述PLD控制所述HCA卡与所述当前软件环境标识所指示的软件环境之间进行数据传输。
需要说明的是,上述各个单元或模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述单元或模块均位于同一处理器中;或者,上述各个单元或模块以任意组合的形式分别位于不同的处理器中。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本申请的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请实施例不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请实施例,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请实施例的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请实施例的保护范围之内。
Claims (23)
1.一种HCA卡控制方法,其特征在于,包括:
在主机通道适配器HCA卡与主机连接的情况下,获取所述主机的当前软件环境标识,其中,所述当前软件环境标识用于标识所述主机中的处理器以及所述主机中的操作***;
基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息,其中,所述一组软件环境配置信息中包括的每个软件环境配置信息中均包括软件环境标识以及与所述软件环境标识相匹配的配置信息,所述HCA卡上设置有所述目标存储器,所述目标配置信息用于表示适配所述处理器和所述操作***的目标指令集;
将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中,以使得所述目标指令集中的指令被允许在所述HCA卡中执行,其中,所述HCA卡上设置有所述PLD;
其中,将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中,包括:对于所述目标指令集中的第i个指令,在所述PLD中创建对应的第i个电路,其中,所述第i个电路用于实现所述第i个指令的指令执行逻辑,其中,i为大于或等于1的正整数。
2.根据权利要求1所述的方法,其特征在于,在将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中之后,所述方法还包括:
在接收到所述主机向所述HCA卡发送的目标指令、且所述目标指令是所述目标指令集中的指令的情况下,在所述HCA卡中执行所述目标指令。
3.根据权利要求2所述的方法,其特征在于,在所述HCA卡中执行所述目标指令,包括:
在所述HCA卡中运行所述PLD中与所述目标指令对应的目标电路,其中,所述目标电路用于实现所述目标指令的指令执行逻辑。
4.根据权利要求2所述的方法,其特征在于,在所述HCA卡中执行所述目标指令,包括:
在所述目标指令用于表示对所述主机发送的目标业务的数据进行转发的情况下,通过所述HCA卡中的控制器执行在所述PLD中记录的所述目标指令的数据转发逻辑,所述数据转发逻辑用于对所述目标业务的数据进行路由信息的封装,并向封装的目标路由地址发送封装得到的数据包;或者
在所述目标指令用于表示对所述主机发送的目标业务的数据进行校验的情况下,通过所述HCA卡中的控制器执行在所述PLD中记录的所述目标指令的数据校验逻辑,所述数据校验逻辑用于对所述目标业务的数据进行校验。
5.根据权利要求1所述的方法,其特征在于,所述基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息,包括:
在所述目标存储器所存储的所述一组软件环境配置信息中查找是否存在与所述当前软件环境标识匹配的目标软件环境配置信息,得到查找结果;
在所述查找结果表示所述一组软件环境配置信息中存在所述目标软件环境配置信息的情况下,将所述目标软件环境配置信息中所包含的配置信息确定为所述目标配置信息,其中,所述目标软件环境配置信息中包括与所述当前软件环境标识相同的所述软件环境标识。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在所述查找结果表示所述一组软件环境配置信息中不存在所述目标软件环境配置信息的情况下,将预设配置信息确定为所述目标配置信息,其中,所述预设配置信息用于指示按照预设参数对所述PLD进行配置。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在所述查找结果表示所述一组软件环境配置信息中不存在所述目标软件环境配置信息的情况下,在所述目标存储器中添加第一配置信息,其中,所述第一配置信息中包括所述当前软件环境标识以及与所述前软件环境标识匹配的预设配置信息。
8.根据权利要求5所述的方法,其特征在于,所述在所述目标存储器所存储的所述一组软件环境配置信息中查找是否存在与所述当前软件环境标识匹配的目标软件环境配置信息,得到查找结果,包括:
将所述当前软件环境标识依次与一组软件环境标识进行对比,得到对比结果,其中,所述对比结果用于指示所述一组软件环境标识中是否包括与所述当前软件环境标识相同的软件环境标识,所述一组软件环境配置信息中包括所述一组软件环境标识;
基于所述对比结果确定所述查找结果。
9.根据权利要求8所述的方法,其特征在于,所述基于所述对比结果确定所述查找结果,包括:
在所述对比结果表示所述一组软件环境标识中包括与所述当前软件环境标识相同的软件环境标识的情况下,确定所述查找结果为所述一组软件环境配置信息中存在所述目标软件环境配置信息;
在所述对比结果表示所述一组软件环境标识中不包括与所述当前软件环境标识相同的软件环境标识的情况下,确定所述查找结果为所述一组软件环境配置信息中不存在所述目标软件环境配置信息。
10.根据权利要求1所述的方法,其特征在于,所述将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中,包括:
将所述目标指令集配置在目标重构逻辑单元和目标配置逻辑单元中,其中,所述PLD包括所述目标重构逻辑单元和所述目标配置逻辑单元。
11.根据权利要求10所述的方法,其特征在于,所述将所述目标指令集配置在目标重构逻辑单元和目标配置逻辑单元中,包括:
基于目标硬件参数对所述目标重构逻辑单元进行配置,以及基于目标软件参数对所述目标配置逻辑单元进行配置,其中,所述目标配置信息中包括所述目标硬件参数和所述目标软件参数,所述目标硬件参数用于配置所述HCA卡的硬件功能,所述目标软件参数用于配置所述HCA卡的软件功能。
12.根据权利要求10所述的方法,其特征在于,
所述目标重构逻辑单元包括一组重构逻辑门,其中,所述一组重构逻辑门用于对所述PLD进行重构逻辑配置;
所述目标配置逻辑单元包括一组配置逻辑门,其中,所述一组配置逻辑门用于对所述PLD进行配置逻辑配置。
13.根据权利要求1所述的方法,其特征在于,在基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息之前,所述方法还包括:
配置所述一组软件环境配置信息;
将所述一组软件环境配置信息存储至所述目标存储器中。
14.根据权利要求1所述的方法,其特征在于,所述获取所述主机的当前软件环境标识,包括:
通过高速串行计算机扩展总线标准PCIE接口获取所述当前软件环境标识。
15.根据权利要求1所述的方法,其特征在于,在将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中之后,所述方法还包括:
通过所述PLD控制所述HCA卡与所述当前软件环境标识所指示的软件环境之间进行数据传输。
16.一种HCA卡控制***,其特征在于,包括:
可编程逻辑器件PLD,设置于主机通道适配器HCA卡上;
控制器,与所述PLD通信连接,所述控制器被设置为执行以下操作:
在所述HCA卡与主机连接的情况下,获取所述主机的当前软件环境标识,其中,所述当前软件环境标识用于标识所述主机中的处理器以及所述主机中的操作***;基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息,其中,所述一组软件环境配置信息中包括的每个软件环境配置信息中均包括软件环境标识以及与所述软件环境标识相匹配的配置信息,所述目标配置信息用于表示适配所述处理器和所述操作***的目标指令集;将所述目标配置信息表示的所述目标指令集配置在所述PLD中,以使得所述目标指令集中的指令被允许在所述HCA卡中执行;
所述目标存储器,与所述控制器通信连接,所述目标存储器被设置为存储所述一组软件环境配置信息;
其中,所述控制器被设置为通过以下方式将所述目标配置信息表示的所述目标指令集配置在所述PLD中:对于所述目标指令集中的第i个指令,在所述PLD中创建对应的第i个电路,其中,所述第i个电路用于实现所述第i个指令的指令执行逻辑,其中,i为大于或等于1的正整数。
17.根据权利要求16所述的HCA卡控制***,其特征在于,所述PLD包括目标重构逻辑单元和目标配置逻辑单元。
18.根据权利要求17所述的HCA卡控制***,其特征在于,
所述目标重构逻辑单元包括一组重构逻辑门,其中,所述一组重构逻辑门用于对所述PLD进行重构逻辑配置;
所述目标配置逻辑单元包括一组配置逻辑门,其中,所述一组配置逻辑门用于对所述PLD进行配置逻辑配置。
19.根据权利要求17所述的HCA卡控制***,其特征在于,
所述目标配置信息中包括目标硬件参数和目标软件参数,其中,所述目标硬件参数用于指示对所述目标重构逻辑单元进行配置,所述目标软件参数用于指示对所述目标配置逻辑单元进行配置。
20.根据权利要求16所述的HCA卡控制***,其特征在于,
所述控制器中设置有高速串行计算机扩展总线标准PCIE接口,其中,所述控制器通过所述PCIE接口获取所述当前软件环境标识。
21.一种HCA卡控制装置,其特征在于,包括:
获取模块,用于在主机通道适配器HCA卡与主机连接的情况下,获取所述主机的当前软件环境标识,其中,所述当前软件环境标识用于标识所述主机中的处理器以及所述主机中的操作***;
第一确定模块,用于基于目标存储器中预先存储的一组软件环境配置信息确定与所述当前软件环境标识匹配的目标配置信息,其中,所述一组软件环境配置信息中包括的每个软件环境配置信息中均包括软件环境标识以及与所述软件环境标识相匹配的配置信息,所述HCA卡上设置有所述目标存储器,所述目标配置信息用于表示适配所述处理器和所述操作***的目标指令集;
处理模块,用于将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中,以使得所述目标指令集中的指令被允许在所述HCA卡中执行,其中,所述HCA卡上设置有所述PLD;
其中,所述处理模块用于通过以下方式将所述目标配置信息表示的所述目标指令集配置在可编程逻辑器件PLD中:对于所述目标指令集中的第i个指令,在所述PLD中创建对应的第i个电路,其中,所述第i个电路用于实现所述第i个指令的指令执行逻辑,其中,i为大于或等于1的正整数。
22.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至15任一项中所述的方法的步骤。
23.一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至15任一项中所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311030380.9A CN116737626B (zh) | 2023-08-16 | 2023-08-16 | Hca卡控制方法、***、装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311030380.9A CN116737626B (zh) | 2023-08-16 | 2023-08-16 | Hca卡控制方法、***、装置、存储介质及电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116737626A CN116737626A (zh) | 2023-09-12 |
CN116737626B true CN116737626B (zh) | 2023-11-10 |
Family
ID=87904800
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311030380.9A Active CN116737626B (zh) | 2023-08-16 | 2023-08-16 | Hca卡控制方法、***、装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116737626B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102455774A (zh) * | 2010-10-18 | 2012-05-16 | 无锡江南计算技术研究所 | 一种带有主机通道适配器设备的主机及其睡眠和唤醒方法 |
CN102906693A (zh) * | 2010-06-23 | 2013-01-30 | 国际商业机器公司 | 用于与适配器进行通信的存储/存储块指令 |
CN110008159A (zh) * | 2019-04-11 | 2019-07-12 | 苏州浪潮智能科技有限公司 | Pcie宽度自动适配方法、装置及电子设备和存储介质 |
CN115687806A (zh) * | 2022-09-27 | 2023-02-03 | 海尔优家智能科技(北京)有限公司 | 目标设备列表的确定方法、装置、存储介质及电子装置 |
CN116049000A (zh) * | 2023-01-19 | 2023-05-02 | 中国人民财产保险股份有限公司 | 环境参数配置方法、装置、设备、存储介质及产品 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6748499B2 (en) * | 2001-11-15 | 2004-06-08 | International Business Machines Corporation | Sharing memory tables between host channel adapters |
US9128740B2 (en) * | 2013-07-22 | 2015-09-08 | International Business Machines Corporation | Operating system virtualization for host channel adapters |
-
2023
- 2023-08-16 CN CN202311030380.9A patent/CN116737626B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102906693A (zh) * | 2010-06-23 | 2013-01-30 | 国际商业机器公司 | 用于与适配器进行通信的存储/存储块指令 |
CN102455774A (zh) * | 2010-10-18 | 2012-05-16 | 无锡江南计算技术研究所 | 一种带有主机通道适配器设备的主机及其睡眠和唤醒方法 |
CN110008159A (zh) * | 2019-04-11 | 2019-07-12 | 苏州浪潮智能科技有限公司 | Pcie宽度自动适配方法、装置及电子设备和存储介质 |
CN115687806A (zh) * | 2022-09-27 | 2023-02-03 | 海尔优家智能科技(北京)有限公司 | 目标设备列表的确定方法、装置、存储介质及电子装置 |
CN116049000A (zh) * | 2023-01-19 | 2023-05-02 | 中国人民财产保险股份有限公司 | 环境参数配置方法、装置、设备、存储介质及产品 |
Also Published As
Publication number | Publication date |
---|---|
CN116737626A (zh) | 2023-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9720678B2 (en) | Network switching method, version upgrade method, and terminal device | |
CN105373404A (zh) | 软件镜像烧录方法及设备 | |
EP3497889B1 (en) | Device virtualization for containers | |
CN113296859B (zh) | 页面加载方法及装置、存储介质、电子装置 | |
CN103595769B (zh) | Sdk实现文件上传的方法与装置 | |
CN108628712B (zh) | 一种应用程序测试方法及终端设备 | |
CN114691390A (zh) | 用户态程序的处理方法和装置、存储介质及处理器 | |
CN111008220A (zh) | 数据源的动态识别方法及装置、存储介质和电子装置 | |
CN110569129A (zh) | 资源分配方法及装置、存储介质、电子装置 | |
CN116737626B (zh) | Hca卡控制方法、***、装置、存储介质及电子装置 | |
CN113434184A (zh) | 设备升级方法、装置、存储介质及电子装置 | |
CN112388625B (zh) | 任务的下发方法及装置、任务的执行方法及装置 | |
CN115022424B (zh) | 水电lcu控制器网卡虚拟控制方法、***、设备及其介质 | |
CN111131324A (zh) | 业务***的登陆方法及装置、存储介质、电子装置 | |
CN110580172B (zh) | 配置规则的验证方法及装置、存储介质、电子装置 | |
CN112650710B (zh) | 数据迁移的发送方法及装置、存储介质、电子装置 | |
CN112866034B (zh) | 一种无人机巡航控制方法、装置及云服务器 | |
CN114090074A (zh) | 运行环境的配置方法和装置、存储介质及电子装置 | |
CN113110982B (zh) | 数据访问层验证方法及装置、存储介质及电子装置 | |
CN111427603A (zh) | 应用程序的升级方法及装置 | |
CN103973581A (zh) | 一种报文数据处理方法、装置及*** | |
CN113076128B (zh) | 用于机器人配置的方法、装置、电子设备及存储介质 | |
CN104468671A (zh) | 一种配置信息处理方法、装置及相关设备 | |
CN111669355B (zh) | 一种批量处理nginx网络隔离空间的方法及nginx服务器 | |
CN112929212A (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 |