一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

处理器/端点通信耦合件配置系统的制作方法

2021-12-04 00:02:00 来源:中国专利 TAG:

处理器/端点通信耦合件配置系统


背景技术:

1.本公开总体上涉及信息处理系统,并且更具体地涉及配置信息处理系统中的处理器与端点之间的通信耦合件。
2.随着信息的价值和使用持续增长,个人和商家寻求附加方式来处理和存储信息。可供用户使用的一个选项是信息处理系统。信息处理系统通常处理、编译、存储和/或传送用于商业、个人或其他目的的信息或数据,从而允许用户利用这些信息的价值。因为技术和信息处理需求和需要在不同的用户或应用之间是不同的,所以信息处理系统也可能在以下方面有所不同:处理何种信息,如何处理信息,处理、存储或传送多少信息,以及可以多快且多高效地处理、存储或传送信息。信息处理系统中的变化允许信息处理系统是通用的或者针对特定用户或特定用途(例如财务事务处理、航班订票、企业数据存储或全球通信)进行配置。另外,信息处理系统可以包括可以被配置为处理、存储和传送信息的多种硬件和软件部件,并且可以包括一个或多个计算机系统、数据存储系统和联网系统。
3.信息处理系统(诸如,例如,服务器装置)可以被配置为包括多个处理器并且利用非统一内存访问(non

uniform memory access(numa))计算机存储器设计,其中给每个处理器提供其可快速地访问的本地存储器,其中那些处理器经由处理器互连(例如,在由美国加利福尼亚州圣塔克拉拉公司提供的处理系统中可用的超路径互连(upi))来耦合在一起,所述处理器互连允许处理器访问在其他处理器本地的存储器。此外,此类服务器装置可设置有多端点适配器装置,多端点适配器装置提供多个端点(例如,pcie端点)。常规上,处理器使用固定/静态通信耦合件经由硬件耦合到多端点适配器装置,以便允许那些处理器与所述端点通信以利用经由那些端点可用的资源。在处理器与端点之间使用固定/静态通信耦合件防止服务器装置的缩放(例如,以在服务器装置中提供附加处理器)并且不会考虑连接到处理器的端点装置。此外,固定/静态通信耦合件可导致在端点通信中使用处理器互连,这会减少经由处理器互连的吞吐量(处理器互连旨在允许处理器访问邻近的处理器根复合体)并增加那些通信中的延迟。更进一步地,常规系统中的固定/静态通信耦合件需要用于服务器装置的不同硬件装置(例如,母板和转接卡(riser)装置)以便实现不同的处理器/端点配置。
4.因此,将希望提供一种处理器/端点通信耦合件配置系统。


技术实现要素:

