System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 具有集合通信在网计算功能的PCIe交换芯片及PCIe交换机制造技术_技高网

具有集合通信在网计算功能的PCIe交换芯片及PCIe交换机制造技术

技术编号:41426353 阅读:2 留言:0更新日期:2024-05-28 20:24
本发明专利技术涉及具有集合通信在网计算功能的PCIe交换芯片及PCIe交换机,包括具有内部集成的PCIe端点设备、专用数据传输通道、任务控制单元和计算单元,专用数据传输通道包括DMA和FIFO,任务控制单元用来接收用户的集合通信命令、控制数据传输和控制计算单元,由任务控制单元通过读写DMA的控制寄存器来操作DMA完成数据的输入输出;计算单元在任务控制单元的控制下,从指定的输入FIFO读取数据,完成规定的计算,并将数据输出到指定的FIFO。本发明专利技术可以大幅降低网络流量,降低通信延时,提高系统效率;本发明专利技术的每个计算节点只需要跟PCIe交换芯片进行一次数据通信,大幅提高系统运行效率;并且计算节点规模越大,系统效率提升越显著。

【技术实现步骤摘要】

本专利技术涉及具有集合通信在网计算功能的pcie交换芯片及pcie交换机,属于pcie交换芯片、集合通信及在网计算。


技术介绍

1、pcie是一种高速串行计算机扩展总线标准,被广泛用于计算机主机连接外围设备。主机端的pcie控制器叫做rc,设备端叫做ep。每个ep设备都有一个标准的配置空间(configuration space),它是一组规范格式的寄存器,表明了该设备的基本属性等信息,其中的bar寄存器标识了该设备的寄存器、内存等地址空间资源,简称bar空间。pcie物理层建立链接后,rc将设备的这些地址空间映射到主机的地址空间,然后主机的驱动程序便可以访问和操作该设备。在pcie总线拓扑下,每个pcie设备都有唯一的bdf号。

2、pcie物理链路上使用tlp(transaction layer packets)传输请求和数据,tlp有以下4种类型:

3、内存请求tlp用来读写设备的寄存器或内存;io tlp(io是指iuput output,输入输出,通常都用io表示)用来访问某些体系架构下的io空间(一个特有的空间,与内存空间独立的空间);配置tlp用来访问设备的配置空间寄存器;消息tlp用来实现用户自定义的消息。

4、pcie是点到点连接,当主机的rc控制器数量不够,而需要连接更多的设备时,就需要使用pcie交换芯片。pcie交换芯片通常具有一个上游端口usp(用来连接主机端的rc)、多个下游端口dsp(用来连接ep设备)。在pcie枚举时,pcie交换芯片内部生成了一个查找表,该表记录了各个端口的总线号以及地址范围等信息。枚举完成后,每个端口进来的tlp,根据其不同类型,查找该表,可以按bdf号或者地址等信息路由至对应端口,从而实现一个rc连接多个ep设备,并且也可以实现各ep设备之间的通信。pcie交换芯片也可以实现ntb(non-transparent bridge)功能,即具有多个usp端口,从而可以连接多台主机,实现了主机之间的资源访问。

5、pcie的rc/ep端口或交换芯片上的usp/dsp端口,可以支持不同数量的物理层通道,一个端口最多支持16条物理层通道,记作x16。这16条通道,可以支持一个x16的设备,也可以支持2个x8的设备,还可以支持4个x4的设备。这是在硬件开发实现上,每个端口其实内置了4个控制器,如果外接x16设备,则只有一个控制器使能,如果是4个x4设备,则4个控制器都使能。

6、集合通信(collective communication)是指高性能计算hpc以及ai训练等并行计算当中,各个分布式计算节点(cpu/gpu等)进行的同步、收发数据等通信和计算操作,主要包括以下典型操作:

7、receive/send:数据收/发操作;

8、barrier:同步,计算节点之间的同步操作;

9、broadcast:广播,即把一个计算节点的数据拷贝给其他多个指定的计算节点,每个节点都得到相同的原始数据拷贝;

10、scatter:散射,即把一个计算节点的数据,分发给其他多个指定的计算节点,每个节点得到原始数据的一部分;

11、gather:聚集,即把多个计算节点的数据合并收集到一个计算节点,该节点得到所有节点的数据;

12、allgather:全聚集,从多个节点收集数据到所有节点,每个节点都得到所有数据;

13、reduce:规约,能把数据量减少的运算就叫reduce运算,例如求和、均值、极值等,各个计算节点的数据进行reduce运算后,结果汇总到一个节点;

14、allreduce:全规约,reduce运算以后,把数据运算结果发给所有的节点。

15、集合通信定义,一组可以收发数据的进程叫一个communicator,每个通信的进程的唯一标识叫rank。

16、集合通信应用广泛,因此一些标准的接口被制定并实现,例如mpi是一组经典的接口定义,openmpi是其开源实现;英伟达公司的nccl也是一组针对gpu实现的集合通信。

17、hpc和ai运算,需要大量的并行运算节点的互联。某些gpu厂商,实现了自己专有的互联。其中,英伟达公司的nvlink和infiniband互联性能很好,但只适用于自己的gpu,而且价格昂贵。其他中小厂商,私有互联协议并没有形成规模。而私有互联协议最大的缺陷在于,在生态上形成孤立,不利于推广。

