CN101076790B - 动态多群集系统重新配置 - Google Patents

动态多群集系统重新配置 Download PDF

Info

Publication number
CN101076790B
CN101076790B CN2004800240156A CN200480024015A CN101076790B CN 101076790 B CN101076790 B CN 101076790B CN 2004800240156 A CN2004800240156 A CN 2004800240156A CN 200480024015 A CN200480024015 A CN 200480024015A CN 101076790 B CN101076790 B CN 101076790B
Authority
CN
China
Prior art keywords
interconnect controller
processor
interconnect
trooping
point
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.)
Expired - Fee Related
Application number
CN2004800240156A
Other languages
English (en)
Other versions
CN101076790A (zh
Inventor
R·科塔
S·尼瓦瓦尔克
G·普拉萨德
C·蔡特勒
D·B·格拉斯科
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New America Asia Co
Original Assignee
Newisys Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Newisys Inc filed Critical Newisys Inc
Publication of CN101076790A publication Critical patent/CN101076790A/zh
Application granted granted Critical
Publication of CN101076790B publication Critical patent/CN101076790B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks

Abstract

根据本发明,提供了允许动态改变多群集系统配置的方法和设备。在一个示例中,多群集系统中的处理器共享一个虚拟地址空间。提供了动态引入和去除处理器、I/O资源和群集的机制。这些机制可在复位或系统在运行时实施。可动态启用或禁用链路。

Description

动态多群集系统重新配置
发明背景
1.发明领域
本发明一般地涉及多处理器系统。更具体地说,本发明提供了用于在多群集系统中有效管理资源的技术。
2.相关技术说明
性能限制导致了开发点对点体系结构以连接具有单一存储空间的系统中的多个处理器。在一个示例中,各个处理器可通过多条点对点链路彼此连接以形成处理器群集。各个处理器群集也可以连接。点对点链路大大增加了用于协同处理和多重处理功能的带宽。
各种机制可用于连接多处理器群集。然而,动态改变多群集系统配置的机制已受到限制。种种难题限制了多群集系统中包括物理层协议的通信协议的那种功能。
因此,需要提供改进这些机制的技术和在具有使用点对点链路连接的多个处理器的多个群集的系统中用于群集之间通信的技术。
发明概述
根据本发明,提供了允许动态改变多群集系统配置的方法和设备。在一个示例中,多群集系统中的处理器共享一个虚拟地址空间。提供了用于动态引入和去除处理器、I/O资源和群集的机制。这些机制可在复位期间或系统在运行时实施。可动态启用或禁用链路。
在一个实施例中,提供了计算机系统。计算机系统包括第一群集和第二群集。第一群集包括第一多个处理器和第一互连控制器。所述第一多个处理器和所述第一互连控制器使用点对点体系结构进行通信。第二群集包括第二多个处理器和第二互连控制器。所述第二多个处理器和所述第二互连控制器使用点对点体系结构进行通信。可通过配置所述第一互连控制器而启用或禁用对从所述第一互连控制器到所述第二互连控制器的链路的轮询。
在另一示例中,提供了引入处理器群集的方法。包括使用点对点体系结构进行通信的第一多个处理器的第一群集中的第一互连控制器配置为轮询是否存在第二互连控制器。在包括使用点对点体系结构进行通信的第二多个处理器的第二群集中,在第二互连控制器上断言复位信号。在所述第一与第二互连控制器之间的连接上建立链路层协议。
通过参照本说明书其余部分和附图,可对本发明的本质和优点有进一步的理解。
附图简述
通过结合附图对本发明特定实施例的如下描述,可更好地理解本发明。
图1A和1B是显示具有多个群集的系统的图示;
图2是具有多个处理器的示范群集的图示;
图3是有助于本发明各种实施例的示范互连控制器的图示;
图4是本地处理器的图示;
图5是根据本发明一个特定实施例的存储器映射方案的图示;
图6A是说明本发明特定实施例的四群集系统的简化方框图;
图6B是包括用于图6A所示四群集系统的路由信息的组合路由表;
图7是显示与互连控制器相关联的配置空间寄存器的图示;
图8是显示系统重新启动的流程图;
图9是显示新链路动态引入的流程图;
图10是显示现有链路动态去除的流程图。
特定实施例详细说明
下面将具体参照本发明的一些特定实施例,包括本发明者认为实施本发明的最佳模式。这些特定实施例的示例在附图中显示。虽然本发明结合这些特定实施例描述,但可理解,这并不是要将本发明局限于所述实施例。相反,意在涵盖可能包含在所附权利要求所限定的本发明精神和范围内的各种替代、修改和等同物。在处理器之间进行点对点通信的多处理器体系结构适用于实施本发明的特定实施例。在如下说明中,为提供对本发明的透彻理解而陈述了许多特定的细节。本发明可在不具有一些或全部这些特定细节的情况下实施。熟知的过程操作未被详细描述以不致使本发明不够清楚。此外,除非上下文明确指明,否则,本申请对一个特定单一实体的引用包括可采用不止一个实体实施本发明的方法和设备的可能性。
图1A是可采用本发明技术的一个多群集、多处理器系统的一个示例的图示。每个处理群集101、103、105和107包括多个处理器。处理群集101、103、105和107通过点对点链路111a-f彼此连接。图1A所示多群集体系结构中的多个处理器共享一个全局存储空间。在此示例中,点对点链路111a-f是替代传统前端总线,用于连接多群集101、103、105和107中多个处理器的内部系统连接。点对点链路可支持任一点对点一致性协议。
图1B是可采用本发明技术的一个多群集、多处理器系统的另一示例图示。每个处理群集121、123、125和127通过点对点链路141a-d连接到交换器131。应注意的是,在连接系统中的多个群集时,使用交换器和点对点链路允许采用较少点对点链路的实现方案。交换器131可包括具有一致性协议接口的通用处理器。根据不同的实现方案,可如图1B所示使用交换器131扩展图1A所示的多群集系统。
图2是多处理器群集的一个示例图示。群集200包括处理器202a-202d、一个或多个基本I/O系统(BIOS)204、包括存储体206a-206d的存储器子系统、点对点通信链路208a-208e及服务处理器212。点对点通信链路配置为允许处理器202a-202d、I/O交换器210与互连控制器230之间的互连。服务处理器212配置为允许经由图2中链路214a-214f表示的JTAG接口与处理器202a-202d、I/O交换器210和互连控制器230进行通信。在一个示例中,服务处理器212还连接到BIOS 204。应注意,还可支持其它接口。I/O交换器210将系统其余部分连接到I/O适配器216与220,并且连接到BIOS 204以便引导。
根据特定实施例,本发明的服务处理器具有根据以前指定的划分方案划分系统资源的智能。在一种实现方案中,服务处理器可探测群集与远程链路的连接以及每个群集内处理和I/O单元的存在,并生成用于BIOS 204的路由表信息。BIOS 204随后可使用此信息来对整个系统编程。划分可通过由服务处理器直接操作与系统处理器相关联的路由表而实现,这因点对点通信体系结构而可行。通过在一个或多个处理器中执行BIOS代码,也可改变路由表。路由表用于控制和隔离不同的系统资源,这些资源之间的连接在表中定义。
处理器202a-d还通过点对点链路232a-d连接到互连控制器230。根据不同的实施例和如下将更详述的一样,互连控制器230执行各种功能,这些功能允许系统中的互连处理器数量超出与多个处理器群集中每个群集相关联的节点ID空间和映射表的限制。根据一些实施例,互连控制器230执行种种其它功能,包括跨群集映保持缓存一致性。互连控制器230可以连接到与其它多处理器群集相关联的类似控制器。应注意,一个群集中可能有不止一个这样的互连控制器。互连控制器230与处理器202a-d及使用点对点协议的远程群集二者进行通信。
更一般地说,应理解,图2所示的特定体系结构只是示范,可以设想,本发明的实施例可具有不同的配置和资源互连以及用于所示每个系统资源的各种替代方案。然而,为便于说明,假设群集200的一些特定细节。例如,假设图2所示的大多数资源常驻在单个电子组件上。另外,存储体206a-206d可包括作为双列直插存储模块(DIMM)提供的双倍数据率(DDR)存储器。I/O适配器216例如可以是控制对永久性存储装置的存取的超直接存储器存取(UDMA)控制器或小型计算机系统接口(SCSI)控制器。I/O适配器220可以是适用于提供与诸如局域网(LAN)或因特网等网络进行通信的以太网卡。BIOS 204可以是类似闪存的任何永久性存储器。
根据一个实施例,服务处理器212是包括集成芯片集功能的Motorola MPC855T微处理器,并且互连控制器230是支持本地点对点一致性协议的专用集成电路(ASIC)。互连控制器230还可配置为处理非一致性协议以便可以与I/O设备通信。在一个实施例中,互连控制器230是特殊配置的可编程芯片,如可编程逻辑器件或现场可编程门阵列。在另一实施例中,互连控制器230是专用集成电路(ASIC)。在又一实施例中,互连控制器230是增加了访问和处理互连分组业务能力的通用处理器。
图3是有助于理解本发明不同方面的互连控制器230的一个示例的图示。根据不同的实施例,该互连控制器包括配置为处理诸如从多处理器系统的不同群集中的处理器接收的探测和请求等分组的协议引擎。协议引擎305的功能可划分到若干引擎上以改进性能。在一个示例中,划分是基于分组类型(请求、探测和响应)、方向(输入和输出)或事务流(请求流、探测流等)来完成的。
协议引擎305可访问允许互连控制器跟踪诸如最近的请求和探测等事务并将事务与特定处理器相关联的等待缓冲区309。在等待缓冲区309中保持的事务信息可包括事务目的地节点、用于后续冲突检测和协议优化的请求的地址、响应信息、标记及状态信息。历史缓冲区311还可提供以允许有效地重新传输另一群集中互连控制器尚未成功接收的分组。
互连控制器具有一致性协议接口307,该接口允许互连控制器与群集中的其它处理器及外部处理器群集进行通信。互连控制器也可包括诸如用于与I/O设备进行通信的非一致性协议接口311等其它接口(例如,如图2中由链路208c和208d表示)。根据不同的实施例,每个接口307和311实现为全交叉交换器或使用诸如复用器和缓冲区等组件的分开的接收和发送单元。应注意的是,互连控制器230不一定需要既提供一致性接口,又提供非一致性接口。还应注意,在一个群集中的互连控制器可与另一群集中的互连控制器230进行通信。
根据本发明的不同实施例,处理器202a-202d基本上是相同的。图4是此类处理器202的简化方框图,该处理器202包括具有多个端口404a-404c和与它们相关联的路由表406a-406c的接口402。每个端口404允许经例如图2所示链路208a-208e等相关链路与计算机系统中的其它资源如处理器或I/O设备进行通信。
图4所示的基础结构可归纳为点对点、分布式路由机制,其包括根据例如星形、网状等各种拓朴结构中任一结构将系统处理器互连的多个段。每一段的每个端点与所连接的一个处理器相关联,该处理器具有唯一的节点ID和它“拥有”的多个相关资源,例如它所连接的存储器和I/O设备。
与分布式路由机制中每个节点相关联的路由表集体表示计算机系统资源之间互连的当前状态。任一给定节点(例如处理器)拥有的每个资源(例如特定的存储范围或I/O设备)在与所述节点相关联的路由表中表示为地址。当请求到达节点时,所请求的地址与节点路由表中标识适当节点和链路的双级条目进行比较,即给定地址范围内的一个特定地址,转到节点x;并且对于节点x,使用链路y。
如图4所示,处理器202可根据相关联路由表中的信息与三个其它处理器进行点对点通信。根据一个特定实施例,路由表406a-406c包括双级表,第一级将系统资源(如存储体)与相应节点(如其中一个处理器)相关联,而第二级将每个节点与用于从当前节点到达该节点的链路(例如,208a-208e)相关联。
处理器202还具有一组JTAG握手寄存器408,这些寄存器除具有其它功能外,有利于服务处理器(如图2所示服务处理器212)和处理器202的通信。也就是说,服务处理器可将路由表条目写入握手寄存器408以便最终存储在路由表406a-406c中。应理解,图4所示的处理器体系结构只是示范用于描述本发明的特定实施例。例如,可使用更少或更多数量的端口和/或路由表来实施本发明的其它实施例。
如上所述,本发明特定实施例中群集依据的基本协议支持有限的节点ID空间,而根据特定实施,该空间是3比特空间,因此,只允许唯一地标识8个节点。也就是说,如果在没有本发明所代表的创新技术的情况下采用基本协议,则在单个群集中只可经点对点基础结构互连8个字节。为避开此限制,本发明引入了分层机制,该机制在特定群集内保持了单层标识方案,同时允许与其它定位类似的群集和处理节点互连并允许它们之间的通信。
根据一个特定实施例,每个多处理器群集中的节点之一是互连控制器,例如,图2的互连控制器230,该控制器管理信息的分层映射,由此允许多个群集共享单个存储器地址空间,同时允许其群集内的处理器操作任何群集中不“知道”所属群集外的任何信息的任何处理器并与这种处理器交互。互连控制器在其相关联处理器看来只是群集中的另一个处理器或节点。
在基本协议中,当群集中的一个特定处理器生成请求时,一组地址映射表用于将该请求映射到群集中的其它节点之一。也就是说,群集中的每个节点有与其相关联的一部分共享存储空间。存在对应于主存储器、存储器映射I/O、不同类型的I/O空间的不同类型的地址映射表。这些地址映射表将请求中标识的地址映射到群集中的特定节点。
一组路由表随后用于确定如何从请求节点到达地址映射表中标识的节点。也就是说,如上所述,每个处理器(即群集节点)具有相关联的路由表,这些路由表标识点对点基础结构中可用于将请求从当前节点传送到地址映射表中标识的节点的特定链路。虽然,通常一个节点可响应一个或多个资源(包括例如处理器),但应注意,术语“节点”和“处理器”在本文中通常可互换使用。根据特定的是实现方案,节点包括多个子单元,例如CPU、存储控制器、I/O桥接器等,每个子单元均具有单元ID。
另外,由于各个事务可分段到非连续分组中,因此,每个分组包括唯一的事务标记,以便参照发起事务的节点识别与分组相关联的事务。根据特定的实现方案,事务标记标识源节点(3比特字段)、源节点单元(2比特字段)和事务ID(5比特字段)。
因此,在特定节点发起事务时,地址映射表用于标识目的地节点(和单元),它们随后被添加到分组中并由路由表用于标识传送分组的适当链路。源信息由通过请求探测的目的地节点和所有其它节点使用,以对请求作出适当响应。
根据特定实施例并且如上所述,每个群集中的互连控制器对其群集中的其它处理器而言只是该群集中的另一处理器。然而,与互连控制器相关联的部分共享存储空间实际上包括全局共享存储空间的剩余部分,即与系统中所有其它群集相关联的存储空间。也就是说,从特定群集中本地处理器的角度而言,与系统中所有其它多处理器群集相关联的存储空间由它们所属群集中的互连控制器表示。
根据将参照图5描述的更加具体的实施例,每个群集具有5个节点(如图2所示),这包括四个处理器202a-d和一个互连控制器230,其中每个由在该群集内为唯一的3比特节点ID表示。如上所述,每个处理器(即群集节点)可表示若干子单元,例如包括CPU、存储控制器等。
图5示出了根据本发明设计并采用这种群集配置的示范地址映射方案。在所示示例中,还假定全局存储空间由在本文中亦称为四元组的4个这样的群集(其中每个群集包含4个本地处理器)共享。正如可以理解的那样,群集的数量和每个群集内的节点数量可随不同的实施例而有所不同。
为将地址映射功能扩展到单个群集外,每个群集将其本地存储空间(即,与该群集中的处理器相关联的全局存储空间部分)映射到一个邻接区域,而该全局存储空间中在此区域之上和之下的剩余部分被映射到本地互连控制器。每个群集中的互连控制器维护两个映射表:全局映射和本地映射。全局映射将输出请求映射到远程群集。本地映射将来自远程群集的输入请求映射到本地群集内的特定节点。
现在参照图5,每个本地群集具有本地存储器映射(501-504),其将本地存储空间(即与本地处理器相关联的全局存储空间的邻接部分)映射到相应的节点,并将所有远程存储空间(即全局存储空间的剩余部分)映射到与本地互连控制器相关联的一个或多个映射条目,如四元组3的节点4。本地群集中的每个节点具有本地映射的副本。每个群集中的互连控制器还维护将这些远程存储空间与系统中每个其它群集相关联的全局映射(505-508)。每个互连控制器使用其本地映射(509-511)的副本将从远程群集接收的请求映射到其群集中的各个节点。
参照图5描述的示范事务可能是说明性的。在此示例中,四元组3中的节点2生成请求(经映射501)映射到本地互连控制器(即节点4)的请求。该互连控制器收到此请求时,其全局映射505将地址映射到四元组2。该互连控制器随后将请求转发到四元组2。在四元组2的互连控制器利用其本地存储器映射来确定作为该请求目标的适当节点-在此示例中为节点1。
在特定实现中,每个处理器或群集节点限于8个存储器映射寄存器。以上参照图5所述的方案需要4个条目用于本地存储空间和最多两个寄存器用于远程空间。因此,根据更特定的实施例,两个剩余条目可用于进一步划分区域。八个映射寄存器限制要求四元组的所有本地存储空间在邻接块内分配。在这种实施例中的互连控制器的本地存储器映射也是八个条目。然而,互连控制器全局映射的大小由系统中群集的数量确定。根据不同的实施例,存储器映射I/O空间由完全相同的一组映射寄存器映射。
如上所述,在本地群集层次上,来自地址映射表的信息用于标识用于传送信息到群集内目的地节点的适当链路。要使用上述全局映射实现群集之间的传输,需要一种类似的机制。因此,根据不同的实施例,除与群集中每个节点相关联的本地路由表外,互连控制器还维护全局映射信息,这些信息将系统中的其它群集映射到将群集互连的不同的点对点传输链路(例如图1A所示链路111)。
根据本发明的特定实施例,采用了两种类型的本地路由表:一种用于定向的分组,一种用于广播的分组。每个表(例如图4的表406)维护目标节点和链路之间的映射。对于定向的分组,将不同的表用于请求和响应。这使响应可沿与请求相同的路径发送回请求方。保持相同的路由简化了调试,并且不需要校正。对于广播的分组,对应的表指示转发广播分组的链路。广播分组因此可路由到多条链路。
在本发明的互连控制器的特定实现方案中,其本地表将本地目的地节点映射到用于定向的分组的四条链路之一和用于广播的分组的任意数量的链路。互连控制器还维护将远程目的地群集映射到特定远程链路的全局路由表。根据特定实施例,互连控制器还支持在全局路由层次的分组多播。
现在将参照图6A和图6B描述根据本发明设计的路由机制的特定实施例。图6A的系统600包括四个群集,每个群集具有包括节点N0和N1的多个本地节点。为便于说明,图6B的表组合了系统的所有本地和全局路由表。
作为示范事务的一部分,群集0中节点N0上的CPU 602生成定向到群集3中节点N0上CPU 604的分组。此分组例如可以是映射到该节点存储控制器的存储器请求。由于CPU 602不知道其群集外的任何信息,因此,它生成以群集0中节点N1(即,本地互连控制器606)为目的地的分组。如上所述,这是因为由节点N0拥有的本地存储器映射(参阅图6B表的相关部分)将节点N1标识为对应于远程群集拥有的所有存储器。互连控制器606接收分组,使用其全局地址映射(例如,如上所述)确定分组的最终目的地为群集3,并生成以群集3为目标的远程分组。随后,使用其全局路由表(即,图6B的相关部分),互连控制器606确定此分组必须在链路L1上发送。类似于上述本地路由机制,标识源和目的地群集的信息被添加到分组中。
群集1的互连控制器608收到该分组时,它也确定该分组的目的地为群集3,并根据其全局路由表(图6B)确定链路L2必须用于发送分组。群集3的互连控制器610接收分组,确定该分组的目标是本地群集,并使用其本地路由表(图6B)确定本地链路L0必须用于将分组发送到其目的地。节点N0的CPU 604随后经链路L0接收分组。根据节点ID空间为3比特ID空间的特定实施例,此多层路由机制可扩展到8个本地节点,对群集数量无明确限制。
使用多层路由机制可允许系统具有数量相对无限的处理器和处理群集。然而,随着系统规模和复杂性增加,提供动态添加和去除处理器和处理群集而不破坏系统性能的机制变得越发关键。使用大量处理器和处理群集的更多配置也是可行的,并且允许以无缝方式变更配置变得有益。一种类型的配置变更是去除或动态替换故障组件,如处理器、处理群集、链路等。
打开和关闭链路的常规机制是有局限性的。现有机制缺乏例如用于动态打开复位期间未找到的链路或关闭复位期间找到的链路的规定。因此,需要提供改进,以允许用户动态启用或禁用链路,并改变多处理器、多群集系统的配置。在一个示例中,用户可动态将诸如处理器和处理群集等资源添加到现有系统中。在另一示例中,用户可动态替换象互连控制器或群集之间的HyperTransport电缆等故障组件。
根据本发明的不同实施例,在互连控制器中提供允许动态启用或禁用链路的机制。在一个实施例中,配置空间寄存器与互连控制器相关联。配置空间寄存器包括用于启用物理层和链路层通信的信息、用于重新初始化链路的指示符及用于跟踪连接到互连控制器的处理群集的标识符。
图7是说明配置空间寄存器的示意图。提供配置空间寄存器710是为了启用和禁用处理器与群集之间的物理和链路层通信。配置空间寄存器701可包括在互连控制器中,用于管理群集间通信。应注意的是,配置空间寄存器701还可包括在其它资源中。维护多个处理器群集ID以及物理层与链路层切换指示符的机制在本文中称为配置空间寄存器。在一个示例中,配置空间寄存器701包括物理层指示符711,用以启用或禁用物理层通信。通过写入配置空间寄存器来禁用物理层通信使处理器与群集之间的链路被关闭。在一个示例中,物理宏(physical macro)会被关闭,并且不会有源于已被禁用的物理宏的电活动。将不会进行轮询,并且相关联的互连控制器将不响应任何轮询或保持任何链路。根据不同的实施例,配置空间寄存器701还包括链路层指示符713。在一个示例中,链路层指示符713是栅栏比特(fence bit)。通过写配置空间寄存器而禁用链路层可防止将链路用于除物理层通信以外的任何其它通信。
然而,互连控制器仍会响应轮询并将保持现有连接。由于不允许非物理层通信,因此,无法通过具有禁用链路层的链路发送HyperTransport命令或数据分组。轮询状态可使用配置空间寄存器维护。在一个示例中,如果系统在脱离复位时未找到链路,则物理层协议可以持续轮询链路以确定是否已连接任一设备。此轮询功能可通过在配置空间寄存器中设置适当的切换而予以启用或禁用。轮询允许通过自动识别和通知将资源热插接到现有群集中。在一个示例中,轮询允许新处理群集热插接到现有多处理群集中。
维护系统配置的处理器可选择在连接了新群集和扩展系统时启用链路,或只是通知用户:系统已识别出最近实施的连接。根据不同实施例,配置空间寄存器还包括重新初始化指示符715,以指示是否应执行新的初始化序列。还提供了用于保持群集标识符717、719和721的寄存器,以允许配置空间寄存器701保持所连接的群集的ID。应注意,并非配置空间寄存器701中的所有值是必需的。例如,在只支持两个群集的系统中,只提供了单个寄存器,用于保持群集ID。同样地,配置空间寄存器701可保持其它信息,如特定的轮询状态信息。
图8是说明在系统复位期间使用配置空间寄存器的一种技术的流程图。在801,物理层通信从复位中被启用。标准物理层初始化序列可在启用物理层时执行。轮询状态也可保持。在一个示例中,轮询状态设为活动状态,并且互连控制器不但监控链路是否存在其它资源,而且主动发送比特序列。在另一示例中,轮询状态设为被动,并且互连控制器只监控是否存在其它资源。在803,栅栏比特设为禁用链路层通信。禁用链路层通信允许建立物理层通信而不受本地数据传输干扰。然而,应注意,链路层通信不一定要被禁用。在805,发送初始化序列或训练序列。
传输通常采用串行化和去串行化(SERDES)机制和8b/10b编码来执行。8b/10b编码将若干“1”或“0”的连续序列替换为混合序列,采用这种编码出于几个原因。8b/10b有助于在传输的数据中产生足够多的信号转换以校正正确的PLL操作。不采用这种8B/10B编码方案,数据中的一串“1”或“0”可能导致接收时钟漂移或失去同步,从而使数据丢失。8b/10b还可确保信号是直流均衡的,这意味着链路中随时间过去不会形成直流偏移。8B/10B编码的字符遵循可立即检测许多信令错误的特定规则。
可以使用的初始化或训练序列的示例在Infiniband TradeAssociation提供的“无限宽带体系结构规格第1和第2卷(InfinibandArchitecture Specification Volumes I and II)”中有描述,其内容通过引用全部结合于本文中。应注意的是,不一定要使用Infiniband。物理层通信初始化期间,互连控制器之间交换信息。在811,交换链路宽度参数。在813,交换链路速度参数。在815,交换可选的纠错信息。在817,随后通过切换关闭栅栏比特而启用链路层。在启用链路层后,可以继续数据通信。在819,交换群集ID信息。在821,在配置空间寄存器中设置群集ID。在823,根据需要更新与互连控制器相关联的路由表以反映连接的资源。
在另一示例中,未进行有关跨多个群集的复位同步的假设。断言和取消断言系统复位信号的任意时间顺序都是有效的。在一个实例中,在取消断言复位后每个群集中的每个远程链路层的相应栅栏比特被清零。每条远程链路出现时是被禁用的,并且远程物理层在轮询连接的另一端是否存在另一群集。在远程连接两端的群集均脱离复位后,远程物理层在轮询时检测彼此。根据不同的实施例,远程物理层现在可执行初始化/训练序列,这可能涉及交换链路宽度参数、链路速度参数、纠错信息以及可靠建立物理链路连接所需的任何其它信息。
在初始化/训练序列后,可交换群集ID字段。由于群集刚脱离复位,因此,群集ID可初始化为预定义的固定值,例如初始化为全零。远程群集ID随后保持在CSR中。物理层被启用,同时链路层仍被禁用。此时,服务处理器通过如下方式从主群集开始探测整个系统:读取主群集中远程链路的CSR,指定群集ID并写CSR以重新初始化远程连接的物理层。
根据不同的实施例,主群集中的服务处理器现在获得了有关哪个群集通过每个群集上的远程链路连接到其它群集的信息。该信息用于生成路由表。该信息还传给BIOS。BIOS设置群集之一中CSR内的“初始化链路层”比特。这使一侧的链路层利用链路层启动分组来启动链路层初始化。另一侧的链路层收到链路层启动分组时,它回复一个链路层启动分组,从而建立链路层。
链路层激活后,可跨远程链路从主群集发送分组,以对远程群集中的处理器和控制器进行编程/初始化。系统现在在运行。在一个实例中,如果未使用任一远程连接,则服务处理器或BIOS可选择隔开链路层并禁用那些远程连接的物理层。
图9是说明热插接期间使用空间寄存器的流程图。在系统仍在运行的同时将资源动态连接到系统中在本文中称为热插接。在901,轮询状态在互连控制器处保持。在903,保持栅栏比特以禁用链路层。然而,应注意,不一定要禁用栅栏比特。在检测到新处理群集时,在905触发重新初始化。在一个示例中,通过将配置空间寄存器中充当重新初始化指示符的比特置位而触发重新初始化。在907,发送初始化序列或训练序列。在911,交换诸如链路宽度和链路速度等信息。随后,在913启用链路层。在915,将新添加的处理器组的群集ID写入配置空间寄存器。在917,类似地更新上述路由表以允许多个群集通信。
在另一示例中,一个或多个群集在运行,并且需要向系统中添加新群集。根据不同的实施例,在需要添加的新群集上断言和取消断言复位信号。如果禁用到新群集的远程连接的物理层,则将该物理层置于轮询状态。远程连接未被隔离。交换群集ID,并启用物理层。服务处理器以如上所述的类似方式生成将新群集以及主群集编程所需的信息。新远程连接的链路层现已被初始化。
图10是说明用于从系统中动态去除资源的一种技术的流程图。系统在活动状态时通常难以动态拔去诸如处理器或处理群集等资源,这是因为去除处理器及其关联高速缓存会严重影响系统操作。在一个示例中,某个特定应用在处理的数据可在处理器高速缓存中保持在中间状态,以便从系统中删除。类似地,操作系统进程可在一个或多个处理器组上运行以便删除。根据不同的实施例,将使用支持动态去除群集的操作系统。在一个示例中,应用在支持动态去除多处理器群集的操作系统环境中在1001终止。群集在1003被禁用,但尚未被拔去。在1005,刷新与要去除的群集相关联的高速缓存。在1007,修改路由表以反映处理群集的去除。在1009,在配置空间寄存器中写栅栏比特。栅栏比特可由各种实体写入。在一个示例中,栅栏比特由服务处理器或与某个处理器相关联的JTAG接口写入。在1011,可以物理上去除多处理器群集。在1013,可保持仍驻留在系统中的互连控制器处的物理层以允许引入新的或替代处理器群集。
虽然参照特定实施例具体显示和描述了本发明,但本领域的技术人员会理解,在不脱离本发明精神或范围的情况下,可以改变所公开实施例的形式和细节。例如,本发明实施例可应用于通过点对点、交换器或总线体系结构连接的多处理器群集。在另一示例中,多个处理器群集可共享单个互连控制器,或者多个互连控制器可在单个群集中使用。因此,本发明的范围应参照所附权利要求书来确定。

Claims (28)

1.一种计算机系统,它包括:
具有第一多个处理器中的第一处理器和第二处理器和第一互连控制器的第一群集,其中,第一处理器通过点对点链路连接于第二处理器,第一处理器通过点对点链路连接于第一互连控制器,且第二处理器通过点对点链路连接于第一互连控制器;
具有第二多个处理器和第二互连控制器的第二群集,所述第二多个处理器和所述第二互连控制器使用点对点体系结构进行通信,其中,通过禁用对从所述第一互连控制器到所述第二互连控制器的链路的轮询并刷新与第二群集相关的高速缓存来禁用第二群集;
所述第一互连控制器包括可配置为防止在所述第一互连控制器和所述第二互连控制器之间传输逻辑分组的栅栏指示符;
其中引入了分层机制,所述机制在特定群集内保持了单层标识方案,同时允许与其它定位类似的群集和处理节点互连以及允许所述定位类似的群集和处理节点之间的通信。
2.如权利要求1所述的计算机系统,其特征在于,所述第一群集的处理器和所述第二群集的处理器共享单个虚拟地址空间。
3.如权利要求1所述的计算机系统,其特征在于,所述第一互连控制器包括物理层启用指示符。
4.如权利要求1所述的计算机系统,其特征在于,所述第一互连控制器包括可配置为引导所述第一互连控制器以重新初始化所述链路的重新初始化指示符。
5.如权利要求4所述的计算机系统,其特征在于,重新初始化包括让与所述第一互连控制器相关联的发送器发送训练序列到所述第二互连控制器。
6.如权利要求5所述的计算机系统,其特征在于,在所述轮询活动状态设定时所述发送器发送所述训练序列。
7.如权利要求6所述的计算机系统,其特征在于,在所述轮询休眠状态设定时所述发送器不发送所述训练序列。
8.如权利要求4所述的计算机系统,其特征在于,重新初始化包括让与所述第一互连控制器相关联的发送器发送初始化序列到所述第二互连控制器。
9.如权利要求1所述的计算机系统,其特征在于,所述第一互连控制器包括可用于保持标识远程处理器群集的值的多个群集ID指示符。
10.如权利要求1所述的计算机系统,其特征在于,所述第一互连控制器包括具有物理层启用比特、栅栏比特、重新初始化比特和群集ID比特的配置空间寄存器。
11.一种引入处理器群集的方法,所述方法包括:
配置包括使用点对点体系结构进行通信的第一多个处理器的第一群集中的第一互连控制器,以轮询是否存在第二互连控制器;
在包括使用点对点体系结构进行通信的第二多个处理器的第二群集中的第二互连控制器上断言复位信号;
在断言复位信号后,在所述第一与第二互连控制器之间的连接上建立链路层协议;
所述第一互连控制器包括可配置为防止在所述第一互连控制器和所述第二互连控制器之间传输逻辑分组的栅栏指示符;
其中引入了分层机制,所述机制在特定群集内保持了单层标识方案,同时允许与其它定位类似的群集和处理节点互连以及允许所述定位类似的群集和处理节点之间的通信。
12.如权利要求11所述的方法,其特征在于,轮询连续执行。
13.如权利要求11所述的方法,其特征在于,所述第一互连控制器包括物理层启用指示符。
14.如权利要求11所述的方法,其特征在于,所述第一互连控制器包括可配置为引导所述第一互连控制器以重新初始化所述链路的重新初始化指示符。
15.如权利要求14所述的方法,其特征在于,重新初始化包括让与所述第一互连控制器相关联的发送器发送训练序列到所述第二互连控制器。
16.如权利要求15所述的方法,其特征在于,在所述轮询活动状态设定时所述发送器发送所述训练序列。
17.如权利要求16所述的方法,其特征在于,在所述轮询休眠状态设定时所述发送器不发送所述训练序列。
18.如权利要求14所述的方法,其特征在于,重新初始化包括让与所述第一互连控制器相关联的发送器发送初始化序列到所述第二互连控制器。
19.如权利要求11所述的方法,其特征在于,所述第一互连控制器包括可用于保持标识远程处理器群集的值的多个群集ID指示符。
20.如权利要求11所述的方法,其特征在于,所述第一互连控制器包括具有物理层启用比特、栅栏比特、重新初始化比特和群集ID比特的配置空间寄存器。
21.一种计算机系统,它包括:
用于配置包括使用点对点体系结构进行通信的第一多个处理器的第一群集中的第一互连控制器、以轮询是否存在第二互连控制器的装置;
用于在包括使用点对点体系结构进行通信的第二多个处理器的第二群集中的第二互连控制器上断言复位信号的装置;
在断言复位信号后,用于在所述第一与第二互连控制器之间的连接上建立链路层协议的装置;
所述第一互连控制器包括可配置为防止在所述第一互连控制器和所述第二互连控制器之间传输逻辑分组的栅栏指示符;
其中引入了分层机制,所述机制在特定群集内保持了单层标识方案,同时允许与其它定位类似的群集和处理节点互连以及允许所述定位类似的群集和处理节点之间的通信。
22.如权利要求21所述的计算机系统,其特征在于,轮询连续执行。
23.如权利要求21所述的计算机系统,其特征在于,所述第一互连控制器包括物理层启用指示符。
24.如权利要求21所述的计算机系统,其特征在于,所述第一互连控制器包括可配置为引导所述第一互连控制器以重新初始化所述链路的重新初始化指示符。
25.如权利要求24所述的计算机系统,其特征在于,重新初始化包括让与所述第一互连控制器相关联的发送器发送训练序列到所述第二互连控制器。
26.如权利要求25所述的计算机系统,其特征在于,在所述轮询活动状态设定时所述发送器发送所述训练序列。
27.如权利要求26所述的计算机系统,其特征在于,在所述轮询体眠状态设定时所述发送器不发送所述训练序列。
28.如权利要求24所述的计算机系统,其特征在于,重新初始化包括让与所述第一互连控制器相关联的发送器发送初始化序列到所述第二互连控制器。
CN2004800240156A 2003-06-27 2004-06-18 动态多群集系统重新配置 Expired - Fee Related CN101076790B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/607,819 US7577727B2 (en) 2003-06-27 2003-06-27 Dynamic multiple cluster system reconfiguration
US10/607,819 2003-06-27
PCT/US2004/019524 WO2005003893A2 (en) 2003-06-27 2004-06-18 Dynamic multiple cluster system reconfiguration

Publications (2)

Publication Number Publication Date
CN101076790A CN101076790A (zh) 2007-11-21
CN101076790B true CN101076790B (zh) 2010-09-29

Family

ID=33564202

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004800240156A Expired - Fee Related CN101076790B (zh) 2003-06-27 2004-06-18 动态多群集系统重新配置

Country Status (6)

Country Link
US (1) US7577727B2 (zh)
EP (1) EP1639427A4 (zh)
JP (1) JP2007526540A (zh)
CN (1) CN101076790B (zh)
CA (1) CA2530291A1 (zh)
WO (1) WO2005003893A2 (zh)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7308558B2 (en) * 2004-01-07 2007-12-11 International Business Machines Corporation Multiprocessor data processing system having scalable data interconnect and data routing mechanism
US7007128B2 (en) * 2004-01-07 2006-02-28 International Business Machines Corporation Multiprocessor data processing system having a data routing mechanism regulated through control communication
US7757033B1 (en) 2004-02-13 2010-07-13 Habanero Holdings, Inc. Data exchanges among SMP physical partitions and I/O interfaces enterprise servers
US7664110B1 (en) 2004-02-07 2010-02-16 Habanero Holdings, Inc. Input/output controller for coupling the processor-memory complex to the fabric in fabric-backplane interprise servers
US7873693B1 (en) 2004-02-13 2011-01-18 Habanero Holdings, Inc. Multi-chassis fabric-backplane enterprise servers
US7685281B1 (en) 2004-02-13 2010-03-23 Habanero Holdings, Inc. Programmatic instantiation, provisioning and management of fabric-backplane enterprise servers
US8145785B1 (en) 2004-02-13 2012-03-27 Habanero Holdings, Inc. Unused resource recognition in real time for provisioning and management of fabric-backplane enterprise servers
US7953903B1 (en) 2004-02-13 2011-05-31 Habanero Holdings, Inc. Real time detection of changed resources for provisioning and management of fabric-backplane enterprise servers
US7860961B1 (en) 2004-02-13 2010-12-28 Habanero Holdings, Inc. Real time notice of new resources for provisioning and management of fabric-backplane enterprise servers
US7561571B1 (en) 2004-02-13 2009-07-14 Habanero Holdings, Inc. Fabric address and sub-address resolution in fabric-backplane enterprise servers
US7860097B1 (en) 2004-02-13 2010-12-28 Habanero Holdings, Inc. Fabric-backplane enterprise servers with VNICs and VLANs
US7843906B1 (en) 2004-02-13 2010-11-30 Habanero Holdings, Inc. Storage gateway initiator for fabric-backplane enterprise servers
US7990994B1 (en) 2004-02-13 2011-08-02 Habanero Holdings, Inc. Storage gateway provisioning and configuring
US7633955B1 (en) 2004-02-13 2009-12-15 Habanero Holdings, Inc. SCSI transport for fabric-backplane enterprise servers
US7843907B1 (en) 2004-02-13 2010-11-30 Habanero Holdings, Inc. Storage gateway target for fabric-backplane enterprise servers
US8868790B2 (en) 2004-02-13 2014-10-21 Oracle International Corporation Processor-memory module performance acceleration in fabric-backplane enterprise servers
US7486689B1 (en) * 2004-03-29 2009-02-03 Sun Microsystems, Inc. System and method for mapping InfiniBand communications to an external port, with combined buffering of virtual lanes and queue pairs
US8713295B2 (en) 2004-07-12 2014-04-29 Oracle International Corporation Fabric-backplane enterprise servers with pluggable I/O sub-system
US7461236B1 (en) * 2005-03-25 2008-12-02 Tilera Corporation Transferring data in a parallel processing environment
US7546582B2 (en) 2005-03-30 2009-06-09 International Business Machines Corporation Managing dynamic configuration data for producer components in a computer infrastructure
EP2469437A1 (en) * 2005-11-21 2012-06-27 ACIST Medical Systems, Inc. Medical fluid injection system with stored injection parameters
US7577820B1 (en) 2006-04-14 2009-08-18 Tilera Corporation Managing data in a parallel processing environment
US7539845B1 (en) * 2006-04-14 2009-05-26 Tilera Corporation Coupling integrated circuits in a parallel processing environment
US7636835B1 (en) * 2006-04-14 2009-12-22 Tilera Corporation Coupling data in a parallel processing environment
US8244793B2 (en) * 2007-05-14 2012-08-14 International Business Machines Corporation Resetting a HyperTransport link in a blade server
US20080288626A1 (en) * 2007-05-14 2008-11-20 Bandholz Justin P structure for resetting a hypertransport link in a blade server
JP5365840B2 (ja) * 2009-02-09 2013-12-11 日本電気株式会社 マルチプロセッサシステム、及びマルチプロセッサシステムの動作方法
US8359421B2 (en) * 2009-08-06 2013-01-22 Qualcomm Incorporated Partitioning a crossbar interconnect in a multi-channel memory system
JP2012256087A (ja) * 2009-09-10 2012-12-27 Hitachi Ltd データ処理装置及びデータ処理方法
JP5815717B2 (ja) * 2010-10-15 2015-11-17 コーヒレント・ロジックス・インコーポレーテッド マルチプロセッサシステムにおける通信の無効化
US8738860B1 (en) 2010-10-25 2014-05-27 Tilera Corporation Computing in parallel processing environments
JP5754504B2 (ja) 2011-05-23 2015-07-29 富士通株式会社 管理装置、情報処理装置、情報処理システム及びデータ転送方法
CN102232218B (zh) 2011-06-24 2013-04-24 华为技术有限公司 计算机子系统和计算机系统
CN102301363A (zh) * 2011-06-30 2011-12-28 华为技术有限公司 数据处理节点、系统及方法
KR101772037B1 (ko) * 2012-10-22 2017-08-28 인텔 코포레이션 고성능 상호연결 물리 계층
KR101540631B1 (ko) * 2012-12-28 2015-07-30 삼성에스디에스 주식회사 가상 클러스터의 동적 확장 시스템, 방법 및 그 프로그램이 저장된 기록매체
JP6036506B2 (ja) * 2013-04-15 2016-11-30 富士通株式会社 障害影響範囲を特定するためのプログラム及び情報処理装置
US9436637B2 (en) * 2013-05-17 2016-09-06 Advanced Micro Devices, Inc. Network-on-chip architecture for multi-processor SoC designs
US9477277B2 (en) 2013-06-17 2016-10-25 Globalfoundries Inc. Varying power load conditions on systems under test
JP6337606B2 (ja) * 2014-05-15 2018-06-06 富士通株式会社 情報処理装置、経路決定方法及びプログラム
CN104408086B (zh) * 2014-11-07 2018-02-06 北京奇虎科技有限公司 数据全局处理系统和方法
CN105205032B (zh) * 2015-08-25 2018-06-26 华为技术有限公司 Cpu互连装置、系统及其控制方法、控制装置
EP3605350A4 (en) * 2017-05-04 2020-04-29 Huawei Technologies Co., Ltd. INTERCONNECTION SYSTEM, AND INTERCONNECTION CONTROL METHOD AND APPARATUS
GB2569276B (en) * 2017-10-20 2020-10-14 Graphcore Ltd Compiler method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5379440A (en) * 1990-12-20 1995-01-03 Motorola Inc. Parallel processor with array of clustered processing elements having inputs seperate from outputs and outputs limited to a maximum of two per dimension
US5623644A (en) * 1994-08-25 1997-04-22 Intel Corporation Point-to-point phase-tolerant communication
US6065073A (en) * 1998-08-17 2000-05-16 Jato Technologies, Inc. Auto-polling unit for interrupt generation in a network interface device

Family Cites Families (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4470114A (en) * 1982-03-01 1984-09-04 Burroughs Corporation High speed interconnection network for a cluster of processors
US4667287A (en) 1982-10-28 1987-05-19 Tandem Computers Incorporated Multiprocessor multisystem communications network
US4636942A (en) 1983-04-25 1987-01-13 Cray Research, Inc. Computer vector multiprocessing control
US4754398A (en) * 1985-06-28 1988-06-28 Cray Research, Inc. System for multiprocessor communication using local and common semaphore and information registers
US4783687A (en) * 1986-07-14 1988-11-08 Xerox Corporation Segmented filament light source with improved illumination output uniformity
US5191651A (en) 1987-11-03 1993-03-02 International Business Machines Corporation Apparatus and method for making of interconnected processors act like a single node in a multinode communication system
JPH07111713B2 (ja) * 1988-02-24 1995-11-29 富士通株式会社 構成変更制御方式
US6463529B1 (en) * 1989-11-03 2002-10-08 Compaq Computer Corporation, Inc. Processor based system with system wide reset and partial system reset capabilities
US5197130A (en) * 1989-12-29 1993-03-23 Supercomputer Systems Limited Partnership Cluster architecture for a highly parallel scalar/vector multiprocessor system
US5161156A (en) * 1990-02-02 1992-11-03 International Business Machines Corporation Multiprocessing packet switching connection system having provision for error correction and recovery
JP2785998B2 (ja) * 1990-05-18 1998-08-13 富士通株式会社 計算機システム
US5396635A (en) * 1990-06-01 1995-03-07 Vadem Corporation Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system
US5434970A (en) 1991-02-14 1995-07-18 Cray Research, Inc. System for distributed multiprocessor communication
US5170472A (en) 1991-03-28 1992-12-08 International Business Machines Corp. Dynamically changing a system i/o configuration definition
US5561768A (en) * 1992-03-17 1996-10-01 Thinking Machines Corporation System and method for partitioning a massively parallel computer system
CA2094097C (en) * 1992-04-30 2000-05-30 Ray Balogh Multi-equipment routing method and master station for layered protocol communication network system
WO1994003860A1 (en) * 1992-08-07 1994-02-17 Thinking Machines Corporation Massively parallel computer including auxiliary vector processor
US5371852A (en) * 1992-10-14 1994-12-06 International Business Machines Corporation Method and apparatus for making a cluster of computers appear as a single host on a network
DE69323861T2 (de) 1993-01-25 1999-10-07 Bull Hn Information Syst Multiprozessorsystem mit gemeinsamem Speicher
GB9305282D0 (en) * 1993-03-15 1993-05-05 Ucb Sa Enantiomers of 1-(4-chlorophenyl)phenylmethyl)-4-(4-methylphenyl)sulphonyl)piperazine
US5781187A (en) * 1994-05-31 1998-07-14 Advanced Micro Devices, Inc. Interrupt transmission via specialized bus cycle within a symmetrical multiprocessing system
US5692123A (en) * 1994-12-07 1997-11-25 Cray Research, Inc. Maintenance channel for modulator, highly interconnected computer systems
US5829052A (en) * 1994-12-28 1998-10-27 Intel Corporation Method and apparatus for managing memory accesses in a multiple multiprocessor cluster system
CA2170468A1 (en) 1995-02-28 1996-08-29 Noriyuki Ando Multi-processor system with virtually addressable communication registers and controlling method thereof
JPH08239029A (ja) 1995-03-07 1996-09-17 Aisin Seiki Co Ltd 負圧式倍力装置
JP3492461B2 (ja) * 1995-03-27 2004-02-03 日本電気株式会社 クラスタ間データ転送システムおよびデータ転送方法
US6097707A (en) * 1995-05-19 2000-08-01 Hodzic; Migdat I. Adaptive digital wireless communications network apparatus and process
US5682512A (en) * 1995-06-30 1997-10-28 Intel Corporation Use of deferred bus access for address translation in a shared memory clustered computer system
US5819075A (en) * 1995-07-14 1998-10-06 Dolphin Interconnect Solutions, Inc. Multiprocessor interconnection in scalable coherent interface
US5781726A (en) * 1996-01-31 1998-07-14 3Com Corporation Management of polling traffic in connection oriented protocol sessions
US5796605A (en) * 1996-07-02 1998-08-18 Sun Microsystems, Inc. Extended symmetrical multiprocessor address mapping
US5862357A (en) 1996-07-02 1999-01-19 Sun Microsystems, Inc. Hierarchical SMP computer system
US5805839A (en) * 1996-07-02 1998-09-08 Advanced Micro Devices, Inc. Efficient technique for implementing broadcasts on a system of hierarchical buses
US5822531A (en) * 1996-07-22 1998-10-13 International Business Machines Corporation Method and system for dynamically reconfiguring a cluster of computer systems
US5931938A (en) * 1996-12-12 1999-08-03 Sun Microsystems, Inc. Multiprocessor computer having configurable hardware system domains
US6331983B1 (en) * 1997-05-06 2001-12-18 Enterasys Networks, Inc. Multicast switching
US6047332A (en) * 1997-06-30 2000-04-04 Sun Microsystems, Inc. Global file system-based system and method for rendering devices on a cluster globally visible
US6003075A (en) * 1997-07-07 1999-12-14 International Business Machines Corporation Enqueuing a configuration change in a network cluster and restore a prior configuration in a back up storage in reverse sequence ordered
WO1999007077A2 (en) * 1997-07-31 1999-02-11 Stanford Syncom Inc. Means and method for a synchronous network communications system
ATE254778T1 (de) * 1997-09-05 2003-12-15 Sun Microsystems Inc Nachschlagtabelle und verfahren zur datenspeicherung darin
US6259701B1 (en) * 1997-09-11 2001-07-10 At&T Corp. Method and system for a unicast endpoint client to access a multicast internet protocol (IP) session
US6014669A (en) * 1997-10-01 2000-01-11 Sun Microsystems, Inc. Highly-available distributed cluster configuration database
US6085295A (en) * 1997-10-20 2000-07-04 International Business Machines Corporation Method of maintaining data coherency in a computer system having a plurality of interconnected nodes
US6209065B1 (en) * 1997-10-24 2001-03-27 Compaq Computer Corporation Mechanism for optimizing generation of commit-signals in a distributed shared-memory system
US6038651A (en) 1998-03-23 2000-03-14 International Business Machines Corporation SMP clusters with remote resource managers for distributing work to other clusters while reducing bus traffic to a minimum
US6256671B1 (en) * 1998-06-24 2001-07-03 Nortel Networks Limited Method and apparatus for providing network access control using a domain name system
US6141762A (en) 1998-08-03 2000-10-31 Nicol; Christopher J. Power reduction in a multiprocessor digital signal processor based on processor load
US6338122B1 (en) * 1998-12-15 2002-01-08 International Business Machines Corporation Non-uniform memory access (NUMA) data processing system that speculatively forwards a read request to a remote processing node
US6490661B1 (en) * 1998-12-21 2002-12-03 Advanced Micro Devices, Inc. Maintaining cache coherency during a memory read operation in a multiprocessing computer system
US6397255B1 (en) * 1998-12-23 2002-05-28 At&T Corp. Method and apparatus for providing intelligent network services
US6167492A (en) * 1998-12-23 2000-12-26 Advanced Micro Devices, Inc. Circuit and method for maintaining order of memory access requests initiated by devices coupled to a multiprocessor system
US6665304B2 (en) * 1998-12-31 2003-12-16 Hewlett-Packard Development Company, L.P. Method and apparatus for providing an integrated cluster alias address
US6718552B1 (en) * 1999-04-20 2004-04-06 Diva Systems Corporation Network bandwidth optimization by dynamic channel allocation
US6467007B1 (en) * 1999-05-19 2002-10-15 International Business Machines Corporation Processor reset generated via memory access interrupt
US6553439B1 (en) * 1999-08-30 2003-04-22 Intel Corporation Remote configuration access for integrated circuit devices
FI107972B (fi) * 1999-10-11 2001-10-31 Stonesoft Oy Tiedonsiirtomenetelmä
US6349091B1 (en) * 1999-11-12 2002-02-19 Itt Manufacturing Enterprises, Inc. Method and apparatus for controlling communication links between network nodes to reduce communication protocol overhead traffic
US6385174B1 (en) 1999-11-12 2002-05-07 Itt Manufacturing Enterprises, Inc. Method and apparatus for transmission of node link status messages throughout a network with reduced communication protocol overhead traffic
US6745240B1 (en) * 1999-11-15 2004-06-01 Ncr Corporation Method and apparatus for configuring massively parallel systems
US6687751B1 (en) * 2000-01-28 2004-02-03 3Com Corporation Multi-point link aggregation spoofing
US7010617B2 (en) * 2000-05-02 2006-03-07 Sun Microsystems, Inc. Cluster configuration repository
WO2001084313A2 (en) * 2000-05-02 2001-11-08 Sun Microsystems, Inc. Method and system for achieving high availability in a networked computer system
US6785726B1 (en) 2000-05-08 2004-08-31 Citrix Systems, Inc. Method and apparatus for delivering local and remote server events in a similar fashion
US6920519B1 (en) * 2000-05-10 2005-07-19 International Business Machines Corporation System and method for supporting access to multiple I/O hub nodes in a host bridge
US6847993B1 (en) * 2000-05-31 2005-01-25 International Business Machines Corporation Method, system and program products for managing cluster configurations
US20010037435A1 (en) * 2000-05-31 2001-11-01 Van Doren Stephen R. Distributed address mapping and routing table mechanism that supports flexible configuration and partitioning in a modular switch-based, shared-memory multiprocessor computer system
US6690757B1 (en) * 2000-06-20 2004-02-10 Hewlett-Packard Development Company, L.P. High-speed interconnection adapter having automated lane de-skew
US6598130B2 (en) * 2000-07-31 2003-07-22 Hewlett-Packard Development Company, L.P. Technique for referencing distributed shared memory locally rather than remotely
US6772226B1 (en) * 2000-08-15 2004-08-03 Avaya Technology Corp. VPN device clustering using a network flow switch and a different mac address for each VPN device in the cluster
US6977908B2 (en) 2000-08-25 2005-12-20 Hewlett-Packard Development Company, L.P. Method and apparatus for discovering computer systems in a distributed multi-system cluster
ATE492840T1 (de) 2000-10-31 2011-01-15 Millennial Net Inc Vernetztes verarbeitungssystem mit optimiertem leistungswirkungsgrad
US6952766B2 (en) * 2001-03-15 2005-10-04 International Business Machines Corporation Automated node restart in clustered computer system
US6836750B2 (en) * 2001-04-23 2004-12-28 Hewlett-Packard Development Company, L.P. Systems and methods for providing an automated diagnostic audit for cluster computer systems
US20020156888A1 (en) * 2001-04-23 2002-10-24 Lee Man-Ho L. Method and apparatus for detecting and reporting configuration errors in a multi-component switching fabric
US6889253B2 (en) * 2001-04-30 2005-05-03 International Business Machines Corporation Cluster resource action in clustered computer system incorporation prepare operation
US7197536B2 (en) * 2001-04-30 2007-03-27 International Business Machines Corporation Primitive communication mechanism for adjacent nodes in a clustered computer system
US6925492B2 (en) * 2001-06-25 2005-08-02 Sun Microsystems, Inc Method and apparatus for automatic configuration of a cluster of computers
US6760819B2 (en) 2001-06-29 2004-07-06 International Business Machines Corporation Symmetric multiprocessor coherence mechanism
US7043569B1 (en) * 2001-09-07 2006-05-09 Chou Norman C Method and system for configuring an interconnect device
US6820174B2 (en) * 2002-01-18 2004-11-16 International Business Machines Corporation Multi-processor computer system using partition group directories to maintain cache coherence
US7281055B2 (en) * 2002-05-28 2007-10-09 Newisys, Inc. Routing mechanisms in systems having multiple multi-processor clusters
US7251698B2 (en) * 2002-05-28 2007-07-31 Newisys, Inc. Address space management in systems having multiple multi-processor clusters
US7155525B2 (en) * 2002-05-28 2006-12-26 Newisys, Inc. Transaction management in systems having multiple multi-processor clusters
US7577755B2 (en) * 2002-11-19 2009-08-18 Newisys, Inc. Methods and apparatus for distributing system management signals
US7418517B2 (en) * 2003-01-30 2008-08-26 Newisys, Inc. Methods and apparatus for distributing system management signals
US7107382B2 (en) * 2003-04-03 2006-09-12 Emulex Design & Manufacturing Corporation Virtual peripheral component interconnect multiple-function device
US7734741B2 (en) * 2004-12-13 2010-06-08 Intel Corporation Method, system, and apparatus for dynamic reconfiguration of resources

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5379440A (en) * 1990-12-20 1995-01-03 Motorola Inc. Parallel processor with array of clustered processing elements having inputs seperate from outputs and outputs limited to a maximum of two per dimension
US5623644A (en) * 1994-08-25 1997-04-22 Intel Corporation Point-to-point phase-tolerant communication
US6065073A (en) * 1998-08-17 2000-05-16 Jato Technologies, Inc. Auto-polling unit for interrupt generation in a network interface device

