1. Field of the Invention
The present invention relates to systems that support either or both of online addition and deletion of system resources and/or reconfiguration operations. For example, the present invention facilitates dynamically allocating system resources between multiple Operating Systems (OS) partitions.
2. Description of the Related Art
Current systems are based on the Front Side Bus (FSB) do not permit hot plug of an individual bus component. In contrast, newer versions of bus technology do support addition and deletion of system resources but are limited to coarse granularity, such as, requiring all the processors on the FSB along with the system control chipset.
Subject matter is particularly pointed out and distinctly claimed in the concluding portion of the specification. The claimed subject matter, however, both as to organization and method of operation, together with objects, features, and advantages thereof, may best be understood by reference to the following detailed description when read with the accompanying drawings in which:
A method, apparatus, and system for fine grain dynamic reconfiguration for a high speed point to point network (pTp) is described In the following description, for purposes of explanation, numerous details are set forth in order to provide a thorough understanding of the present invention. However, it will be apparent to one skilled in the art that these specific details are not required in order to practice the present invention.
An area of current technological development relates to reliability, availability, and serviceability (RAS) and dynamic reconfiguration. As previously described, current systems are based on the Front Side Bus (FSB) do not permit hot plug of an individual bus component. In contrast, newer versions of bus technology do support addition and deletion of system resources but are limited to coarse granularity, such as, requiring all the processors on the FSB along with the system control chipset. In contrast, the claimed subject matter facilitates dynamic reconfiguration to include on-line addition, deletion, and replacement of individual modules of to support dynamic partitioning of a system, interconnect (link) reconfiguration, memory RAS to allow migration and mirroring without OS intervention, dynamic memory reinterleaving, CPU and socket migration, and support for global shared memory across partitions. To facilitate the on-line addition or deletion, the firmware is able to quiesce and de-quiesce the domain of interest so that many system resources, such as routing tables and address decoders, can be updated in what essentially appears to be an atomic operation to the software layer above the firmware. The claimed subject matter facilitates operation of dynamic configuration by utilizing Running System and/or a System Service Processor. A Running System has been introduced in an Application Note in 2002, Node Hot-Plug on Itanium® Architecture-Based Systems.
In one embodiment, a running system comprises of the system resources that are already operational when a new element is added in the system/domain or they will remain operational when an element is removed from the system/domain
In one embodiment, a quiesced state is a state where there are no protocol transactions in the full system or a subset thereof except those generated by firmware and/or service system processors.
In one embodiment quiescence is a set of actions done by firmware or system service processors to ensure that the full system or a subset thereof reach quiescence.
In one embodiment, a module may be comprised of CPUs, crossbars, memory and memory controllers, IO Hub, or any combination of the preceding. In this embodiment, the combination of preceding modules may be based on the particular platform configuration.
In one embodiment, the pTp architecture is defined by Intel's Common System Interface (CSI) and supports a layered protocol scheme. Figure one illustrates one example of a cache coherence protocol's abstract view of the underlying network. One example of a cache coherence protocol is described in pending application P18890 filed in 2004.
As previously described, the claimed subject matter facilitates the on-line addition or deletion based at least in part on the firmware to be able to quiesce and de-quiesce the domain of interest so that many system resources, such as routing tables and address decoders, can be updated in what essentially appears to be an atomic operation to the software layer above the firmware. Several examples of quiesce and de-quiesce for IA 32 and Itanium processors with platform dependent configurations or with a System Service Processor are described in the next several paragraphs
In one embodiment, the firmware ensures that a single quiescence operation at most is in progress at any time within a domain. In another embodiment, multiple quiescence operations are permissible in a system with multiple domains. For example, a quiescence operation is initiated either by a particular core (in-band), by the SSP (out-of-band). The SSP can control the quiescence through its non-CSI network or can designate a core, which then follows in the in-band flow.
The SSP could be used instead of the inband flows described earlier The SSP may employ out-of-band buses such as SMBus and JTAG to program the processor and the IOH registers and check their status. The flows then proceed in a manner similar to the previously described flows except that there the functions performed by the “initiating core” are now performed by the SSP. Alternatively, the SSP may send an PMI/SMI to the initiating core and then rely completely on the inband management flows to effect quiescence/dequiescence.
For example,
Initially, the physical and logical set up is performed for the online addition of the processor node. For example, the SSP and/or the RS firmware is aware of the platform topology and the CSI links to which the processor node, OL_A, will be connected. In one embodiment, it sets up the appropriate link controllers on the RS for the following information: {NodeID, AgentType and Crossbar Port number} for each CSI entity present on the node(s) to which the OL_A is being connected. Likewise, it also programs one or more configuration entities on the RS associated with such CSI links, to generate a PMI/SMI interrupt to one or more processor entities on the RS when link initialization is completed.
In one embodiment, SMI is System management interrupt (IA32)
In one embodiment, the arming of PMI/SMI interrupt is not performed where the OL_A node is part of the RS with already active links. Such a situation arises, for example, when a processor entity is logically removed from one partition and added to another.
Subsequently, the processor node is inserted by either physically done or through the SSP that grants permission to include an existing node into a OS partition as the new processor node (OL_A node). If a physical insertion is involved, the insertion triggers a power on reset sequence on the OL_A node and the out-of-band signals on the OL_A are enabled (SMBus, JTAG, etc.) and at this point, the SSP is capable of accessing a Control Status Register (CSR) resources on the OL_A.
In one embodiment, the CSR is defined for each link. For example, it reflects the state of a link port and progress of link initialization. This CSR can be queried by the system management channels or in-band firmware to verify a variety of conditions related to a link's status: link is connected to a remote component, idle flits detected, idle flit acknowledgment detected, link initialization status, enable CSI link initialization and framing sequence, etc. In one embodiment, the CSR is accessible through the configuration space.
If an SSP is present, it sets up the OL_A's link controllers with the triplets of {NodeID, AgentType, and Crossbar Port number} for each CSI entity present on each Field Replacement Unit (FRU) being added to the RS. In the absence of the SSP, the firmware (or microcode) on the OL_A performs this function. The firmware on the OL_A or the configuration agent within the OL_A may read some platform signals or strapping pins to derive their own NodeID information.
The flow proceeds to a next block 204 that enables the CSI links between RS and the node to be added, OL_A. For example, the detailed information for enabling the link will be discussed in the next several paragraphs.
The flow proceeds to a next block 206 that sets the path to firmware. For example, the detailed information for setting the path to firmware will be discussed in the next several paragraphs.
The flow proceeds to a next block 208 that allows the new node to be added, OL_A, to run self test and performs initialization. For example, the detailed information for running self test and initialization will be discussed in the next several paragraphs.
The flow proceeds to a next block 210 that indicates to firmware execution on the RS that the OL_A is ready to join the partition(s) For example, the detailed information will be discussed in the next several paragraphs.
The flow proceeds to a next block 212 that indicates to the OS on the RS that the OL_A nodes are ready to join the partition(s): For example, the detailed information will be discussed in the next several paragraphs.
In another embodiment, the online resource that is added is a memory only node. In this embodiment, the flow is similar to the one depicted in connection with
In another embodiment, the online resource that is added is only an I/O Hub node. In this embodiment, the flow is similar to the one depicted in connection with
A removal of the particular processor node, OL_D, is requested, as depicted by a block 302. For example, in one embodiment, the request is made to the OS through system management channels.
Subsequently, the actions for the Off-line processor(s) of OL_D node are described, as depicted by a block 304. For example, the information follows in the next few paragraphs. Following actions are taken on various processors (actions by the Quiesced Processor (QP) and RS are identified separately).
Subsequently, the removing QP from various participant lists is described, as depicted by a block 306. For example, the information follows in the next few paragraphs.
Subsequently, the generation of a signal that OL_D node can be removed is described, as depicted by a block 308. For example, the information follows in the next few paragraphs.
In the previously described embodiment, the processor node was removed. In another embodiment, the resource that is removed is a memory only node. Further detail is discussed in the next few paragraphs.
In the previously described embodiment, the memory only node was removed. In another embodiment, the resource that is removed is a I/O Hub Node. Further detail is discussed in the next few paragraphs.
The OS takes actions to stop using resources being removed, then calls firmware to modify the platform resources controlled by the firmware. The firmware removes references to resources in CSI structures such as Address decoders, Participant lists, etc., then notifies the OS of completion. These steps are described below:
For embodiment 406, the uni-processor P is coupled to graphics and memory control, depicted as IO+M+F, via a network fabric link that corresponds to a layered protocol scheme. The graphics and memory control is coupled to memory and is capable of receiving and transmitting via PCI Express Links. Likewise, the graphics and memory control is coupled to the ICH. Furthermore, the ICH is coupled to a firmware hub (FWH) via a LPC bus. Also, for a different uni-processor embodiment, the processor would have external network fabric links. The processor may have multiple cores with split or shared caches with each core coupled to a Xbar router and a non-routing global links interface. Thus, the external network fabric links are coupled to the Xbar router and a non-routing global links interface.
Although the claimed subject matter has been described with reference to specific embodiments, this description is not meant to be construed in a limiting sense. Various modifications of the disclosed embodiment, as well as alternative embodiments of the claimed subject matter, will become apparent to persons skilled in the art upon reference to the description of the claimed subject matter. It is contemplated, therefore, that such modifications can be made without departing from the spirit or scope of the claimed subject matter as defined in the appended claims.
This application is a Continuation Application of U.S. application Ser. No. 12/235,968, entitled “Method, System and Apparatus for Dynamic Reconfiguration of Resources”, by Mani Ayyar, et al., filed Sep. 23, 2008, issued as U.S. Pat. No. 8,327,113, which is a Divisional Application of U.S. application Ser. No. 11/011,300, entitled “Method, System and Apparatus for Dynamic Reconfiguration of Resources”, by Mani Ayyar, et al., filed Dec. 13, 2004, issued as U.S. Pat. No. 7,734,741, the entire contents of which are incorporated herein by reference and priority is claimed thereof. This application is related to U.S. patent application Ser. No. 11/011,801, entitled, “Method, System, and Apparatus for System Level Initialization”, by Mani Ayyar, et al., filed Dec. 13, 2004, issued as U.S. Pat. No. 7,738,484.
Number | Name | Date | Kind |
---|---|---|---|
4570220 | Tetrick et al. | Feb 1986 | A |
4646075 | Andrews et al. | Feb 1987 | A |
5007163 | Pope et al. | Apr 1991 | A |
5265207 | Zak et al. | Nov 1993 | A |
5315533 | Stich et al. | May 1994 | A |
5367658 | Spear et al. | Nov 1994 | A |
5406209 | Johnson et al. | Apr 1995 | A |
5422914 | Snyder | Jun 1995 | A |
5560027 | Watson et al. | Sep 1996 | A |
5598348 | Rusu | Jan 1997 | A |
5694617 | Webb et al. | Dec 1997 | A |
5784599 | Elkhoury | Jul 1998 | A |
5815299 | Bayart et al. | Sep 1998 | A |
5845310 | Brooks | Dec 1998 | A |
5852631 | Scott | Dec 1998 | A |
6081868 | Brooks | Jun 2000 | A |
6119255 | Akram | Sep 2000 | A |
6182253 | Lawrence et al. | Jan 2001 | B1 |
6189106 | Anderson | Feb 2001 | B1 |
6275905 | Keller et al. | Aug 2001 | B1 |
6282596 | Bealkowski | Aug 2001 | B1 |
6292215 | Vincent | Sep 2001 | B1 |
6311281 | Pole et al. | Oct 2001 | B1 |
6311298 | Norrie | Oct 2001 | B1 |
6321276 | Forin | Nov 2001 | B1 |
6330586 | Yates et al. | Dec 2001 | B1 |
6418492 | Papa et al. | Jul 2002 | B1 |
6456510 | Patel et al. | Sep 2002 | B1 |
6550020 | Floyd et al. | Apr 2003 | B1 |
6557069 | Drehmel et al. | Apr 2003 | B1 |
6640272 | Hartwell et al. | Oct 2003 | B1 |
6650155 | Nguyen et al. | Nov 2003 | B1 |
6725317 | Bouchier et al. | Apr 2004 | B1 |
6728668 | Kitamorn et al. | Apr 2004 | B1 |
6917999 | Kumar et al. | Jul 2005 | B2 |
6928500 | Ramanujan et al. | Aug 2005 | B1 |
6938179 | Iyer et al. | Aug 2005 | B2 |
6973517 | Golden | Dec 2005 | B1 |
6985502 | Bunton | Jan 2006 | B2 |
6996657 | Chambers et al. | Feb 2006 | B1 |
7000101 | Wu et al. | Feb 2006 | B2 |
7010607 | Bunton | Mar 2006 | B1 |
7020142 | Kodaira | Mar 2006 | B2 |
7051218 | Gulick et al. | May 2006 | B1 |
7065688 | Moyes et al. | Jun 2006 | B1 |
7117311 | Rankin et al. | Oct 2006 | B1 |
7117501 | Rosu et al. | Oct 2006 | B2 |
7146510 | Helms et al. | Dec 2006 | B1 |
7146512 | Rothman et al. | Dec 2006 | B2 |
7174467 | Helms et al. | Feb 2007 | B1 |
7370240 | Dawkins et al. | May 2008 | B2 |
7483974 | Goud et al. | Jan 2009 | B2 |
7484125 | Wei | Jan 2009 | B2 |
7493438 | Kaushik | Feb 2009 | B2 |
7509403 | Lee et al. | Mar 2009 | B1 |
7555671 | Nachimuthu et al. | Jun 2009 | B2 |
7647490 | Wei et al. | Jan 2010 | B2 |
7668925 | Liao et al. | Feb 2010 | B1 |
7668997 | Ramanujan | Feb 2010 | B2 |
7673090 | Kaushik et al. | Mar 2010 | B2 |
7721341 | England | May 2010 | B2 |
7734741 | Ayyar et al. | Jun 2010 | B2 |
7761696 | Bhattacharyya et al. | Jul 2010 | B1 |
7805725 | Schaftlein et al. | Sep 2010 | B2 |
7822900 | Kaushik et al. | Oct 2010 | B2 |
7836238 | Freimuth | Nov 2010 | B2 |
7996572 | Blankenship | Aug 2011 | B2 |
8171121 | Ayyar et al. | May 2012 | B2 |
8214837 | Fish | Jul 2012 | B2 |
20010053694 | Igarashi et al. | Dec 2001 | A1 |
20020059501 | McKinney et al. | May 2002 | A1 |
20020095610 | Nunomura | Jul 2002 | A1 |
20020138225 | Wong et al. | Sep 2002 | A1 |
20020144043 | Bennett | Oct 2002 | A1 |
20030005200 | Kumar | Jan 2003 | A1 |
20030023771 | Erickson et al. | Jan 2003 | A1 |
20030037224 | Oehler et al. | Feb 2003 | A1 |
20030058872 | Berggreen et al. | Mar 2003 | A1 |
20030065752 | Kaushik et al. | Apr 2003 | A1 |
20030115513 | Harriman et al. | Jun 2003 | A1 |
20030120913 | Wu et al. | Jun 2003 | A1 |
20030163753 | Lu et al. | Aug 2003 | A1 |
20030167367 | Kaushik et al. | Sep 2003 | A1 |
20040047283 | Bonwick et al. | Mar 2004 | A1 |
20040088418 | Iyer et al. | May 2004 | A1 |
20040120302 | Sebire et al. | Jun 2004 | A1 |
20040133756 | Shaw et al. | Jul 2004 | A1 |
20040153888 | Kadoi | Aug 2004 | A1 |
20040177245 | Murphy | Sep 2004 | A1 |
20040177342 | Worley, Jr. | Sep 2004 | A1 |
20040193706 | Willoughby et al. | Sep 2004 | A1 |
20040193916 | Kamada et al. | Sep 2004 | A1 |
20040196865 | Natarajan et al. | Oct 2004 | A1 |
20040215911 | Ouren et al. | Oct 2004 | A1 |
20040236798 | Srinivasan et al. | Nov 2004 | A1 |
20040260910 | Watt et al. | Dec 2004 | A1 |
20040267894 | Zaharias | Dec 2004 | A1 |
20050022059 | Wei | Jan 2005 | A1 |
20050044219 | Lewis et al. | Feb 2005 | A1 |
20050144476 | England | Jun 2005 | A1 |
20050152361 | Kim et al. | Jul 2005 | A1 |
20050235166 | England et al. | Oct 2005 | A1 |
20050259696 | Steinman et al. | Nov 2005 | A1 |
20050278574 | Kitamorn et al. | Dec 2005 | A1 |
20060018280 | Kumar et al. | Jan 2006 | A1 |
20060041696 | Cherukuri et al. | Feb 2006 | A1 |
20060161704 | Nystad et al. | Jul 2006 | A1 |
20060184480 | Ayyar et al. | Aug 2006 | A1 |
20060209722 | Takeo et al. | Sep 2006 | A1 |
20070094491 | Teo et al. | Apr 2007 | A1 |
20080307082 | Cai et al. | Dec 2008 | A1 |
20090100203 | Wei | Apr 2009 | A1 |
20090106471 | Kaushik et al. | Apr 2009 | A1 |
20100177972 | Donoho | Jul 2010 | A1 |
20100188972 | Knapp | Jul 2010 | A1 |
20100217949 | Schopp et al. | Aug 2010 | A1 |
20130298136 | Dakemoto et al. | Nov 2013 | A1 |
Number | Date | Country |
---|---|---|
1107266 | Aug 1997 | CN |
1525353 | Sep 2004 | CN |
1529465 | Sep 2004 | CN |
7182225 | Jul 1995 | JP |
20040073099 | Aug 2004 | KR |
WO-02056547 | Jul 2002 | WO |
WO-03054713 | Jul 2003 | WO |
Entry |
---|
“Fourth office action for Chinese Patent Application 200710188727.7”, Mailed Apr. 23, 2012, 10 pages. |
“Fifth office action for Chinese Patent Application 20071018872.2”, Mailed 9, 2012, 7 pages. |
“Fourth office action for Chinese Patent Application 200710188726.2”, Mailed Dec. 16, 2011, 6 pages. |
“Notice of Allowance for U.S. Appl. No. 12/235,968”, Mailing Date Aug. 2, 2012, 7 pages. |
Non-Final Office Action of U.S. Appl. No. 12/348,723, Mailing Date Aug. 15, 2012. 37 pages. |
“First Office Action for Chinese Patent Application 200710188725.8”, Mailed Mar. 10, 2010, 7 pages. |
“First Office Action for Chinese Patent Application No. 200510119157.7,”, Mailing Date Dec. 14, 2007, 15 pages. |
“PCI Express, the mainstream of new generation I/O technology”, 1994-2006 China Academic Journal Electronic Publishing House, 4 pages. |
“Third Office Action of Chinese Patent Application No. 200710188727.7”, Mailed Jul. 13, 2011, 6 pages. |
Office Action for U.S. Appl. No. 12/236,222 mailed May 12, 2011, 18 pgs. |
Final Office Action for U.S. Appl. No. 12/236,047 mailed May 10, 2011, 9 pgs. |
Second Office Action for Chinese Patent Application No. 200810090191.9 mailed Jul. 4, 2011, 9 pgs. |
Third Office Action for Chinese Patent Patent Application No. 200710188726.2 mailed Apr. 3, 2011, 10 pgs. |
Notice of Allowance from U.S. Appl. No. 11/011,801 mailed Apr. 27, 2010, 4 pgs. |
Final Office Action from U.S. Appl. No. 12/348,723 mailed Jan. 12, 2011, 27 pgs. |
Office Action for U.S. Appl. No. 12/236,047 mailed Jan. 3, 2011, 21 pgs. |
Second Office Action for Chinese Patent Application No. 200710188725.8 mailed Oct. 12, 2010, 11 pgs. |
Second Office Action for Chinese Patent Application No. 200710188726.2 mailed Nov. 9, 2010, 5 pgs. |
First Office Action for Chinese Patent Application No. 200710188726.2 mailed Apr. 15, 2010, 4 pgs. |
Office Action from U.S. Appl. No. 12/348,723 mailed Sep. 16, 2010, 21 pgs. |
Office Action for U.S. Appl. No. 11/011,300 mailed Oct. 7, 2008, 11 pgs. |
Office Action for Chinese Patent Application No. 200510119157.7 mailed Dec. 14, 2007, 49 pgs. |
Office Action for Chinese Patent Application No. 200510119157.7 mailed May 30, 2008, 11 pgs. |
Office Action for Chinese Patent Application No. 200510119157.7 mailed Jul. 13, 2007, 6 pgs. |
Final Office Action from U.S. Appl. No. 11/011,300 mailed Jan. 23, 2009, 11 pgs. |
Final Office Action from U.S. Appl. No. 11/011,801 mailed May 5, 2009, 10 pgs. |
Office Action from U.S. Appl. No. 11/011,300 mailed Jun. 18, 2009, 13 pgs. |
Office Action for Chinese Patent Application No. 200510107388.6 mailed Jun. 19, 2009, 7 pgs. |
Office Action from U.S. Appl. No. 11/011,801 mailed Aug. 3, 2009, 10 pgs. |
First Office Action for Chinese Patent Application No. 200810090191.9 mailed Sep. 18, 2009, 6 pgs. |
Office Action for Chinese Patent Application No. 200710188727.7 mailed Oct. 16, 2009, 1 pg. |
Office Action for Chinese Patent Application No. 200710188727.7 mailed May 6, 2010, 1 pgs. |
Office Action for Chinese Patent Application No. 200710188725.8 mailed Jan. 22, 2010, 7 pgs. |
Notice of Allowance for U.S. Appl. No. 11/011,300 mailed Jan. 25, 2010, 9 pgs. |
Office Action for Chinese Patent Application No. 200510107388.6 mailed Nov. 23, 2007, 16 pgs. |
Number | Date | Country | |
---|---|---|---|
20130304957 A1 | Nov 2013 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 11011300 | Dec 2004 | US |
Child | 12235968 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12235968 | Sep 0208 | US |
Child | 13668053 | US |