18、pcie互联被广泛使用,软件和硬件生态完整。使用pcie交换芯片互联gpu做ai运算,仍是被广泛支持的标准选项。

19、hpc和ai运算需要集合通信,该通信接口被频繁调用,所以其效率是影响系统整体性能的关键因素之一。以allreduce运算为例,每个运算节点都需要通过交换网络跟其他所有节点交换数据,未经优化的通信模式会发起大量数据通信请求,占据网络带宽,并且可能造成较大的延迟和拥塞,各个计算节点会浪费大量时间用来等待网络通信。

20、某些厂商私有的网络交换设备实现了在网计算(in-network computing)功能,即在做以allreduce为代表的集合通信时,各个计算节点将数据发给网络交换设备,该交换设备完成计算后,将计算结果返回给各个计算节点,避免了所有节点之间的互相通信,从而大幅减少网络通信次数,显著地提高了系统效率。

21、而作为使用最广泛的互联方式之一的pcie交换芯片,依然不具备集合通信的优化和加速功能,极大地影响了其互联的计算设备的hpc或ai并行运算的效率。

22、基于此,提出本专利技术。


技术实现思路

1、在进行pcie交换芯片的开发过程中,详细研究了pcie协议、pcie交换芯片组成及原理。同时针对hpc及ai应用场景,详细分析了其网络通信模式,即集合通信,发现未经优化的原始通信模式会造成极大的网络并发流量,导致延迟和可能的拥塞。

2、在针对集合通信的优化研究时,发现某些私有的通信协议及其产品,可以实现在网计算功能,例如英伟达公司的infiniband交换机,但其通信协议没有开放,并且只能使用本公司配套的网络接入设备,价格昂贵,且应用场景不灵活。

3、而当今应用广泛、协议公开的pcie交换互联,随着ai大模型的爆发,在gpu的连接中应用更加普遍和重要,但却不具备优化集合通信的在网计算功能。

4、本专利技术针对现有技术存在的不足,提供了具有集合通信在网计算功能的pcie交换芯片及pcie交换机,具体技术方案如下:

5、第一方面,本专利技术提供了具有集合通信在网计算功能的pcie交换芯片,包括:具有内部集成的pcie端点设备、专用数据传输通道、任务控制单元和计算单元,所述具有内部集成的pcie端点设备连接到原有的交换网络上,在枚举过程中可被发现并分配bdf号;

6、所述专用数据传输通道包括dma和fifo,dma通过发出内存读写tlp请求来完成数本文档来自技高网...

【技术保护点】

1.具有集合通信在网计算功能的PCIe交换芯片,其特征在于,包括:具有内部集成的PCIe端点设备、专用数据传输通道、任务控制单元和计算单元,所述具有内部集成的PCIe端点设备连接到原有的交换网络上,在枚举过程中可被发现并分配BDF号;

2.根据权利要求1所述的具有集合通信在网计算功能的PCIe交换芯片,其特征在于:FIFO、任务控制单元和计算单元的控制寄存器都被映射到具有内部集成的PCIe端点设备的BAR空间内,枚举后可被控制软件访问到。

3.根据权利要求1所述的具有集合通信在网计算功能的PCIe交换芯片,其特征在于:计算单元只需要选择某些输入FIFO计算后,将结果给定的一路或多路输出FIFO,以上输入/输出选择由任务控制单元根据用户请求来配置。

4.根据权利要求1所述的具有集合通信在网计算功能的PCIe交换芯片,其特征在于:使用4个USP/DSP控制器组成一组,每一组控制器配置一块存储单元,供4个FIFO动态分配使用;

5.根据权利要求4所述的具有集合通信在网计算功能的PCIe交换芯片,其特征在于:每个USP或DSP的BAR空间需要启用,使其FIFO映射到该BAR空间,在枚举后每个缓存FIFO都会获得PCIe总线地址。

6.根据权利要求1所述的具有集合通信在网计算功能的PCIe交换芯片,其特征在于,所述任务控制单元的数据处理流程包括以下步骤:

7.PCIe交换机,其特征在于:包括最少一个如权利要求1-6中任意一项所述的具有集合通信在网计算功能的PCIe交换芯片。

...

【技术特征摘要】

1.具有集合通信在网计算功能的pcie交换芯片,其特征在于,包括:具有内部集成的pcie端点设备、专用数据传输通道、任务控制单元和计算单元,所述具有内部集成的pcie端点设备连接到原有的交换网络上,在枚举过程中可被发现并分配bdf号;

2.根据权利要求1所述的具有集合通信在网计算功能的pcie交换芯片,其特征在于:fifo、任务控制单元和计算单元的控制寄存器都被映射到具有内部集成的pcie端点设备的bar空间内,枚举后可被控制软件访问到。

3.根据权利要求1所述的具有集合通信在网计算功能的pcie交换芯片,其特征在于:计算单元只需要选择某些输入fifo计算后,将结果给定的一路或多路输出fifo,以上输入/输出选择由任务控制单元根据用户请求来配置。...

【专利技术属性】
技术研发人员:张洪波
申请(专利权)人:北京数渡信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1