5.根据一个实施方案,一种信息处理系统(ihs)包括:第一处理系统;以及第一存储器系统,第一存储器系统耦合到第一处理系统并且包括指令,所述指令在由第一处理系统执行时致使第一处理系统提供通信耦合件配置引擎,通信耦合件配置引擎被配置为:识别包括将多个第二处理子系统耦合到第一多端点适配器装置的多个通信耦合件的至少一个硬件子系统;确定将多个第二处理子系统耦合到第一多端点适配器装置的多个通信耦合件的至少一种通信耦合件配置能力;确定第一多端点适配器装置的至少一种第一多端点适配器装置能力;并且基于至少一个硬件子系统、至少一种通信配置能力以及至少一种第一多
端点适配器装置能力来配置多个通信耦合件,其中多个通信耦合件的配置在多个第二处理子系统中的至少一者与第一多端点适配器装置上的至少一个端点之间提供至少一个通信资源。
附图说明
6.图1是示出信息处理系统(ihs)的一个实施方案的示意图;
7.图2是示出服务器装置的一个实施方案的示意图,其提供了本公开的处理器/端点通信耦合件配置系统的一个示例;
8.图3是示出服务器装置的一个实施方案的示意图,其提供了本公开的处理器/端点通信耦合件配置系统的一个示例;
9.图4是示出用于配置处理器与端点之间的通信耦合件的方法的一个实施方案的流程图;
10.图5a是示出在图4的方法期间图2的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案的示意图;
11.图5b是示出在图4的方法期间图2的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
12.图5c是示出在图4的方法期间图2的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
13.图6a是示出在图4的方法期间图2的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案的示意图;
14.图6b是示出在图4的方法期间图2的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
15.图6c是示出在图4的方法期间图2的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
16.图7a是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案的示意图;
17.图7b是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
18.图7c是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
19.图7d是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
20.图7e是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
21.图7f是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
22.图7g是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
23.图8a是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置
系统的一个实施方案的示意图;
24.图8b是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
25.图8c是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
26.图8d是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
27.图8e是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
28.图9a是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案的示意图;
29.图9b是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
30.图9c是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
31.图9d是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图;
32.图9e是示出在图4的方法期间图3的服务器装置中的处理器/端点通信耦合件配置系统的一个实施方案对通信耦合件进行配置的示意图。
具体实施方式
33.出于本公开的目的,信息处理系统可以包括可操作以计算、运算、确定、分类、处理、传输、接收、检索、发起、切换、存储、显示、传送、表明、检测、记录、再现、处理或利用用于商业、科学、控制或其他目的的任何形式的信息、情报或数据的任何工具或工具集合。例如,信息处理系统可以是个人计算机(例如,台式计算机或膝上型计算机)、平板计算机、移动装置(例如,个人数字助理(pda)或智能手机)、服务器(例如,刀片式服务器或机架服务器)、网络存储装置或任何其他合适的装置,并且可以在大小、形状、性能、功能性和价格方面有所不同。信息处理系统可以包括随机存取存储器(ram)、一个或多个处理资源(诸如中央处理单元(cpu)或者硬件或软件控制逻辑)、rom和/或其他类型的非易失性存储器。信息处理系统的附加部件可以包括一个或多个磁盘驱动器、用于与外部装置通信的一个或多个网络端口,以及各种输入和输出(i/o)装置(诸如键盘、鼠标、触摸屏和/或视频显示器)。信息处理系统还可以包括可操作以在各种硬件部件之间传输通信的一条或多条总线。
34.在一个实施方案中,ihs 100(图1)包括处理器102,所述处理器连接到总线104。总线104用作处理器102与ihs 100的其他部件之间的连接。输入装置106耦合到处理器102以将输入提供给处理器102。输入装置的示例可以包括键盘、触摸屏、指向装置(诸如鼠标、轨迹球以及触摸板)和/或本领域中已知的各种其他输入装置。程序和数据存储于大容量存储装置108上,所述大容量存储装置108耦合到处理器102。大容量存储装置的示例可以包括硬盘、光盘、磁光盘、固态存储装置和/或本领域中已知的各种其他大容量存储装置。ihs 100还包括显示器110,所述显示器通过视频控制器112耦合到处理器102。系统存储器114耦合
到处理器102以向所述处理器提供快速存储以促进处理器102对计算机程序的执行。系统存储器的示例可以包括随机存取存储器(ram)装置,诸如动态ram(dram)、同步dram(sdram)、固态存储器装置和/或本领域中已知的各种其他存储器装置。在一个实施方案中,机箱116容纳ihs 100的一些或全部部件。应理解,可在上述部件与处理器102之间部署其他总线和中间电路以促进所述部件与处理器102之间的互连。
35.现在参考图2,示出了服务器装置200的一个实施方案,所述服务器装置200可提供本公开的处理器/端点通信耦合件配置系统。在一个实施方案中,服务器装置200可由上文参考图1讨论的ihs 100提供和/或可以包括ihs 100的一些或所有部件。此外,虽然被示出并讨论为服务器装置200,但是理解本公开的本领域技术人员将认识到,下文讨论的服务器装置200的功能性可由被配置为如下文所讨论般类似地操作的其他装置提供。在所示的实施方案中,服务器装置200包括容纳服务器装置200的部件的机箱202,下文仅示出其中一些部件。例如,机箱202可容纳板204,诸如,例如母板和/或理解本公开的本领域技术人员将显而易见的其他电路板。在下文提供的至少一些示例中,板204(或板204的至少一些部分)可被视为服务器装置200中的硬件子系统,所述硬件子系统在下文讨论的处理子系统与端点之间提供通信耦合件(例如,迹线、布线和/或本领域中已知的其他通信耦合件)。
36.多个处理子系统设置于板204上并且经由处理子系统互连(诸如,例如,在由美国加利福尼亚州圣塔克拉拉公司提供的处理系统上可用的超路径互连(upi))耦合在一起。为了下文提供的一些示例,图2中示出的服务器装置200的实施方案提供双处理器系统的示例,其具有包括在板204上并且经由upi 210耦合在一起的处理子系统206a和处理子系统208a。此外,处理子系统206a和208a中的每一者被设置有并且连接到相应的存储器子系统206b和208b。例如,服务器装置200中的处理子系统和存储器子系统可利用非统一内存访问(numa)计算机存储器设计,其中每个相应的处理子系统连接到相应的本地存储器子系统以提供相应的numa节点(即,处理子系统206a及其本地存储器子系统206b提供第一numa节点,并且处理子系统208a及其本地存储器子系统208b提供第二numa节点)。然而,虽然在图2中示出了两个处理子系统/存储器子系统(例如,两个numa节点),但如下文所讨论,根据本公开的教导,可提供更多处理子系统/存储器子系统(例如,numa节点),其同时也在本公开的范围内。
37.在所示的实施方案中,处理子系统206a和208a中的每一者耦合到控制/桥接子系统212,所述控制/桥接子系统可设置于板204上。在不同示例中,控制/桥接子系统212可由模拟总线交换开关、pcie分组交换机和/或理解本公开的本领域技术人员将显而易见的各种其他控制/桥接子系统提供。虽然被示出并描述为控制/桥接子系统,但理解本公开的本领域技术人员将认识到,其他子系统可执行下文讨论的控制/桥接子系统212的功能性,同时也仍属于本公开的范围内。在所示的实施方案中,控制/桥接子系统212可由板204上的硬件提供,所述硬件经由例如迹线和/或本领域中已知的其他通信耦合件而耦合到包括在板204上的转接卡装置214。在下文提供的至少一些示例中,控制/桥接子系统212(或控制/桥接子系统212的至少一些部分)、转接卡装置214(或转接卡装置214的至少一些部分)以及将它们耦合在一起的板204可被视为服务器装置200中的硬件子系统,所述硬件子系统在下文讨论的处理子系统206a和208a与端点之间提供通信耦合件(例如,迹线、布线和/或本领域中已知的其他通信耦合件)。
38.在其他实施方案中,控制/桥接子系统212可被提供为转接卡装置214的部分、包括在耦合到板204的装置(例如,扩展卡)上和/或以各种其他方式提供,同时也仍属于本公开的范围内。在一些示例中,如下文更详细地讨论,控制/桥接子系统212与转接卡装置214之间的通信耦合件可由控制/桥接子系统212和/或转接卡装置214配置(如通过针对图2中的所述耦合件提供的虚线所指示)。在所示的实施方案中,转接卡装置214可以包括两个x16连接器(例如,pcie连接器),所述连接器提供图2中所示的八个x4连接器(例如,用于第一x16连接器的编号为“1”、“2”、“3”和“4”的x4连接器,以及用于第二x16连接器的x4连接器“5”、“6”、“7”和“8”)。在一些实施方案中,转接卡装置214可以被配置为描述在板204上到达端点的一个或多个连接拓扑,所述端点耦合到转接卡装置214。
39.在所示的实施方案中,基板管理控制器(bmc)装置216包括在机箱202中并且耦合到控制/桥接子系统212。例如,bmc装置216可由可购自美国德克萨斯州朗德罗克公司的集成式远程访问控制器(idrac)提供,但其他远程访问控制器装置和/或bmc也将属于本公开的范围内。在下文讨论的实施方案中,bmc装置216包括耦合到bmc存储器系统的bmc处理系统,所述bmc存储器系统包括指令,所述指令在由bmc处理系统执行时致使bmc处理系统提供通信耦合件配置引擎,所述通信耦合件配置引擎被配置为执行通信耦合件配置引擎和bmc装置的在下文讨论的功能性。然而,理解本公开的本领域技术人员将认识到,本公开的通信耦合件配置引擎可由服务器装置200中的其他硬件/软件子系统提供,和/或可连接到服务器装置200(例如,在网络连接的管理系统中),同时也仍属于本公开的范围内。虽然已经示出了特定的服务器装置200,但是理解本公开的本领域技术人员将认识到,服务器装置(或根据本公开的教导以类似于下文针对服务器装置200描述的方式的方式操作的其他装置)可以包括多种部件和/或部件配置以用于提供常规的服务器装置功能性以及下文讨论的功能性,其同时也保持在本公开的范围内。
40.参考图3,示出了服务器装置200的另一个实施方案。为了下文提供的一些示例,图4中所示的服务器装置200的实施方案提供四处理器系统的示例,所述四处理器系统具有经由up 304连接到处理子系统206a的处理子系统300a和经由upi 306连接到处理子系统208a的处理子系统302a。类似于处理子系统206a和208a,处理子系统300a和302a中的每一者被设置有并且连接到相应的存储器子系统300b和302。如上文所讨论,服务器装置200中的处理子系统和存储器子系统可利用非统一内存访问(numa)计算机存储器设计,其中每个相应的处理子系统连接到相应的本地存储器子系统以提供相应的numa节点(即,处理子系统300a及其本地存储器子系统300b提供第三numa节点,并且处理子系统302a及其本地存储器子系统302b提供第四numa节点)。然而,虽然在图3中示出了四个处理子系统/存储器子系统(例如,四个numa节点),但理解本公开的本领域技术人员将认识到,根据本公开的教导,可提供更多处理子系统/存储器子系统(例如,numa节点),其同时也属于本公开的范围内。在所示的实施方案中,处理子系统300a和302a中的每一者以及处理子系统206a和208a耦合到控制/桥接子系统212。
41.现在参考图4,示出了用于配置处理器与端点之间的通信耦合件的方法400的一个实施方案。如下文所讨论,本公开的系统以及方法基于以下各者来配置在服务器装置中的一个或多个处理子系统与耦合到那些处理子系统的一个或多个端点之间的通信耦合件:提供那些通信耦合件的硬件子系统、那些通信耦合件的通信耦合件配置能力,以及提供所述
端点的多端点适配器装置的能力。在一些实施方案中,在所述服务器装置中的一个或多个处理子系统与耦合到那些处理子系统的一个或多个端点之间的通信耦合件的配置也可基于所检索的用户配置策略。在一些实施方案中,可在服务器装置的运行时期间执行并应用在所述一个或多个处理子系统与耦合到那些处理子系统的一个或多个端点之间的通信耦合件的配置,而在其他实施方案中,在所述一个或多个处理子系统与耦合到那些处理子系统的一个或多个端点之间的通信耦合件的配置可能需要由服务器装置进行的启动(boot)操作。因而,提供在处理子系统与端点之间的可配置通信耦合件增强了服务器装置的可缩放性(例如,以在所述服务器装置中提供附加处理子系统),同时考虑连接到那些处理子系统的端点装置,并且允许单个母板和转接卡装置实现许多不同的处理子系统/端点配置。
42.在下文讨论的实施方案中,多端点适配器装置可耦合到转接卡装置214。在下文参考图5a至图5c示出并描述的示例中,多端点适配器装置500耦合到转接卡装置214(例如,经由使用x4连接器“1”、“2”、“3”和“4”设置于转接卡装置214上的x16连接器中的一者),并且包括耦合到转接卡装置214的多个端点。例如,并且如下文更详细地讨论,在设置于多端点适配器装置500上的端点与转接卡214之间的耦合件可为可配置的(如通过针对图5a中的那些耦合件提供的虚线所指示)。在一个特定示例中,设置于多端点适配器装置500上的端点可由物理或虚拟快速外围部件互连(pcie)端点(诸如,例如,在图5a中所示出的在多端点适配器装置500上的网络接口控制器(nic)500a)提供。如下文更详细地讨论,在控制/桥接子系统212、转接卡装置214与nic 500a之间的耦合件提供一个或多个硬件子系统,所述一个或多个硬件子系统包括多个通信耦合件,所述多个通信耦合件可将所述多个端点中的每一者(例如,nic 500a)耦合到多个处理子系统206a和208a中的至少一者,以便将服务器装置200中的可用通信资源的相应子集提供给多个处理子系统206a和208a中的每一者。
43.在一个特定示例中,nic 500a提供“多pcie端点”,所述多pcie端点被配置为允许在多个处理子系统之间分割所述nic的资源。例如,并且如下文所讨论,nic 500a可以被配置为将其到达转接卡装置214的相应x16连接分割成到达一对处理子系统的两个x8连接,或到达四个处理子系统中的每一者的四个x4连接。然而,虽然描述了特定示例,但理解本公开的本领域技术人员将认识到,具有其他可配置连接能力的其他端点也将属于本公开的范围内。图5a还示出了另一个装置502(例如,非多端点适配器装置)可如何耦合到转接卡装置214并且可如何提供装置子系统502a,所述装置子系统502a也通过可配置连接耦合到转接卡装置214(如通过针对图5a中的那些耦合件提供的虚线所指示)。此外,在所示的实施方案中,bmc装置216耦合到nic 500a和装置子系统502a中的每一者。
44.在下文参考图6a至图6c示出并描述的示例中,一对装置600和602(例如,非多端点适配器装置,诸如常规扩展卡)可耦合到转接卡装置214(例如,经由使用x4连接器“1”、“2”、“3”和“4”以及x4连接器“5”、“6”、“7”和“8”设置于转接卡装置214上的两个x16连接器),并且分别包括耦合到转接卡装置214的装置子系统600a和602a。例如,并且如下文更详细地讨论,在设置于装置600和602上的装置子系统600a和602a与转接卡装置214之间的耦合件可为可配置的(如通过针对图6a中的那些耦合件提供的虚线所指示)。然而,虽然描述了特定示例,但理解本公开的本领域技术人员将认识到,具有其他可配置连接能力的其他装置子系统也将属于本公开的范围内。如下文更详细地讨论,在控制/桥接子系统212、转接卡装置214与装置子系统600a和602a之间的耦合件提供一个或多个硬件子系统,所述一个或多个
800a和802a中的每一者可以被配置为将它们到达转接卡装置214的相应x16连接分割成到达一对处理子系统的两个x8连接,或到达四个处理子系统中的每一者的四个x4连接。然而,虽然描述了特定示例,但理解本公开的本领域技术人员将认识到,具有其他可配置连接能力的其他端点也将属于本公开的范围内。此外,在所示的实施方案中,bmc装置216耦合到nic 800a和802a中的每一者。
49.在下文参考图9a至图9e示出并描述的示例中,多端点适配器装置900耦合到转接卡装置214(例如,经由使用x4连接器“1”、“2”、“3”和“4”设置于转接卡装置214上的x16连接器中的一者),并且包括耦合到转接卡装置214的多个端点。例如,并且如下文更详细地讨论,在设置于多端点适配器装置900上的端点与转接卡214之间的耦合件可为可配置的(如通过针对图9a中的那些耦合件提供的虚线所指示)。在一个特定示例中,设置于多端点适配器装置900上的端点可由物理或虚拟快速外围部件互连(pcie)端点(诸如,例如,在图9a中所示出的在多端点适配器装置900上的网络接口控制器(nic)900a)提供。如下文更详细地讨论,在控制/桥接子系统212、转接卡装置214与nic 900a之间的耦合件提供一个或多个硬件子系统,所述一个或多个硬件子系统包括多个通信耦合件,所述多个通信耦合件可将多个端点(例如,nic 900a)中的每一者耦合到多个处理子系统206a、208a、300a和302a中的至少一者,以便将服务器装置200中的可用通信资源的相应子集提供给多个处理子系统206a、208a、300a和302a中的每一者。
50.在一个特定示例中,nic 900a提供“多pcie端点装置”,所述多pcie端点装置被配置为允许在多个处理子系统之间分割所述nic的资源。例如,并且如下文所讨论,nic 900a可以被配置为将其到达转接卡装置214的相应x16连接分割成到达一对处理子系统的两个x8连接,或到达四个处理子系统中的每一者的四个x4连接。然而,虽然描述了特定示例,但理解本公开的本领域技术人员将认识到,具有其他可配置连接能力的其他端点也将属于本公开的范围内。图9a还示出了另一个装置902(例如,非多端点适配器装置)可如何耦合到转接卡装置214并且可如何提供装置子系统902a,所述装置子系统902a也通过可配置连接耦合到转接卡装置214(如通过针对图9a中的那些耦合件提供的虚线所指示)。此外,在所示的实施方案中,bmc装置216耦合到nic 900a和装置子系统902a中的每一者。
51.方法400开始于框402,其中识别包括将处理子系统耦合到多端点适配器装置的通信耦合件的硬件子系统。在一个实施方案中,在框402处,由bmc装置216提供的通信耦合件配置引擎操作以识别包括将处理子系统耦合到多端点适配器装置的通信耦合件的硬件子系统。在一个特定示例中,bmc装置216可在服务器装置200加电或以其他方式初始化之前启动,并且可操作以执行库存操作以识别服务器装置200中的任何或所有硬件子系统。因而,在框402处,bmc装置216中的通信耦合件配置引擎可识别主机中央处理单元(cpu)存在、端口可用性、母板