Also Published As

Publication number Publication date
WO2005003893A2 (en) 2005-01-13
US20050021699A1 (en) 2005-01-27
CN101076790A (zh) 2007-11-21
EP1639427A2 (en) 2006-03-29
WO2005003893A3 (en) 2007-02-15
US7577727B2 (en) 2009-08-18
EP1639427A4 (en) 2008-11-05
JP2007526540A (ja) 2007-09-13
CA2530291A1 (en) 2005-01-13

Similar Documents

Publication Publication Date Title
CN101076790B (zh) 动态多群集系统重新配置
US8572206B2 (en) Transaction processing using multiple protocol engines
US7155525B2 (en) Transaction management in systems having multiple multi-processor clusters
US7281055B2 (en) Routing mechanisms in systems having multiple multi-processor clusters
US7047372B2 (en) Managing I/O accesses in multiprocessor systems
Alverson et al. The gemini system interconnect
US7251698B2 (en) Address space management in systems having multiple multi-processor clusters
Faanes et al. Cray cascade: a scalable HPC system based on a Dragonfly network
US8185896B2 (en) Method for data processing using a multi-tiered full-graph interconnect architecture
US7921251B2 (en) Globally unique transaction identifiers
US8140731B2 (en) System for data processing using a multi-tiered full-graph interconnect architecture
US7069392B2 (en) Methods and apparatus for extended packet communications between multiprocessor clusters
EP3140748B1 (en) Interconnect systems and methods using hybrid memory cube links
KR20090110291A (ko) 병렬 컴퓨팅시스템을 위한 네트워크 인터페이스 카드
US20040015628A1 (en) Interrupt handling in systems having multiple multi-processor clusters
CN103959255A (zh) 跨多个内存口使用选择性复制降低内存访问延迟的系统及方法
JP2010218364A (ja) 情報処理システム、通信制御装置および方法
Rahman et al. Dynamic communication performance of a TESH network under the nonuniform traffic patterns
Nitzberg et al. The P-Mesh-a commodity-based scalable network architecture for clusters
Alverson et al. Cray Cascade: a Scalable HPC System based on a Dragonfly Network
Rajagopal et al. Evaluation of Real-Time Fiber Communications for parallel collective operations
Ravindran et al. Issues in the Design of Direct Multiprocessor Networks
Parhami Message-Passing MIMD Machines

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: SANMINA-SCI CORPORATION

Free format text: FORMER OWNER: NEWISYS INC.

Effective date: 20120827

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20120827

Address after: American California

Patentee after: New Asia seas Co

Address before: American Texas

Patentee before: Newisys Inc.

ASS Succession or assignment of patent right

Owner name: SANMINA CORP.

Free format text: FORMER OWNER: SANMINA-SCI CORPORATION

Effective date: 20130401

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20130401

Address after: American California

Patentee after: New America Asia Co

Address before: American California

Patentee before: New Asia seas Co

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100929

Termination date: 20160618

CF01 Termination of patent right due to non-payment of annual fee