CN117834447B - 基于PCIe Switch的互联池化***拓扑管理装置及方法 - Google Patents
基于PCIe Switch的互联池化***拓扑管理装置及方法 Download PDFInfo
- Publication number
- CN117834447B CN117834447B CN202410247946.1A CN202410247946A CN117834447B CN 117834447 B CN117834447 B CN 117834447B CN 202410247946 A CN202410247946 A CN 202410247946A CN 117834447 B CN117834447 B CN 117834447B
- Authority
- CN
- China
- Prior art keywords
- topology
- host
- place
- nodes
- state
- 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
- 238000011176 pooling Methods 0.000 title claims abstract description 21
- 238000000034 method Methods 0.000 title claims abstract description 11
- 238000012544 monitoring process Methods 0.000 claims abstract description 48
- 230000008859 change Effects 0.000 claims abstract description 9
- 238000007726 management method Methods 0.000 claims description 43
- 238000005192 partition Methods 0.000 claims description 19
- 238000003780 insertion Methods 0.000 claims description 8
- 230000037431 insertion Effects 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 6
- 230000002159 abnormal effect Effects 0.000 claims description 5
- 238000004458 analytical method Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 abstract description 4
- 238000011144 upstream manufacturing Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000011160 research Methods 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 230000005856 abnormality Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/15—Interconnection of switching modules
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Multi Processors (AREA)
Abstract
本发明涉及基于PCIe Switch的互联池化***拓扑管理装置及方法,包括用于管理和维护板卡及HOST节点信息的拓扑管理单元、用于查询主机节点是否在位或是否处于工作状态的拓扑查询单元、拓扑监测和状态更新单元;拓扑监测和状态更新单元根据所述拓扑查询单元获取的拓扑结构,监测所有拓扑节点工作状态的变化情况对其状态进行更新,对于新增拓扑节点分配资源,对于移除拓扑节点释放资源。本发明提供了对基于PCIe Switch的复杂互联***拓扑查询机制,可获取***中在位的主机节点,通过心跳监测机制动态的查询所有拓扑节点是否在位,工作是否正常,并对状态发生变化的节点做出及时的状态更新,以维护整个***的稳定性。
Description
技术领域
本发明涉及基于PCIe Switch的互联池化***拓扑管理装置及方法,属于PCIeSwitch互联技术领域。
背景技术
随着人工智能技术应用的不断突破,搭载GPU/NPU/FPGA/DPU等加速芯片,构建CPU+XPU的异构算力网络的需求越来越大,迫切需要高带宽、低延迟的多节点互连通信技术来满足不同节点间的计算、网络、存储三大维度的横向协同。
目前节点之间通信通常采用网络方案,但带宽低、时延高,另外RPC、协议处理、内存拷贝、压缩会占用30%左右的CPU资源;使用PCIe实现不同节点CPU与各种加速芯片的互连通信和资源池化,相比使用网络具有低延迟、高带宽、低开销等性能优势。
基于PCIe Switch,一方面可实现单个***中上游处理器节点之间以及与下游设备节点数据交互,另一方面也可通过PCIe Switch NTB实现不同***间互联,来实现多个独立***之间的数据交互,从而扩展互联***,进一步扩大处理器和设备的池化,实现资源按需分配提高整体利用效率。这就对互联***拓扑信息的管理提出了较高的要求,各个处理器需知晓互联***中其他处理器及设备的存在,并监测其状态,从而实现资源交互及共享。
“一种基于PCIe交换机的多节点动态管理方法及***”(公开号CN116248619A)提供了一种基于PCIe交换机的多节点动态管理方法及***,***包括PCIe交换机、多处理器节点,多处理器节点与PCIe交换机连接,多处理器节点包括一个上游端口节点、多个下游端口节点,上游端口节点用于PCIe交换机链路配置、数据处理、数据分发、数据管理,下游端口节点用于接收处理上游端口节点分配的数据,并将处理后的数据输出。其所述方法主要针对一个上游端口多个下游端口场景,对应为一个主处理器连接多个PCIe设备,通过Switch拓展端口,并处理数据交互流程。
“一种PCIe NTB的***实现管理方法”(公开号CN113132199A)提供了一种PCIeNTB的***实现管理方法,包括在第一PCIe总线控制器中设置第一NT模块;在第二PCIe总线控制器中设置第二NT模块;将所述第二NT模块作为第二PCIe总线控制器的第一上行端口的下挂设备;通过所述第一NT模块和第二NT模块完成地址转换和ID转换,以实现所述第一PCIe总线控制器和所述第二PCIe总线控制器之间的NTB互联。所述方法实现了PCIe Switch通用架构基础上对NTB功能的支持,满足不同场景的NTB应用,提高了端口配置灵活性,降低了建链成本。
但是,上述现有技术仍然存在很多不足之处,具体情况如下所述:
1)、拓扑连接比较单一
具体表现:现有PCIe Switch NTB互联技术中,多应用于设备拓展和处理器failover场景,***中HOST节点和设备节点拓扑相对简单;对于Switch配置多个Partition场景和多个Switch连接的场景,感知到所连接起来的所有HOST及PCIe设备,并管理监测拓扑结构是具体一定难度的。
2)、拓扑节点热插拔感知弱
具体表现:互联***中某一HOST节点或设备节点发生热插拔或异常挂机等情况时,***中其他的HOST无法感知这一事件,不利于整个拓扑的管理和更新。
在进行基于PCIe Switch的多HOST互联技术研究时,发现现有技术未考虑多个独立PCIe拓扑结构互联之后的多HOST及多EP拓扑管理问题,尤其针对设备热插拔或异常复位等情况出现时的动态拓扑更新问题。
基于此,提出本发明。
发明内容
在进行基于PCIe Switch非透明桥的互联池化设计研究时,发现具备池化功能的互联***是比较复杂的,最小单元为Switch上的partition,其拓扑结果可能为USP+NT+EP的模式,基于此,互联场景可扩展为一个Switch内多个partition的情况,再进一步,可扩展为多个Switch互联的情况,其中Switch起到拓展端口挂接设备的功能,以及最重要的非透明桥隔离多HOST主机的功能。
在进行互联池化***拓扑管理研究时发现,复杂***互联相互间的设备状态和异常情况需要被对方感知,尤其针对跨主机数据交互和设备***拔出的情况,需要让***中所有的HOST感知到,并做出正确的处理,才能维护整个***的稳定运行。
在本发明的研究过程中,在进行互联池化***中跨主机数据访问时发现,不同HOST间需要通过非透明桥NTB进行地址翻译,即HOST1访问HOST2子拓扑中的内存时(HOST2主存或HOST2对应EP的地址空间),将HOST2上的远端地址映射到HOST1的NTB的BAR空间,这样HOST1看到的是同属于同一PCIe域的地址,实际访问时是映射到了远端,如果这是HOST2或者是对应的设备复位或者下电,需要将HOST1上对这段地址的映射清除,以防止访问时出现异常。这就需要HOST1能感知到其他主机或者设备的实时状态,并及时做出处理。
本发明提出了基于PCIe Switch的互联池化***拓扑管理装置及方法,用以解决现有技术中的两个问题:1)拓扑连接比较单一;2)拓扑节点热插拔感知弱;具体技术方案如下:
基于PCIe Switch的互联池化***拓扑管理装置,包括拓扑管理单元、拓扑查询单元、拓扑监测和状态更新单元;
所述拓扑管理单元用于管理和维护板卡及HOST节点信息;
所述拓扑查询单元用于查询主机节点是否在位、是否处于工作状态;
所述拓扑监测和状态更新单元根据所述拓扑查询单元获取的拓扑结构,监测所有拓扑节点工作状态的变化情况对其状态进行更新,对于新增拓扑节点分配资源,对于移除拓扑节点释放资源。
更进一步的改进,采用三个独立模组为分析主体,三个独立模组分别为C0模组、P0模组、P1模组,每个HOST拥有对应的Node_id。
更进一步的改进,三个独立模组配置如下:
C0模组支持***4个HOST主机,配置6个Partition,
Partition0为USP+NT,用于连接主HOST和EP,
Partition1/2/3为NT,用于连接HOST,
Partition4/6为Crosslink NT,用于连接其他模组;
P0模组支持***1个HOST,配置3个Partition,
Partition0为USP+NT,用于连接主HOST和EP,
Partition4/5为Crosslink NT,用于连接其他模组;
P1模组支持***1个HOST,配置3个Partition,
Partition0为USP+NT,用于连接主HOST和EP,
Partition5/6为Crosslink NT,用于连接其他模组。
更进一步的改进,基于PCIe Switch的互联池化***拓扑管理方法,包括以下步骤:
1)、拓扑节点管理
通过拓扑管理单元管理和维护板卡及HOST节点信息;
2)、拓扑查询
通过拓扑查询单元检查主机节点是否在位、工作是否正常;
3)、拓扑监测和状态更新
通过拓扑监测和状态更新单元监测所有拓扑节点工作状态的变化情况并对其状态进行更新,对于新增拓扑节点分配资源,对于移除拓扑节点释放资源。
更进一步的改进,在拓扑节点管理中,根据板卡类型、板卡编号、partition编号的不同,赋予每个主机不同的节点编号;
所述板卡类型和板卡编号由PCIe Switch板卡的SPI-NOR flash中存储的配置文件、EEPROM中存储的type_id和Switch的GPIO引脚绑定的Instance_id共同定义;所述partition编号由Switch分区决定。
更进一步的改进,所述拓扑查询单元的检查方法包括以下步骤:
1)、每个HOST在启动并加载驱动后,启动状态查询定时器;
2)、更新本HOST的在位状态寄存器,写入递增数据;
3)、查询本PCIe Switch中Crosslink NT的Link状态检测是否连接其他模组;
4)、查询所连接的模组内每个HOST所在partition的NT的Link状态,监测HOST主机是否在位;
5)、查询所连接的模组内每个HOST所维护的在位状态寄存器数据是否在更新,以检测HOST主机是否工作正常。
更进一步的改进,所述拓扑监测和状态更新单元通过启动心跳监测定时器,实现对所有HOST节点状态的监测。
更进一步的改进,所述拓扑监测和状态更新单元的工作流程包括以下步骤:
1)、在心跳监测定时器中,如果检测到对端HOST的在位状态寄存器中的值连续3次没有发生变化,表示该HOST的工作状态出现异常,此时,将对应HOST相关资源释放;
2)、在心跳监测定时器中,如果检测到对端HOST的Link状态由在位变成不在位,表示该HOST出现拔出或者下电退出情况,此时,将对应HOST相关资源释放;
3)、在心跳监测定时器中,如果检测到对端HOST的Link状态由不在位变成在位,表示该HOST被动态***;此时,查询该HOST的在位状态寄存器中数值是否连续3次都在变化,如果是,说明该HOST在位且工作正常,为对应HOST分配相关资源;
4)、在心跳监测定时器中,如果检测Crosslink NT的Link状态由在位变成不在位,表示对端模组被动态拔出,此时,将对端模组所属的HOST状态都置为不在位,并清除其对应的Memory资源和ID资源;
5)、在心跳监测定时器中,如果检测Crosslink NT的Link状态由不在位变成在位,表示对端模组被动态***,此时,查询对端模组所属的HOST是否在位且工作正常。
本发明的有益效果:
本发明与现有技术相比,提供了对基于PCIe Switch的复杂互联***拓扑查询机制,可获取***中在位的主机节点,通过心跳监测机制动态的查询所有拓扑节点是否在位,工作是否正常,并对状态发生变化的节点做出及时的状态更新,以维护整个***的稳定性。
附图说明
图1为C0模组连接示意图;
图2为P0模组连接示意图;
图3为P1模组连接示意图;
图4为Crosslink连接示意图;
图5为所述基于PCIe Switch的互联池化***拓扑管理装置的连接示意图;
图6为拓扑查询单元的流程图;
图7为拓扑监测和状态更新单元的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
缩略语和关键术语定义
PCIe:Peripheral Component Interconnect Express,一种高速串行计算机扩展总线标准,主要用于扩充计算机***总线数据吞吐量以及提高设备通信速度;
NTB:Non-Transparent Bridging,非透明桥是一种通过地址转换和数据包翻译的方式,解决了***间的地址冲突和数据包路由问题的实现;
HOST:主计算机通常在集中式计算机模式中被定义为大型分时计算机***;
GPU:Graphics Processing Unit,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器;
NPU:Neural Network Processing Unit,是一种专门为神经网络和机器学习处理数据而设计的处理器;
FPGA:Field Programmable Gate Array,现场可编程门阵列;
DPU:Data Processing Unit,也就是数据处理器;
CPU:Central Processing Unit,作为计算机***的运算和控制核心,是信息处理、程序运行的最终执行单元;
RC:Root Complex,RC设备用于连接CPU/内存子***和I/O设备;
EP:EndPoint,EP设备通常表示一个串行或I/O设备;
USP:Upstream Port,上行方向的端口;
Partition:PCIe交换芯片可配置成多个独立的PCIe隔离域,成为partition;
BAR:Base Address Register,基地址寄存器;
Crosslink:是PCIe规范定义的一种特性,支持switch的上游端口可以与其他Switch的上游端口连接,下游端口可以与其他Switch的下游端口连接;
NT:指PCIe非透明桥;
Interconnection:内部互联;
SWITCH:交换芯片;
DSP:Downstream Port,下行方向的端口;
P-P:PCI-to-PCI bridge,提供PCI结构到PCI结构的互联;
“A”、“C”、“B”:指模组见使用光纤连接时使用的端口;
“0x1”、“0x7”、“0xc”:指模组见互相连接时使用的地址标识;
“FT0”、“FT1”、“FT2”、“FT3”、“FT4”、“FT5”是指不同编号的国产飞腾处理器。
实施例1
基于PCIe Switch的互联池化***拓扑管理装置包括拓扑管理单元、拓扑查询单元、拓扑监测和状态更新单元;
所述拓扑管理单元用于管理和维护所述基于PCIe Switch的互联池化***拓扑管理装置中所涉及的板卡及HOST节点信息;
所述拓扑查询单元用于查询所述基于PCIe Switch的互联池化***拓扑管理装置中所有主机节点是否在位、是否处于工作状态;
所述拓扑监测和状态更新单元根据所述拓扑查询单元获取的拓扑结构,监测所有拓扑节点工作状态的变化情况对其状态进行更新,对于新增拓扑节点分配资源,对于移除拓扑节点释放资源。
实施例2
基于实施例1,基于PCIe Switch的互联池化***拓扑管理方法,采用实施例1所述的基于PCIe Switch的互联池化***拓扑管理装置进行拓扑节点状态动态监测和资源管理,包括:
1、拓扑节点管理
所述拓扑管理单元用于管理和维护所述基于PCIe Switch的互联池化***拓扑管理装置中所涉及的板卡及HOST节点信息。
根据板卡类型(Board_type)、板卡编号(Instance_id)、partition编号(Partition_id)的不同,赋予每个主机不同的节点编号(Node_id);反之,根据节点编号也可定位到对应主机。
板卡类型和板卡编号由PCIe Switch板卡的SPI-NOR flash中存储的配置文件、EEPROM中存储的type_id和Switch的GPIO引脚绑定的Instance_id共同定义,所述partition编号由Switch分区决定;拓扑节点编号管理方法如下:
Node_id=((Board_type==1)?(1+Partition_id):(5+Instance_id×4+Partition_id));
Partition_id=((Node_id<5)?(Node_id-1):((Node_id-5)%4));
Board_type=((Node_id<5)?1:2);
Instance_id=((Node_id<5)?0:((Node_id-5)/4))。
所述基于PCIe Switch的互联池化***拓扑管理装置以三个独立模组为分析主体,所述三个模组分别为C0模组(参考图1)、P0模组(参考图2)、P1模组(参考图3),根据所述拓扑节点编号管理方法,每个HOST拥有对应的Node_id。三个独立模组配置如下:
C0模组支持***4个HOST主机,配置6个Partition,
Partition0为USP+NT,用于连接主HOST和EP,
Partition1/2/3为NT,用于连接HOST,
Partition4/6为Crosslink NT,用于连接其他模组;
P0模组支持***1个HOST,配置3个Partition,
Partition0为USP+NT,用于连接主HOST和EP,
Partition4/5为Crosslink NT,用于连接其他模组;
P1模组支持***1个HOST,配置3个Partition,
Partition0为USP+NT,用于连接主HOST和EP,
Partition5/6为Crosslink NT,用于连接其他模组。
所述基于PCIe Switch的互联池化***拓扑管理装置支持多个模组互联,所述拓扑互联方案使用Crosslink连接模式,即每个Switch预留两个端口,配置为Crosslink NT模式,不同模组之间通过光纤连接即可。
所述Crosslink连接模式为PCIe总线规定的一种特殊的Switch连接方式,支持这种模式的Switch,其上游端口可以与其他Switch的上游端口连接,其下游端口可以与其他Switch的下游端口连接。PCIe总线提供CrossLink连接模式的主要目的是为了解决不同处理器***之间的互连。使用CrossLink连接模式时,虽然从物理结构上看,一个Switch的上/下游端口与另一个Switch的上/下游端口直接相连,但是这个PCIe链路经过训练后,仍然是一个端口作为上游端口,而另一个作为下游端口,参考图4。所述基于PCIe Switch的互联池化***拓扑管理装置如图5所示。
2、拓扑查询
所述拓扑查询单元负责查询主机节点是否在位,工作是否正常,方法如下(参考图6):
2.1)、每个HOST在启动并加载驱动后,启动状态查询定时器;
2.2)、更新本HOST的在位状态寄存器,写入递增数据;
2.3)、查询本PCIe Switch中Crosslink NT的Link状态是否在位(也就是查询Crosslink NT的link是否在位);
2.4)、查询所连接的模组内每个HOST所在partition的NT的Link状态,监测对端HOST主机是否在位(也就是查询对端所有HOST的NT link是否在位);
2.5)、查询所连接的模组内每个HOST所维护的在位状态寄存器数据是否在更新,以检测HOST主机是否工作正常(也就是查询link在位的HOST在位状态寄存器是否连续3次更新)。
3、拓扑监测和状态更新
所述拓扑监测和状态更新单元负责拓扑结构发生变化,即出现模组下电、主机复位或设备复位情况时,对其资源做释放操作;以防止访问出现异常,影响其他主机的正常工作。
当出现模组***或设备***时,为其申请互联访问所需资源,以便于数据交互。
所述拓扑监测和状态更新单元会启动心跳监测定时器,实现对所有HOST节点状态的监测。
拓扑监测和状态更新单元的工作流程如下(参考图7):
在心跳监测定时器中,查询所有远端HOST NT的在位状态是否发生变化;
当从不在位变成在位时,将拓扑信息中该HOST节点的状态置位可用,允许与该HOST的通信,并为其分配相关资源;
当从在位变成不在位时,将拓扑信息中该HOST节点的状态置位不可用,中断与该HOST的数据交互,释放相关资源。
具体地:
3.1)、在心跳监测定时器中,如果检测到对端HOST的在位状态寄存器中的值连续3次没有发生变化,表示该HOST的工作状态出现异常,此时,应将对应HOST相关资源释放,包括Memorymap,ID map等。
3.2)、在心跳监测定时器中,如果检测到对端HOST的Link状态(linkWidth)由在位变成不在位,表示该HOST出现拔出或者下电等退出情况,此时,应将对应HOST相关资源释放,包括Memorymap,ID map等。
3.3)、在心跳监测定时器中,如果检测到对端HOST的Link状态(linkWidth)由不在位变成在位,表示该HOST被动态***,此时,需进一步查询该HOST的在位状态寄存器中数值是否连续3次都在变化,如果是,说明该HOST在位且工作正常,应为对应HOST分配相关资源,包括Memorymap,ID map等。
3.4)、在心跳监测定时器中,如果检测Crosslink NT的Link状态(linkWidth)由在位变成不在位,表示对端模组被动态拔出,此时,应将对端模组所属的HOST状态都置为不在位,并清除其对应的Memory资源和ID资源等。
3.5)、在心跳监测定时器中,如果检测Crosslink NT的Link状态(linkWidth)由不在位变成在位,表示对端模组被动态***,此时,需进一步去查询对端模组所属的HOST是否在位且工作正常。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.基于PCIe Switch的互联池化***拓扑管理装置,其特征在于:包括拓扑管理单元、拓扑查询单元、拓扑监测和状态更新单元;
所述拓扑管理单元用于管理和维护板卡及HOST节点信息;
所述拓扑查询单元用于查询主机节点是否在位、是否处于工作状态;
所述拓扑监测和状态更新单元根据所述拓扑查询单元获取的拓扑结构,监测所有拓扑节点工作状态的变化情况对其状态进行更新,对于新增拓扑节点分配资源,对于移除拓扑节点释放资源;
采用三个独立模组为分析主体,三个独立模组分别为C0模组、P0模组、P1模组,每个HOST拥有对应的Node_id;
三个独立模组配置如下:
C0模组支持***4个HOST主机,配置6个Partition,
Partition0为USP+NT,用于连接主HOST和EP,
Partition1/2/3为NT,用于连接HOST,
Partition4/6为Crosslink NT,用于连接其他模组;
P0模组支持***1个HOST,配置3个Partition,
Partition0为USP+NT,用于连接主HOST和EP,
Partition4/5为Crosslink NT,用于连接其他模组;
P1模组支持***1个HOST,配置3个Partition,
Partition0为USP+NT,用于连接主HOST和EP,
Partition5/6为Crosslink NT,用于连接其他模组。
2.基于PCIe Switch的互联池化***拓扑管理方法,其特征在于,包括以下步骤:
1)、拓扑节点管理
通过拓扑管理单元管理和维护板卡及HOST节点信息;
2)、拓扑查询
通过拓扑查询单元检查主机节点是否在位、工作是否正常;
3)、拓扑监测和状态更新
通过拓扑监测和状态更新单元监测所有拓扑节点工作状态的变化情况并对其状态进行更新,对于新增拓扑节点分配资源,对于移除拓扑节点释放资源;
所述拓扑监测和状态更新单元通过启动心跳监测定时器,实现对所有HOST节点状态的监测;
所述拓扑监测和状态更新单元的工作流程包括以下步骤:
1)、在心跳监测定时器中,如果检测到对端HOST的在位状态寄存器中的值连续3次没有发生变化,表示该HOST的工作状态出现异常,此时,将对应HOST相关资源释放;
2)、在心跳监测定时器中,如果检测到对端HOST的Link状态由在位变成不在位,表示该HOST出现拔出或者下电退出情况,此时,将对应HOST相关资源释放;
3)、在心跳监测定时器中,如果检测到对端HOST的Link状态由不在位变成在位,表示该HOST被动态***;此时,查询该HOST的在位状态寄存器中数值是否连续3次都在变化,如果是,说明该HOST在位且工作正常,为对应HOST分配相关资源;
4)、在心跳监测定时器中,如果检测Crosslink NT的Link状态由在位变成不在位,表示对端模组被动态拔出,此时,将对端模组所属的HOST状态都置为不在位,并清除其对应的Memory资源和ID资源;
5)、在心跳监测定时器中,如果检测Crosslink NT的Link状态由不在位变成在位,表示对端模组被动态***,此时,查询对端模组所属的HOST是否在位且工作正常。
3.根据权利要求2所述的基于PCIe Switch的互联池化***拓扑管理方法,其特征在于:在拓扑节点管理中,根据板卡类型、板卡编号、partition编号的不同,赋予每个主机不同的节点编号;
所述板卡类型和板卡编号由PCIe Switch板卡的SPI-NOR flash中存储的配置文件、EEPROM中存储的type_id和Switch的GPIO引脚绑定的Instance_id共同定义;所述partition编号由Switch分区决定。
4.根据权利要求2所述的基于PCIe Switch的互联池化***拓扑管理方法,其特征在于:所述拓扑查询单元的检查方法包括以下步骤:
1)、每个HOST在启动并加载驱动后,启动状态查询定时器;
2)、更新本HOST的在位状态寄存器,写入递增数据;
3)、查询本PCIe Switch中Crosslink NT的Link状态检测是否连接其他模组;
4)、查询所连接的模组内每个HOST所在partition的NT的Link状态,监测HOST主机是否在位;
5)、查询所连接的模组内每个HOST所维护的在位状态寄存器数据是否在更新,以检测HOST主机是否工作正常。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410247946.1A CN117834447B (zh) | 2024-03-05 | 2024-03-05 | 基于PCIe Switch的互联池化***拓扑管理装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410247946.1A CN117834447B (zh) | 2024-03-05 | 2024-03-05 | 基于PCIe Switch的互联池化***拓扑管理装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117834447A CN117834447A (zh) | 2024-04-05 |
CN117834447B true CN117834447B (zh) | 2024-05-07 |
Family
ID=90519457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410247946.1A Active CN117834447B (zh) | 2024-03-05 | 2024-03-05 | 基于PCIe Switch的互联池化***拓扑管理装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117834447B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118069568A (zh) * | 2024-04-18 | 2024-05-24 | 深圳云豹智能有限公司 | 外部设备拓扑配置方法、数据处理器、设备和程序产品 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103117929A (zh) * | 2013-01-31 | 2013-05-22 | 中国科学院计算技术研究所 | 一种基于PCIe数据交换的通信方法及*** |
CN106502944A (zh) * | 2015-09-08 | 2017-03-15 | 杭州华为数字技术有限公司 | 计算机、pcie设备以及pcie设备的心跳检测方法 |
CN107302465A (zh) * | 2017-08-18 | 2017-10-27 | 郑州云海信息技术有限公司 | 一种PCIe Switch服务器整机管理方法 |
CN110166301A (zh) * | 2019-05-28 | 2019-08-23 | 浪潮商用机器有限公司 | 一种pcie端口的自动配置方法、装置、***及控制器 |
CN115905094A (zh) * | 2022-10-13 | 2023-04-04 | 超聚变数字技术有限公司 | 一种电子设备及其PCIe拓扑配置方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112748948B (zh) * | 2021-01-07 | 2022-06-07 | 苏州浪潮智能科技有限公司 | PCIe switch工作模式更新方法及相关组件 |
-
2024
- 2024-03-05 CN CN202410247946.1A patent/CN117834447B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103117929A (zh) * | 2013-01-31 | 2013-05-22 | 中国科学院计算技术研究所 | 一种基于PCIe数据交换的通信方法及*** |
CN106502944A (zh) * | 2015-09-08 | 2017-03-15 | 杭州华为数字技术有限公司 | 计算机、pcie设备以及pcie设备的心跳检测方法 |
CN107302465A (zh) * | 2017-08-18 | 2017-10-27 | 郑州云海信息技术有限公司 | 一种PCIe Switch服务器整机管理方法 |
CN110166301A (zh) * | 2019-05-28 | 2019-08-23 | 浪潮商用机器有限公司 | 一种pcie端口的自动配置方法、装置、***及控制器 |
CN115905094A (zh) * | 2022-10-13 | 2023-04-04 | 超聚变数字技术有限公司 | 一种电子设备及其PCIe拓扑配置方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN117834447A (zh) | 2024-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240168823A1 (en) | Computer cluster arrangement for processing a computation task and method for operation thereof | |
EP3916565A1 (en) | System and method for aggregating server memory | |
CN117834447B (zh) | 基于PCIe Switch的互联池化***拓扑管理装置及方法 | |
US8745302B2 (en) | System and method for high-performance, low-power data center interconnect fabric | |
US8898254B2 (en) | Transaction processing using multiple protocol engines | |
CN109240832B (zh) | 一种硬件重构***及方法 | |
CN101911609B (zh) | 用于实现统一连接器架构的***、设备和方法 | |
EP2887223A1 (en) | Memory system, memory module, memory module access method and computer system | |
CN110809760B (zh) | 资源池的管理方法、装置、资源池控制单元和通信设备 | |
US8725919B1 (en) | Device configuration for multiprocessor systems | |
JP2004192620A (ja) | マルチプロセッサ・システムでのプロセッサ相互接続を使用するマイクロプロセッサ通信の方法およびデータ処理システム | |
CN115934366A (zh) | 服务器存储扩展方法、装置、设备、介质及整机柜*** | |
EP3716084A1 (en) | Apparatus and method for sharing a flash device among multiple masters of a computing platform | |
EP2800008A1 (en) | Method and system for multiprocessors to share memory | |
CN106844263B (zh) | 一种基于可配置的多处理器计算机***及实现方法 | |
CN115586964A (zh) | 资源共享装置、资源管理装置及资源管理方法 | |
CN112202600A (zh) | 一种多节点单主机与多主机通信自动切换装置及方法 | |
Theodoropoulos et al. | REMAP: Remote mEmory manager for disaggregated platforms | |
CN111045974A (zh) | 一种基于交换结构的多处理器数据交互方法 | |
CN107122268B (zh) | 一种基于numa多物理层分区处理*** | |
CN117978759B (zh) | 一种互联装置、高性能交换装置及大模型一体机 | |
CN205193686U (zh) | 计算设备 | |
JP3661531B2 (ja) | マルチプロセッサシステム及びそのアドレス解決方法 | |
CN116578523B (zh) | 片上网络***及其控制方法 | |
CN117971135B (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 |