cpu

转接卡/连接器和/或理解本公开的本领域技术人员将显而易见的其他硬件子系统。参考图5a和图6a中提供的示例,在框402处,bmc装置216中的通信耦合件配置引擎可识别存储器子系统206a和208b、处理子系统206a和208a、在处理子系统206a与208a之间的upi 210、控制桥接子系统212、在处理子系统206a/208a与控制桥接子系统212之间的耦合件、转接卡装置214以及在控制桥接子系统212与转接卡装置214之间的耦合件。
52.类似地,参考图7a、图8a和图9a中提供的示例,在框402处,bmc装置216中的通信耦合件配置引擎可识别存储器子系统206a、208b、300b和302b;处理子系统206a、208a、300a和
302a;在处理子系统206a与208a之间的upi 210;在处理子系统300a与206a之间的upi 304;在处理子系统208a与302a之间的upi 306;控制桥接子系统212;在处理子系统206a/208a/300a/302a与控制桥接子系统212之间的耦合件;转接卡装置214;以及在控制桥接子系统212与转接卡装置214之间的耦合件。然而,虽然描述了特定示例,但是理解本公开的本领域技术人员将认识到,bmc装置可如何执行库存操作以便识别在处理子系统与端点之间提供通信耦合件的任何硬件子系统,其同时也仍属于本公开的范围内。
53.方法400然后前进至框404,其中确定所述通信耦合件的通信耦合件配置能力。在一个实施方案中,在框404处,由bmc装置216提供的通信耦合件配置引擎操作以确定将所述处理子系统耦合到多端点适配器装置的通信耦合件的通信耦合件配置能力。如上文所讨论,在一个特定示例中,bmc装置216可在服务器装置加电或以其他方式初始化之前启动,并且可操作以执行库存操作以确定在框402处识别的硬件子系统中所包括的通信耦合件的通信耦合件配置能力。因而,在框402处,bmc装置216中的通信耦合件配置引擎可确定所安装的转接卡类型、迹线配置、布线配置(例如,细长pcie布线配置)和/或理解本公开的本领域技术人员将显而易见的其他通信耦合件配置信息。因而,参考在图5a和图6a中提供的示例,在框402处,bmc装置216中的通信耦合件配置引擎可确定处理子系统206a/208a与控制桥接子系统212之间的耦合件、控制桥接子系统212与转接卡装置214之间的耦合件以及转接卡装置214的配置能力。
54.类似地,参考在图7a、图8a和图9a中提供的示例,在框402处,bmc装置216中的通信耦合件配置引擎可确定处理子系统206a/208a/300a/302a与控制桥接子系统212之间的耦合件以及控制桥接子系统212与转接卡装置214之间的耦合件以及转接卡装置214的配置能力。然而,虽然描述了特定示例,但理解本公开的本领域技术人员将认识到,bmc装置可如何执行库存操作以便确定处理子系统与端点之间的各种通信耦合件的配置能力,同时也仍属于本公开的范围内。
55.方法400然后前进至框406,其中确定多端点适配器装置能力。在一个实施方案中,在框406处,由bmc装置216提供的通信耦合件配置引擎操作以确定设置于服务器装置200中的任何多端点适配器装置的能力。如上文所讨论,在一个特定示例中,bmc装置216可在服务器装置加电或以其他方式初始化之前启动,并且可操作以执行库存操作以确定耦合到转接卡装置214的多端点适配器装置的多端点适配器装置能力。因而,在框406处,bmc装置216中的通信耦合件配置引擎可对其连接到的任何多端点适配器装置中的电可擦除可编程只读存储器(eeprom)子系统执行读取操作以便确定所述多端点适配器的能力,这可以包括确定端点类型、端点能力、端点通信耦合件配置(例如,端点与转接卡装置214之间的通信耦合件的配置)、所述端点通信耦合件的配置能力和/或理解本公开的本领域技术人员将显而易见的其他多端点适配器装置信息。因而,参考图5a中提供的示例,在框406处,bmc装置216中的通信耦合件配置引擎可确定多端点适配器装置500的能力,并且可确定装置502并非多端点适配器装置。
56.类似地,参考图6a中提供的示例,在框406处,bmc装置216中的通信耦合件配置引擎可确定装置600和602并非多端点适配器装置。类似地,参考图7a中提供的示例,在框406处,bmc装置216中的通信耦合件配置引擎可确定多端点适配器装置700和702的能力。类似地,参考图8a中提供的示例,在框406处,bmc装置216中的通信耦合件配置引擎可确定多端
点适配器装置800和902的能力。类似地,参考图9a中提供的示例,在框406处,bmc装置216中的通信耦合件配置引擎可确定多端点适配器装置900的能力,并且可确定装置902并非多端点适配器装置。然而,虽然描述了特定示例,但理解本公开的本领域技术人员将认识到,bmc装置可如何执行库存操作以便确定服务器装置中包括的多端点适配器装置的各种能力,同时也仍属于本公开的范围内。
57.方法400然后可前进至任选框408,其中可检索用户配置策略。在一个实施方案中,在任选框408处,由bmc装置216提供的通信耦合件配置引擎可操作以检索用户配置策略。例如,(例如,经由在服务器装置200的启动期间提供的f2菜单选择、经由本领域中已知的带外方法等)可向服务器装置200的管理员或其他用户给予限定用户配置策略的选项,所述用户配置策略详述了服务器装置200的期望操作、设置于服务器装置200中的多端点适配器装置、将分配给由服务器装置200中的处理子系统提供的应用程序的资源和/或理解本公开的本领域技术人员将显而易见的任何其他用户配置策略信息。
58.方法400然后前进至框410,其中生成配置信息。在一个实施方案中,在框410处,由bmc装置216提供的通信耦合件配置引擎可操作以基于以下各者来确定并生成配置信息:在框402处识别的硬件子系统中的至少一者;在框404处确定的通信耦合件的配置能力;在框406处确定的多端点适配器装置的能力;以及在一些实施方案中,在任选框408处检索的用户配置策略。例如,在其中未检索用户配置策略的实施方案中,由bmc装置216提供的通信耦合件配置引擎可操作以确定通信耦合件的“最适合”配置,所述“最适合”配置是基于在框402处识别的硬件子系统中至少一者;在框404处确定的通信耦合件的配置能力;以及在框406处确定的多端点适配器装置的能力。然而,在其中检索用户配置策略的实施方案中,由bmc装置216提供的通信耦合件配置引擎可操作以确定通信耦合件的“最适合”配置,所述“最适合”配置是基于在框402处识别的硬件子系统中的至少一者;在框404处确定的通信耦合件的配置能力;在框406处确定的多端点适配器装置的能力;以及所述用户配置策略。在任一种情形中,由bmc装置216提供的通信耦合件配置引擎可能已了解服务器装置200中的硬件子系统以及i/o拓扑,并且产生所述硬件子系统至所述处理子系统以及端点链路的映射。如理解本公开的本领域技术人员将理解,在必要时可通过用户修改bmc装置216对源和目的地的配置能力的发现。
59.如理解本公开的本领域技术人员将理解,在框410处生成的配置信息可为在下文讨论的示例中提供通信耦合件的配置的任何信息。因而,在框410处生成的配置信息可以包括提供在下文的示例中讨论的特定通信资源分配以及理解本公开的本领域技术人员将显而易见的任何其他通信资源分配的任何信息。
60.此外,在一些实施方案中,所述配置信息中的至少一些可通过由bmc装置216提供的通信耦合件配置引擎传输到控制/桥接子系统212以及包括在服务器装置200中的多端点适配器装置,以便例如提供以与所述通信耦合件的配置对应的方式对控制/桥接子系统212和那些多端点适配器装置进行配置以便经由那些配置来分配通信资源。例如,在框410处,由bmc装置216提供的通信耦合件配置引擎可操作以经由边带接口(例如,集成电路总线(i2c)边带接口)来将弹性输入/输出(i/o)配置信息提供给设置于服务器装置200中的多端点适配器装置。在此类示例中,弹性i/o配置信息可以被配置为致使多端点适配器装置中的适配器装置i/o扩展器将端点(例如,在下文的示例中为nic)从充当利用到达转接卡装置
214的x16连接的单个端点(例如,单个nic)转换为充当各自利用到达转接卡装置214的x8连接的两个端点(例如,两个nic)。然而,虽然提供了特定示例,但理解本公开的本领域技术人员将认识到,可将各种配置信息提供给多端点适配器装置以提供也将属于本公开的范围内的各种配置。
61.方法400可然后前进至任选框412,其中可起始启动操作。在一个实施方案中,在任选框412处,由bmc装置216提供的通信耦合件配置引擎可操作以起始服务器装置200的启动操作。如上文所讨论,在一些特定示例中,bmc装置216可在服务器装置200加电或以其他方式初始化之前启动,并且然后可操作以执行方法400的框402、404、406、任选框408以及框410,之后执行任选框412,在任选框412中起始服务器装置200的启动以允许在下文就框414所讨论的配置。然而,在其他实施方案中,bmc装置216及其通信耦合件配置引擎(或如上文所讨论般提供的其他通信耦合件配置子系统)的操作可在服务器装置200的运行时操作期间发生,并且因此可跳过任选框412,并且也可在那些服务器装置运行时操作期间执行下文就框414所讨论的配置。然而,在其中服务器装置200在任选框412处执行重启动操作的实施方案中,服务器装置200可加电并且作为响应而执行加电自检(post)。
62.方法400然后前进至框414,其中通信耦合件被配置为在板上的至少一个处理子系统与多端点适配器装置上的至少一个端点之间提供给至少一个通信资源。在一个实施方案中,在框414处,由bmc装置216提供的通信耦合件配置引擎可操作以将弹性i/o配置信息提供给服务器装置200中的基本输入/输出系统(bios),所述基本输入/输出系统可以被配置为允许bios执行可以包括组构操作、拆分操作的cpu链路目的和/或理解本公开的本领域技术人员将显而易见的其他cpu链路目的。此外,设置于服务器装置200中的多端点适配器装置上的任何端点可由于重置而释放,并且可执行链路训练,并且所述多端点适配器装置中的适配器装置i/o扩展器可读取所请求的i/o扩展器信号状态以相应地配置其端点和拆分。如理解本公开的本领域技术人员将理解,当所述端点是作为单芯片封装的部分的pcie端点时,可存在单组phy引脚,并且总线交换切换可在模拟预serdes级或数字后phy级执行。虽然提供了特定示例,但理解本公开的本领域技术人员将认识到,bmc装置216可以各种方式与服务器装置200中的bios通信以控制端点信号,使得设置预期的拓扑和存储器组构类型以实现恰当的启动以及运行时使用。现在将参考各图来讨论一些示例性配置,但理解本公开的本领域技术人员将认识到也可经由本公开的教导来实现各种配置中的任一者。
63.参考图5a、图5b和图5c中所示的示例,图5b示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件504a、504b和504c(或提供所述通信耦合件的配置)以便经由x8连接(由转接卡装置214上的x4连接器“1”和“2”提供)将处理子系统206a耦合到nic 500a以及配置通信耦合件504a、504d和504e以便经由x8连接(由转接卡装置214上的x4连接器“5”和“6”提供)将处理子系统206a耦合到装置子系统502a来将服务器装置200中的通信资源提供给处理子系统206a。图5c示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件506a、506b和506c(或提供所述通信耦合件的配置)以便经由x8连接(由转接卡装置214上的x4连接器“3”和“4”提供)将处理子系统208a耦合到nic 500a以及配置通信耦合件506a和506d以便提供处理子系统208a对多个端点(例如,nic 500a和装置子系统502a)的访问来将服务器装置200中的通信资源提供给处理子系统208a。例如,此类配置可避免对适配器装置500和502上的交换机(例如,pcie交换机)的需要,以使得能够利
用可用端点(其可向操作系统显现为多个pcie装置、装置驱动器以及相应的堆栈),同时提供逻辑系统设置优点(例如,用于将特定端点指派给特定虚拟机)。因而,图5a、图5b和图5c中的示例示出了每个处理子系统206a和206b可如何被分配通信资源(在此示例中为x8通信耦合件)至多端点适配器装置500上的nic 500a,而装置子系统502a可如何被分配通信资源(在此示例中为x8通信耦合件)至单个处理子系统206a。
64.参考图6a、图6b和图6c中示出的示例,图6b示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件604a、604b和604c(或提供所述通信耦合件的配置)以便经由x16连接(由转接卡装置214上的x4连接器“1”、“2”、“3”和“4”提供)将处理子系统206a耦合到装置子系统600a来将服务器装置200中的通信资源提供给处理子系统206a。图6c示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件606a、606b和606c(或提供所述通信耦合件的配置)以便经由x16连接(由转接卡装置214上的x4连接器“5”、“6”、“7”和“8”提供)将处理子系统208a耦合到装置子系统602a来将服务器装置200中的通信资源提供给处理子系统208a。因而,图6a、图6b和图6c中的示例示出了每个处理子系统206a和208a可如何被分配通信资源(在此示例中为x16通信耦合件)至装置600和602上的相应的装置子系统600a和602a。例如,当非多端点适配器装置连接到转接卡装置214时,由bmc装置216提供的通信耦合件配置引擎可辨识并且提供在每个处理子系统与所述非多端点适配器装置中的相应一者之间的最大带宽连接(例如,在此示例中为x16)。
65.参考图7a、图7b、图7c、图7d和图7e中示出的示例,图7b示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件704a、704b和704c(或提供所述通信耦合件的配置)以便经由x8连接(由转接卡装置214上的x4连接器“1”和“2”提供)将处理子系统300a耦合到nic 700a来将服务器装置200中的通信资源提供给处理子系统300a。图7c示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件706a、706b和706c(或提供所述通信耦合件的配置)以便经由x8连接(由转接卡装置214上的x4连接器“3”和“4”提供)将处理子系统206a耦合到nic 700a来将服务器装置200中的通信资源提供给处理子系统206a。
66.图7d示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件708a、708b和708c(或提供所述通信耦合件的配置)以便经由x8连接(由转接卡装置214上的x4连接器“5”和“6”提供)将处理子系统208a耦合到nic 702a来将服务器装置200中的通信资源提供给处理子系统208a。图7e示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件710a、710b和710c(或提供所述通信耦合件的配置)以便经由x8连接(由转接卡装置214上的x4连接器“7”和“8”提供)将处理子系统302a耦合到nic 702a来将服务器装置200中的通信资源提供给处理子系统302a。因而,图7a、图7b、图7c、图7d和图7e中的示例示出了每个处理子系统206a和300a可如何被分配通信资源(在此示例中为相应的x8通信耦合件)至nic 700a中的一者,而每个处理子系统208a和302a可如何被分配通信资源(在此示例中为相应的x8通信耦合件)至nic 702a中的另一者。例如,当多个多端点适配器装置连接到转接卡装置214时,可均匀地分割通信资源(例如,在此示例中为用于每个处理子系统的x8连接)以确保每个处理子系统具有直接i/o访问,而非必须横越upi 210、304或306。
67.继续上文参考图7a、图7b、图7c、图7d和图7e讨论的示例并且参考图7f和图7g,由
bmc装置216提供的控制/桥接子系统212和通信耦合件配置引擎可以被配置为理解数据流量模式并且提供服务质量(qos)功能,所述服务质量功能可经由用户偏好设置、自动流量模式调整和/或使用理解本公开的本领域技术人员将显而易见的各种其他技术来完成。例如,图7f和图7g示出了由bmc装置216提供的控制/桥接子系统212和/或通信耦合件配置引擎可如何通过配置通信耦合件712a、712b和712c(或提供所述通信耦合件的配置)以便经由x8连接(由转接卡装置214上的x4连接器“5”和“6”提供)将处理子系统206a耦合到nic 702a来将服务器装置200中的通信资源重新分配给处理子系统206a,以及由bmc装置216提供的控制/桥接子系统212和/或通信耦合件配置引擎可如何通过配置通信耦合件714a、714b和714c(或提供所述通信耦合件的配置)以便经由x8连接(由转接卡装置214上的x4连接器“3”和“4”提供)将处理子系统208a耦合到nic 700a来将服务器装置200中的通信资源重新分配给处理子系统208a。因而,在处理子系统的特定集合与端点之间提供的通信资源(例如,在此示例中为x8连接)可被调换以便满足qos考虑。类似地,在另一个实施方案中,在图7a至图7g中提供的示例中可在特定处理子系统与相应的端点之间提供x16连接,而在其余处理子系统与其相应的端点之间可提供x4连接,以便也满足qos考虑。
68.参考图8a、图8b、图8c、图8d和图8e中所示的示例,图8b示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件804a、804b和804c(或提供所述通信耦合件的配置)以便经由x4连接(由转接卡装置214上的x4连接器“1”提供)将处理子系统300a耦合到nic 800a并且通过配置通信耦合件804a、804d和804e(或提供所述通信耦合件的配置)以便经由x4连接(由转接卡装置214上的x4连接器“5”提供)将处理子系统300a耦合到nic 802a来将服务器装置200中的通信资源提供给处理子系统300a。图8c示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件806a、806b和806c(或提供所述通信耦合件的配置)以便经由x4连接(由转接卡装置214上的x4连接器“2”提供)将处理子系统206aa耦合到nic 800a并且通过配置通信耦合件806a、806d和806e(或提供所述通信耦合件的配置)以便经由x4连接(由转接卡装置214上的x4连接器“6”提供)将处理子系统206a耦合到nic 802a来将服务器装置200中的通信资源提供给处理子系统206a。
69.图8d示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件808a、808b和808c(或提供所述通信耦合件的配置)以便经由x4连接(由转接卡装置214上的x4连接器“3”提供)将处理子系统208a耦合到nic 800a并且通过配置通信耦合件808a、808d和808e(或提供所述通信耦合件的配置)以便经由x4连接(由转接卡装置214上的x4连接器“7”提供)将处理子系统208a耦合到nic 802a来将服务器装置200中的通信资源提供给处理子系统208a。图8e示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件810a、810b和810c(或提供所述通信耦合件的配置)以便经由x4连接(由转接卡装置214上的x4连接器“4”提供)将处理子系统302a耦合到nic 800a并且通过配置通信耦合件810a、810d和810e(或提供所述通信耦合件的配置)以便经由x4连接(由转接卡装置214上的x4连接器“8”提供)将处理子系统302a耦合到nic 802a来将服务器装置200中的通信资源提供给处理子系统302a。因而,图8a、图8b、图8c、图8d和图8e中的示例示出了每个处理子系统206a、208a、300a和302a可如何被分配冗余的通信资源(在此示例中为一对x4通信耦合件)至nic 800a和802a中的每一者。因而,控制/桥接子系统212和/或bmc装置216可以被配置为辨识nic故障、至所述nic中的一者的不可用链路和/或与特定处理子系统相关联的其他通
信故障,并且作为响应,可实现至所述处理子系统的冗余通信耦合。
70.参考图9a、图9b、图9c、图9d和图9e中所示的示例,图9b示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件904a、904b和904c(或提供所述通信耦合件的配置)以便经由x4连接(由转接卡装置214上的x4连接器“1”提供)将处理子系统300a耦合到nic 900a并且通过配置通信耦合件904a、904d和904e(或提供所述通信耦合件的配置)以便经由x4连接(由转接卡装置214上的x4连接器“5”提供)将处理子系统300a耦合到装置子系统902a来将服务器装置200中的通信资源提供给处理子系统300a。图9c示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件906a、906b和906c(或提供所述通信耦合件的配置)以便经由x4连接(由转接卡装置214上的x4连接器“2”提供)将处理子系统206a耦合到nic 900a并且通过配置通信耦合件906a和906d(或提供所述通信耦合件的配置)以便提供处理子系统206a对多个端点(例如,nic 900a和装置子系统902a)的访问来将服务器装置200中的通信资源提供给处理子系统206a,这可提供与上文参考图5c讨论的那些优点类似的优点。
71.图9d示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件908a、908b和908c(或提供所述通信耦合件的配置)以便经由x4连接(由转接卡装置214上的x4连接器“3”提供)将处理子系统208a耦合到nic 900a并且通过配置通信耦合件908a和908d(或提供所述通信耦合件的配置)以便提供处理子系统208a对多个端点(例如,nic 900a和装置子系统902a)的访问来将服务器装置200中的通信资源提供给处理子系统208a,这可提供与上文参考图5c讨论的那些优点类似的优点。图9e示出了由bmc装置216提供的通信耦合件配置引擎可如何通过配置通信耦合件910a、910b和910c(或提供所述通信耦合件的配置)以便经由x4连接(由转接卡装置214上的x4连接器“4”提供)将处理子系统302a耦合到nic 900a并且通过配置通信耦合件910a和910d(或提供所述通信耦合件的配置)以便提供处理子系统302a对多个端点(例如,nic 900a和装置子系统902a)的访问来将服务器装置200中的通信资源提供给处理子系统302a,这可提供与上文参考图5c讨论的那些优点类似的优点。因而,图9a、图9b、图9c、图9d和图9e中的示例示出了每个处理子系统206a、208a、300a和302a可如何被分配通信资源(在此示例中为x4通信耦合件)至nic 900a,而装置子系统902a可如何被分配通信资源(在此示例中为x4通信耦合件)至单个处理子系统300a。
72.因此,已描述了基于以下各者来配置在服务器装置中的一个或多个处理子系统与耦合到那些处理子系统的一个或多个端点之间的通信耦合件的系统和方法:提供那些通信耦合件的硬件、那些通信耦合件的通信耦合件配置能力,以及提供所述端点的多端点适配器装置。在一些实施方案中,在所述服务器装置中的一个或多个处理子系统与耦合到那些处理子系统的一个或多个端点之间的通信耦合件的配置也可基于所检索的用户配置策略。在一些实施方案中,可在服务器装置的运行时期间执行并应用在所述一个或多个处理子系统与耦合到那些处理子系统的一个或多个端点之间的通信耦合件的配置,而在其他实施方案中,在所述一个或多个处理子系统与耦合到那些处理子系统的一个或多个端点之间的通信耦合件的配置可能需要由服务器装置进行的启动操作。因而,提供了在处理子系统与端点之间的可配置通信耦合件,所述可配置通信耦合件增强了服务器装置的可缩放性(例如,以在所述服务器装置中提供附加处理子系统),同时考虑连接到那些处理子系统的端点装置,从而允许硬件子系统及其相关联的通信耦合件支持多种处理子系统/端点配置。
73.此外,本公开连同以下各者一同申请:2019年4月26日提交并且涉及虚拟机部署技术的美国专利申请第16/396,022号,代理人案号16356.2030us01;2019年4月26日提交并且涉及数据分割技术的美国专利申请第16/396,200号,代理人案号16356.2031us01;2019年4月26日提交并且涉及数据复制技术的美国专利申请第16/396,320号,代理人案号16356.2032us01;2019年4月26日提交并且涉及分组路由技术的美国专利申请第16/396,453号,代理人案号16356.2033us01;2019年4月26日提交并且涉及连接配置技术的美国专利申请第16/396,521号,代理人案号16356.2035us01;以及2019年4月26日申请并且涉及边带通信技术的美国专利申请第16/395,584号,代理人案号16356.2036us01;其中每一者包括利用在本公开中所包括的一些实施方案中描述的多处理器/多端点系统的实施方案。理解本公开的本领域技术人员将认识到,本公开的实施方案可如何与上文讨论的一些或全部公开内容结合,并且因此那些公开内容以全文引用的方式并入本文中。
74.虽然已示出并描述了示例性实施方案,但在前述公开内容中涵盖了广泛的修改、改变和替代,并且在一些情况中,可采用所述实施方案的一些特征,但未对应地使用其他特征。因此,应当理解,将广泛地并且以与本文中公开的实施方案的范围一致的方式来理解所附权利要求。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献