KR20030077034A - 동적 재분할을 통해 수퍼컴퓨터에 장애 허용성을 제공하는방법 - Google Patents
동적 재분할을 통해 수퍼컴퓨터에 장애 허용성을 제공하는방법 Download PDFInfo
- Publication number
- KR20030077034A KR20030077034A KR10-2003-7010921A KR20037010921A KR20030077034A KR 20030077034 A KR20030077034 A KR 20030077034A KR 20037010921 A KR20037010921 A KR 20037010921A KR 20030077034 A KR20030077034 A KR 20030077034A
- Authority
- KR
- South Korea
- Prior art keywords
- computer system
- tree
- global
- link
- torus
- Prior art date
Links
- 238000000034 method Methods 0.000 claims description 9
- 238000005192 partition Methods 0.000 claims description 9
- 230000008859 change Effects 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 2
- 240000007182 Ochroma pyramidale Species 0.000 description 8
- 230000008901 benefit Effects 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004888 barrier function Effects 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Classifications
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F04—POSITIVE - DISPLACEMENT MACHINES FOR LIQUIDS; PUMPS FOR LIQUIDS OR ELASTIC FLUIDS
- F04D—NON-POSITIVE-DISPLACEMENT PUMPS
- F04D25/00—Pumping installations or systems
- F04D25/16—Combinations of two or more pumps ; Producing two or more separate gas flows
- F04D25/166—Combinations of two or more pumps ; Producing two or more separate gas flows using fans
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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
-
- H—ELECTRICITY
- H05—ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
- H05K—PRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
- H05K7/00—Constructional details common to different types of electric apparatus
- H05K7/20—Modifications to facilitate cooling, ventilating, or heating
- H05K7/20709—Modifications to facilitate cooling, ventilating, or heating for server racks or cabinets; for data centers, e.g. 19-inch computer racks
- H05K7/20836—Thermal management, e.g. server temperature control
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F04—POSITIVE - DISPLACEMENT MACHINES FOR LIQUIDS; PUMPS FOR LIQUIDS OR ELASTIC FLUIDS
- F04D—NON-POSITIVE-DISPLACEMENT PUMPS
- F04D27/00—Control, e.g. regulation, of pumps, pumping installations or pumping systems specially adapted for elastic fluids
- F04D27/004—Control, e.g. regulation, of pumps, pumping installations or pumping systems specially adapted for elastic fluids by varying driving speed
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2041—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2051—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant in regular structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17356—Indirect interconnection networks
- G06F15/17368—Indirect interconnection networks non hierarchical topologies
- G06F15/17381—Two dimensional, e.g. mesh, torus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/141—Discrete Fourier transforms
- G06F17/142—Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/003—Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
- G09G5/006—Details of the interface to the display terminal
- G09G5/008—Clock recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/02—Speed or phase control by the received code signals, the signals containing no special synchronisation information
- H04L7/033—Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
- H04L7/0337—Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals
- H04L7/0338—Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals the correction of the phase error being performed by a feed forward loop
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F24—HEATING; RANGES; VENTILATING
- F24F—AIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
- F24F11/00—Control or safety arrangements
- F24F11/70—Control systems characterised by their outputs; Constructional details thereof
- F24F11/72—Control systems characterised by their outputs; Constructional details thereof for controlling the supply of treated air, e.g. its pressure
- F24F11/74—Control systems characterised by their outputs; Constructional details thereof for controlling the supply of treated air, e.g. its pressure for controlling air flow rate or air velocity
- F24F11/77—Control systems characterised by their outputs; Constructional details thereof for controlling the supply of treated air, e.g. its pressure for controlling air flow rate or air velocity by controlling the speed of ventilators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2028—Failover techniques eliminating a faulty processor or activating a spare
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02B—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
- Y02B30/00—Energy efficient heating, ventilation or air conditioning [HVAC]
- Y02B30/70—Efficient control or regulation technologies, e.g. for control of refrigerant flow, motor or heating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Pure & Applied Mathematics (AREA)
- Mechanical Engineering (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Data Mining & Analysis (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Algebra (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Thermal Sciences (AREA)
- Discrete Mathematics (AREA)
- Databases & Information Systems (AREA)
- Hardware Redundancy (AREA)
- Multi Processors (AREA)
Abstract
본 발명에 따라, 멀티프로세서 병렬 컴퓨터는, 여분의 리던던트 대기 프로세서(redundant standby processor) 그룹을 제공하고, 이들 여분의 프로세서 그룹이, 하드웨어 고장을 겪는 임의의 그룹과 스와핑될 수 있도록 시스템을 설계함으로써, 하드웨어 고장을 견디도록 구성된다. 상기 스와핑(swapping)은 소프트웨어 제어 하에 있을 수 있어, 전체 컴퓨터가 하드웨어 고장을 견딜 수 있도록 하지만, 상기 대기 프로세서에서의 스와핑 후에, 원래의 완전히 기능하는 시스템으로서 소프트웨어에 여전히 나타나도록 해준다.
Description
많은 중요한 계산(computation)은 고도 병렬 컴퓨터 시스템(massively parallel computer systems)에 의해 수행될 수 있다. 이러한 시스템은 동일한 많은 컴퓨터 노드로 구성되는데, 각 노드는 통상 하나 이상의 CPU, 메모리, 노드를 다른 노드에 접속하는 하나 이상의 네트워크 인터페이스로 이루어진다.
고도 병렬 수퍼컴퓨터라는 명칭으로 2001년 2월 24일에 출원된 관련 미국 가출원 번호 제60/271,124호에 개시된 컴퓨터는, 처리율이 높은 비용 효율적인 가변 컴퓨팅 시스템을 만들기 위하여 SOC(system-on-a-chip) 기술을 적용하고 있다. SOC 기술은, 집적된 1차 캐쉬(first-level caches)가 마련된 CPU 코어를 포함하는 내장형 구성품의 라이브러리를 이용하여 단일 칩에 전체 멀티프로세서 노드를 설치할 수 있게 해주었다. 이러한 패키징은 노드의 구성품 카운트를 크게 감소시켜, 신뢰성 있는 대형의 머신을 만들 수 있게 해준다.
본 발명은 함께 계류 중인 공유의 미국 가특허 출원 번호 제60/271,124호(출원일 : 2001. 2. 24) "MASSIVELY PARALLEL SUPERCOMPUTER"의 이익을 청구하며, 상기 가출원의 전체 개시 내용은 참조로서 본 명세서에 그 전체가 명시적으로 통합된다. 본 특허 출원은 또한 다음의 함께 계류 중인 공유의 미국 특허 출원들(동일자 출원임)과 관련되며, 다음 각 출원들의 전체 개시 내용은 참조로서 본 명세서에 그 전체가 명시적으로 통합된다; 미국 특허 출원 YOR920020027US1, YOR920020044US1 (15270) "Class Networking Routing", 미국 특허 출원 YOR920020028US1 (15271) "A Global Tree Network for Computing Structures", 미국 특허 출원 YOR920020029US1 (15272) "Global Interrupt and Barrier Networks", 미국 특허 출원 YOR920020030US1 (15273) "Optimized Scalable Network Switch", 미국 특허 출원 YOR920020031US1, YOR920020032US1 (15258) "Arithmetic Functions in Torus and Tree Networks", 미국 특허 출원 YOR920020033US1, YOR920020034US1 (15259) "Data Capture Technique for High Speed Signaling", 미국 특허 출원 YOR920020035US1 (15260) "Managing Coherence Via Put/Get Windows", 미국 특허 출원 YOR920020036US1, YOR920020037US1 (15261) "Low Latency Memory Access AndSynchronization", 미국 특허 출원 YOR920020038US1 (15276) "Twin-Tailed Fail-Over for Fileservers Maintaining Full Performance in the Presence of Failure", 미국 특허 출원 YOR920020039US1 (15277) "Fault Isolation Through No-Overhead Link Level Checksums", 미국 특허 출원 YOR920020040US1 (15278) "Ethernet Addressing Via Physical Location for Massively Parallel Systems", 미국 특허 출원 YOR920020041US1 (15274) "Fault Tolerance in a Supercomputer Through Dynamic Repartitioning", 미국 특허 출원 YOR920020042US1 (15279) "Checkpointing Filesystem", 미국 특허 출원 YOR920020043US1 (15262) "Efficient Implementation of Multidimensional Fast Fourier Transform on a Distributed-Memory Parallel Multi-Node Computer", 미국 특허 출원 YOR9-20010211US2 (15275) "A Novel Massively Parallel Supercomputer", 미국 특허 출원 YOR920020045US1 (15263) "Smart Fan Modules and System".
본 발명은 전체적으로, 소프트웨어 제어식으로 동적 재분할하여(repartitioning), 병렬 컴퓨터의 상호 연결 네트워크에 장애 허용성(fault tolerance)를 제공하는 것에 관한 것이다.
도 1은 병렬 컴퓨터의 매우 단순화한 8개의 노드 섹션 및 이들 8개 노드 사이의 토러스(torus) 링크를 보여준다. 이 도면은 각 노드가 실제 + 및 - x,y,z 방향으로 6개의 토러스 링크를 갖고 있고, 링크는 가장 큰 수로 표시한 노드로부터 가장 낮은 수로 표시한 노드까지, 각 로직 방향(x,y 또는 z)에서 래핑(wrap)하여 시스템의 모든 노드에 대하여 6 방향에서 6개의 토러스 링크를 유지하도록 하는, 완전한 노드 어레이의 토러스 링크를 부분적으로 보여준다.
도 2는 고도 병렬 수퍼컴퓨터의 글로벌 결합 트리(global combining tree)를 매우 단순화하여 나타낸 도면이며, 컴퓨트 노드의 전체 파티션에 걸쳐 모든 노드를 연결하는 완전한 글로벌 결합 트리를 부분적으로 보여준다.
도 3은 재분할을 제어하는 링크 칩의 동작을 보여준다.
도 4는 고도 병렬 수퍼컴퓨터의 평면 계획(floor plan)을 개념적으로 보여주며, 8개의 통로로 분리되고 8개의 컴퓨트 랙으로 이루어진 9개의 열을 도시하고 있으며, 각 열에서 각각의 랙에는 2개의 미드플레인이 들어 있고, 각 미드플레인에는 8 ×8 ×8 컴퓨트 노드가 들어 있다.
도 5는 토러스 신호를 인접 미드플레인에 연결되는 케이블을 통한 링크 카드 내외로 라우팅하고, 링크 카드를 통해 라우팅하며, 현재의 미드플레인 상의 토러스 내외로 라우팅하는 것을 보여준다. 링크 ASIC은 선택적으로, 현재 미드플레인 상에 있는 3차원 8 ×8 ×8 토러스를 더 큰 머신의 토러스에 연결한다.
도 6은 글로벌 결합 트리 네트워크의 신호인 글로벌 트리 신호를 인접 미드플레인에 접속되는 케이블을 통해 링크 카드의 내외로 라우팅하고, 링크 카드를 통해 라우팅하며, 다음에 미드플레인 컴퓨트 ASIC 내외로 라우팅하는 것을 보여준다. 상기 링크 ASIC 및 탑 레벨 컴퓨트 ASIC은 현재 미드플레인 상의 트리가 어떻게 더 큰 시스템 내의 글로벌 결합 트리에 접속되는지를 함께 결정한다.
도 7은 글로벌 인터럽트 신호 네트워크의 신호인 인터럽트 신호를 인접 미드플레인을 접속하는 케이블을 통해 링크 카드 내외로 라우팅하고, 링크 카드 ASIC 및 FPGA를 통해 라우팅하며, 다음에 미드플레인 내외로 라우팅하는 것을 보여준다.
본 발명은 동적 재분할(dynamic repartitioning)을 통해 수퍼컴퓨터에 장애 허용성(fault tolerance)을 제공한다. 멀티프로세서 병렬 컴퓨터는, 여분의 리던던트 대기 프로세서(redundant standby processor) 그룹을 제공하고, 이들 여분의 프로세서 그룹이, 하드웨어 고장을 겪는 임의의 그룹과 스와핑될 수 있도록 시스템을 설계함으로써, 하드웨어 고장을 견디도록 구성된다. 상기 스와핑(swapping)은 소프트웨어 제어 하에 있을 수 있어, 전체 컴퓨터가 하드웨어 고장을 견딜 수 있도록 하지만, 상기 대기 프로세서에서의 스와핑 후에, 원래의 완전히 기능하는 시스템으로서 소프트웨어에 여전히 나타나도록 해준다.
당업자라면, 동적 재분할을 통해 수퍼컴퓨터에 장애 허용성을 제공하기 위한 본 발명의 전술한 목적 및 이점은 동일한 구성 요소는 몇몇 도면에 걸쳐 동일한 참조 부호로 나타낸 첨부 도면과 함께 이하의 몇몇 실시 형태에 대한 상세한 설명을 참조로 하여 보다 쉽게 이해할 수 있을 것이다.
미국 가출원 번호 제60/271,124호에 개시된 고도 병렬 수퍼컴퓨터는 몇몇 별도의 통신 네트워크에 의해 연결된 (x,y,z) (x = 64, y = 32, z = 32) 컴퓨트 노드를 구비하고 있는 고도 병렬 컴퓨터를 설명하고 있다. 이들 네트워크 중 첫 번째 것은 3차원(3D) 토러스로서, 이 토러스에서 각 컴퓨트 노드는 + 및 - x,y,z 방향으로 6개의 링크에 의해, 논리적으로 인접한 6개의 최인접 컴퓨트 노드에 연결되고, 각 컴퓨트 노드는 6개의 양방향 토러스 포트를 갖고 있다.
상기 고도 병렬 수퍼컴퓨터는 64 ×32 ×32 컴퓨트 노드를 갖고 있으며, 각 컴퓨트 노드는 2개의 프로세서가 마련된 ASIC을 포함하며, 프로세서 중 하나는 고도 병렬 수퍼컴퓨터의 일부로서 프로세싱을 수행하며, 제2 프로세서는 메시지 전달 작업(message passing operation)을 수행한다.
도 4는 고도 병렬 수퍼컴퓨터의 평면 계획을 개념적으로 보여주며, 서비스를 용이하게 하기 위하여, 8개의 통로로 분리되고 복수 개의 컴퓨트 랙(computeracks)으로 이루어진 9개의 열을 도시하고 있다. 각 열에 있는 각각의 랙은 대략 냉장고 크기이고, 2개의 미드플레인을 갖고 있다. 각각의 미드플레인은 기본 구성 블록(basic building block)이고, 8 ×8 ×8 컴퓨트 노드를 담고 있으며, 각각의 컴퓨트 노드는 전술한 바와 같이 멀티프로세서를 포함한다.
물리적 머신 아키텍처는 3D 토러스에 가장 밀접하게 결합되어 있다. 이것은 엣지에서 "래핑된" 단순 3차원 최인접 상호 접속이다. 6개의 최인접 토러스 모두는 컴퓨트 노드 ASIC의 상이한 랙 사이에 존재하는 것과 같은 타임 오프 플라이트(time-of-flight) 차이를 제외하곤 등간격으로 떨어져 있어, 코드를 쉽게 쓰고 최적화할 수 있게 해준다. 따라서, 각각의 노드는 6개의 독립적인 양방향의 최인접 링크를 지원한다.
도 1은 병렬 수퍼컴퓨터의 토러스의 8개의 노드 및 이들 노드 사이의 링크를 매우 단순화하여 보여주며, 각 노드가 실제 + 및 - x,y,z 방향으로 6개의 토러스 링크를 갖고 있는 완전한 노드 어레이를 부분적으로 나타내고 있다. 상기 링크는 가장 큰 수로 표시한 노드로부터 가장 낮은 수로 표시한 노드까지, 각 로직 방향(x,y 또는 z)에서 래핑하여 시스템의 모든 노드에 대하여 6 방향에서 6개의 토러스 링크를 유지한다. 도 1은 또한, 도 4의 x,y,z 좌표계와 일치하는 x,y,z 좌표계를 개략적으로 보여준다. 고도 병렬 수퍼컴퓨터는 미드플레인으로 플러그되는 링크 회로 카드 및 컴퓨트 회로 카드를 갖고 있다. 상기 회로 카드는 2 ×2 ×2 서브-큐브로 와이어링 되어 있고, 미드플레인은 1개의 랙당 2개가 8 ×8 ×8 서브 큐브로서 와이어링 되어 있다. 연산형 64k 머신은, 장애 구성품을 보상하기 위해리던던시를 제공하도록 그 머신이 72 ×32 ×32 토러스로서 물리적으로 구현될 수 있지만, 64 ×32 ×32 토러스인데, 추가의 8 ×32 ×32 노드가 리던던시 목적을 위해 제공되어 여분의 리던던트 대기 프로세서 그룹을 제공한다.
6개의 최인접 노드에 대한 각 노드의 6개의 토러스 링크 외에, 상기 고도 병렬 수퍼컴퓨터는 2개의 완전히 별개의 다른 통신 링크 네트워크를 포함한다. 제2 통신 링크 네트워크는 도 2 및 도 6에 나타낸 바와 같이, 링크의 글로벌 결합 트리이다. 제3 통신 링크 네트워크는 도 7에 도시한 것과 같이 글로벌 인터럽트 신호의 셋트이다. 링크의 결합 트리 및 글로벌 인터럽트 신호는 트리 구조면에서 서로 유사하고, 상기 머신의 전체 파티션(64 ×32 ×32 컴퓨트 노드)에 걸쳐 통신을 제공하는데, 이들 둘에 대해서는 후술한다.
도 2는 전체 머신에 걸쳐 연장되는 고도 병렬 수퍼컴퓨터의 글로벌 결합 트리를 매우 단순화한 도면으로서, 데이터는 임의의 노드로부터 다른 모든 노드로 보내질 수 있으며(브로드캐스트), 또는 노드들의 서브셋으로 보내질 수 있다. 글로벌 합계, 최소 및 최대 역시 계산될 수 있다. 메시지 전달은 글로벌 결합 트리 상에서 지원되고, 각 컴퓨트 노드 내의 제2 프로세서에 의해 제어되어, 올 투 올 통신(all-to-all communications)과 같은 집중 작업이 컴퓨트 노드와는 독립적으로 처리될 수 있도록 해준다.
본 발명에 따라, 멀티프로세서 병렬 컴퓨터는, 여분의 리던던트 대기 프로세서 그룹을 제공함으로써, 그리고 이들 여분의 프로세서 그룹이 하드웨어 고장을 겪는 임의의 그룹과 스와핑될 수 있도록 시스템을 설계함으로써, 하드웨어 고장을 견디도록 만들어진다. 이러한 스와핑은 소프트웨어 제어하에 있을 수 있어, 전체 컴퓨터가 하드웨어 고장을 견딜 수 있도록 하지만, 상기 대기 프로세서에서의 스와핑 후에, 여전히 원래의 완전히 기능하는 시스템으로서 소프트웨어에 나타날 수 있도록 한다.
시스템 재분할
본 명세서에서 설명하는 고도 병렬 수퍼컴퓨터에서, 3개의 주요 별개의 상호접속 네트워크는 이러한 동적 재분할, 즉 3차원 토러스, 글로벌 결합 트리 및 글로벌 인터럽트의 셋트로부터 이득을 얻을 수 있다. 상기 고도 병렬 수퍼컴퓨터는 미드플레인마다 512 개의 멀티프로세서(8 ×8 ×8)의 그룹으로 조직되는데, 링크 칩이 미드플레인 사이에서 케이블에 걸쳐 신호를 조종한다. 링크 칩(링크 회로 카드마다 6개의 칩)은 상기 시스템의 소프트웨어 재구성을 가능하게 하는 주요 방법이다.
상기 고도 병렬 수퍼컴퓨터는 소프트웨어 제어에 의해 논리적으로 재분할될 수 있다. 이는 하나의 시스템으로 함께 물리적으로 케이블링된 큰 랙 그룹(도 4에 도시한 것과 같은)이 복수의 서브 시스템으로 논리적으로 나뉘어질 수 있도록 해준다. 이들 논리적으로 분리된 각각의 서브 시스템은 동시에 상이한 코드를 실행할 수 있거나, 몇몇 분리된 시스템들은 서비스에 놓여지고 다른 것들은 계산한다. 따라서, 논리적 재분할은 코드 개발 및 시스템 유지 보수를 용이하게 한다.
도 3은 재분할을 제어하는 링크 칩의 동작을 나타내며, 후속 섹션이 그 동작을 설명한다. 후속되는 섹션은 가능한 서브분할(subdivision)의 종류를 상세하게설명한다.
링크 칩
상기 고도 병렬 수퍼컴퓨터의 토러스, 글로벌 결합 트리 및 글로벌 인터럽트 신호는 상이한 미드플레인 사이에서 트래킹할 때 링크 칩을 통과한다. 이 칩은 2개의 기능을 수행한다. 먼저, 그 칩은 미드플레인 사이에서 케이블에 걸쳐 신호를 재구동하여, 상이한 미드플레인에 있는 컴퓨트 ASIC 사이의 긴 손실 트레이스-케이블-트레이스 접속 중간에서 고속 신호 형태 및 진폭을 개선한다. 둘째, 상기 링크 칩은 그 상이한 포트 사이에서 신호를 방향 변경(redirection)할 수 있다. 이러한 방향 변경 기능은 상기 고도 병렬 수퍼컴퓨터가 복수 개의 논리적으로 별개의 시스템으로 동적으로 재분할될 수 있도록 하는 것이다.
상기 링크 칩은 시스템 재분할을 위해 2가지 종류의 토러스 신호 방향 변경을 수행하는데, 이는 레귤러 방향 변경 및 스플리트 방향 변경이라 부른다.
레귤러 방향 변경(regular redirection)
레귤러 방향 변경은 큰 컴퓨트 시스템의 (도 4에 도시한 것과 같은 x,y,z 축 중 하나를 따라) 하나의 논리 방향으로부터 하나의 미드플레인을 제거한다. 레귤러 방향 변경은 도 3의 모드 1 및 모드 2에 나타내었다. 이는 링크 칩의 포트 C,F,A,B를 포함한다. 포트 C 및 F는 도 5의 상단에 도시한 바와 같이, 특정의 토러스 논리 방향(x,y 또는 z)에서 더 높은 또는 더 낮은 순서의 미드플레인과 현재의 미드플레인 사이에서 케이블에 의해 플러스 방향 및 마이너스 방향으로 부착된다. 이들 케이블 연결은 로지컬 X 케이블(40), 로지컬 Y 케이블(42) 및 로지컬 Z케이블(44)로 표시한 도 4에서 화살표로 나타내었다. 포트 A 및 B는 미드플레인 토러스 루프에 접속되는데, 이 루프는 도 3에 도시한 바와 같이, 그리고 도 5에서 미드플레인 X 토러스(51), 미드플레인 Y 토러스(52) 및 미드플레인(Z) 토러스(53)로 나타낸 바와 같이, 일련의 8개의 컴퓨트 프로세서를 통해 미드플레인 내에서 순환한다.
모드 1에서 동작할 때, 상기 링크 칩은 이전의 미드플레인으로부터, 포트 C를 통해, 미드플레인 토러스 루프로 나타낸 바와 같이, 현재의 미드플레인을 통해, 포트 F를 통해 다음의 미드플레인으로 신호를 라우팅한다. 이와 같이 하여, 현재의 미드플레인을 더 큰 컴퓨트 시스템의 일부로 만든다.
모드 2에서 동작할 때, 이전 미드플레인으로부터의 케이블 신호는 포트 C를 통해 들어가고, 포트 F를 통해 다음의 미드플레인으로 직접 전달되어, 상기 더 큰 컴퓨트 시스템으로부터 현재의 미드플레인을 제거한다. 또한, 모드 2에서, 현재의 미드플레인 상의 토러스 신호는 포트 A 및 B를 통해 미드플레인에 연결되고 그 평면 내에서 루핑하여, 더 작은 컴퓨트 시스템을 만들어 낸다.
스플리트 방향 변경(split redirection)
스플리트 방향 변경은 상기 머신의 큰 64 ×32 ×32 노드 섹션을 2개의 동일한 32 ×32 ×32 절반부 또는 4개의 16 ×32 ×32 4분의 1 부분으로 분할할 수 있게 해준다. 링크 칩 내에서 구현됨에 따라, 스플리트 방향 변경은 아주 다양하게 시스템을 분할할 수 있게 한다. 그러나, 긴 케이블에 대한 비용 및 신호 무결성(integrity) 문제 때문에, 스플리트 방향 변경은, 2개의 동일한 절반부 또는4개의 4분의 1 부분들로 큰 시스템을 분할할 수 있게 하는 데에 필요한 수의 랙 열(도 4)에만 그리고 로지컬 X 방향으로 단지 물리적으로 케이블링되어 있다. 스플리트 방향 변경은 도 1의 모드 3 및 모드 4에 나타내었다. 8개의 모드(3 내지 10)가 스플리트 방향 변경을 달성하는 데에 필요하지만, 도시의 목적을 위하여 단지 2개의 모드(3 및 4) 만을 도 1에 나타내었고, 나머지 모드는 유사한 방식으로 동작한다. 스플리트 방향 변경시, 링크 칩은 인접 미드플레인으로의 플러스 또는 마이너스 케이블 방향으로 간주하는 케이블 포트를 재정의한다(redefine). 링크 칩은 플러스 방향 포트를 레귤러 포트 C로부터 스플리트 포트 D 또는 E로 재정의하거나, 마이너스 방향을 레귤러 포트 F로부터 스플리트 포트 D 또는 E 또는 양자로 재정의한다. 레귤러 케이블은 도 4에서 화살표가 있는 얇은 선(로지컬 x 케이블(40), 로지컬 y 케이블(42), 로지컬 z 케이블(44))으로 나타내었고, 스플리트 케이블(46)은 화살표가 없는 두꺼운 선(로지컬 x 케이블의 중심 부근에 있다)으로 나타내었다. 로지컬 x 케이블은 x 방향을 따라 연장되고, 유사하게 로지컬 y 케이블은 y 방향으로, 로지컬 z 케이블은 z 방향으로 연장된다.
도 4는 로지컬 X 케이블이 어떻게 랙 사이에서 연결되는 지를 보여준다. 열번호는 좌측에 숫자 0 내지 8로 표시하였다. 로지컬 X 케이블은 종종 격열로 연결된다는 것에 유의하여야 하는데, 열(0-2, 1-3, 2-4, 3-5) 사이에 케이블이 있으며, 하나의 케이블(0-1) 및 하나의 케이블(7-8)을 갖고 있는 말단은 예외이다. 이들 케이블은 임의의 하나의 케이블을 과도하게 길게 하지 않으면서, x 축 방향을 따라 하나의 미드플레인을 인접 미드플레인에 연결할 수 있도록 해준다. 유사한 케이블연결 방식이 y 및 z 축을 따라 채용될 수 있다.
스플리트 케이블은 레귤러 로지컬 x 케이블을 따르는 것과는 다른 x-차원 토러스 연결을 가능하게 한다. 예를 들면, 상기 머신이 2개의 보다 소형의 머신, 즉 열(0-4)를 갖고 있는 제1 머신과 열(5-8)을 갖고 있는 제2 머신으로 분할된다면, 스플리트 케이블(46')은 로지컬 케이블(40') 대신에 스위칭될 수 있어서, 제1 머신에 대한 x 케이블은 이제 0-2, 2-4, 4-3, 3-1, 1-0이고, 제2 머신 역시 유사한 방식으로 스위칭될 수 있다.
토러스 분할(torus partitioning)
도 4는 고도 병렬 수퍼컴퓨터 케이블링 및 분할을 보여준다.
로지컬 재분할은 상기 머신을 어떻게 서브 분할할 지에 대한 소정 범위의 옵션을 가능하게 한다. 도 4는 레귤러 분할 및 스플리트 분할의 예를 보여주며, 미드플레인이 어떻게 서비스를 위해 시스템으로부터 격리될 수 있는지를 나타낸다.
스플리트 재분할은 큰 72 ×32 ×32 케이블링된 고도 병렬 수퍼컴퓨터를 대략 동일한 절반부로 이루어지는 2개의 서브 시스템, 즉 40 ×32 ×32 서브시스템과, 32 ×32 ×32 서브시스템으로 나눌 수 있다. 이것은, 어떤 미드플레인이 오작동되는 경우, 그 미드플레인이 물리적으로 위치한 곳과는 무관하게, 2개의 32 ×32 ×32 서브시스템이 항상 만들어질 수 있도록(스플리트 방향 변경 하에서 전술한 것과 같은 방식으로 스플리트 케이블(46)을 사용함) 2가지 방식 중 하나로 이루어질 수 있다. 40 ×32 ×32 서브시스템이 랙의 상부 5개의 열이고 32 ×32 ×32 서브시스템이 바닥의 4개의 열이거나 그 역의 경우이다. 예컨대, 도 4에서 사각 4/5로나타낸 랙 내의 열(1)에 있는 미드플레인이 서비스할 필요가 있다면, 스플리트 분할을 이용하여 상기 시스템을 상단 4개의 랙 열과 바닥 5개의 열 사이에서 분할할 수 있다. 이러한 경우에, 바닥의 5개의 열(0,1,2,3,4)은 하나의 40 ×32 ×32 서브시스템을 형성하고, 상단의 4개의 열(5,6,7,8)(모두 시스템 파티션 #6을 구성하는 6으로 넘버링된 랙을 갖고 있다)은 별도의 32 ×32 ×32 서브시스템을 형성한다. 두 서브시스템은 이러한 사이즈로 작동될 수 있고, 또는 레귤러 분할을 이용하여 추가로 서브 분할될 수 있다.
레귤러 분할은 하나의 1-미드플레인(8-노드) 길이의 섹션을 임의의 로지컬 토러스 방향으로부터 격리할 수 있다. 도 4에서 열(1)의 4/5 랙에 있는 미드플레인이 기능하지 않는다면, 레귤러 분할을 이용하여 로지컬 x 방향의 열(1)을 40 ×32 ×32 하부의 시스템 나머지로부터 격리하여, 열(0,2,3,4)의 1로 표시된 32 ×32 ×32 시스템(시스템 #1)과 열(1)의 8 ×32 ×32 시스템을 만들 수 있는데, 그 랙은 숫자 2, 3, 4/5로 표시한다. 로지컬 y 방향의 열(1)의 이 8 ×32 ×32 섹션의 레귤러 분할은 3 및 4/5 랙을 2 랙으로부터 격리하여, 8 ×24 ×32 섹션(2 랙, 시스템 #2)과 8 ×8 ×32 섹션(3 및 4/5 랙)을 형성한다. 로지컬 z 방향의 8 ×8 ×32 섹션의 2회의 레귤러 분할은 4/5 랙 및 3 랙을 격리하여, 8 ×8 ×16 섹션(2 랙, 시스템 #3) 및 2개의 8 ×8 ×8 섹션(4/5 랙, 시스템 #4 및 #5)을 생성하는데, 이들 중 하나가 서비스될 수 있고, 다른 모든 서브분할부는 컴퓨팅을 수행한다. 유사한 분할을 상이한 조합으로 이용하여 상이한 서브섹션을 서브분할 및 격리할 수 있다.
도 5는 인접 미드플레인에 연결되는 케이블을 통해 링크 카드 내외로, 링크 카드를 통해, 다음에 현재의 미드플레인 상의 토러스 내외로의 토러스 신호의 라우팅을 보여준다. 링크 ASIC는 선택적으로, 현재의 미드플레인 상의 3차원 8 ×8 ×8 토러스를 더 큰 머신의 토러스에 연결한다. 도 5의 상단에서, + 및 - x,y,z 신호가 각각 도 4의 + 및 - 로지컬 x 케이블(40), 로지컬 y 케이블(42), 로지컬 z 케이블(44)에 커플링된다. 도 5에서 x 방향으로 "to split 1" 및 "to split 2"로 또 그로부터의 신호는 도 4의 + 및 - 스플리트 케이블(46)에 커플링된다. 전술한 바와 같이, 스플리트 케이블(46)은 단지 x 방향을 따라 제공되며, 다만 더 복잡한 실시 형태에서는, 그 케이블은 y 및 z 방향을 따라 제공될 수도 있다. 링크 카드는 각각의 x,y,z 방향에 대하여 + 및 - ASIC을 포함하고, 이들은 도 3을 참조하여 전술한 바와 같이 동작한다.
트리 및 인터럽트 재분할(tree and interrupt repartitioning)
글로벌 결합 트리 및 글로벌 인터럽트 신호는, 도 5 내지 도 7의 상단 섹션을 비교하여 알 수 있는 바와 같이, 토러스 신호와 동일한 링크 칩 및 케이블을 통해 라우팅된다. 따라서, 레귤러 재분할 및 스플리트 재분할은 상기 트리를 토러스에 대한 것과 정확히 동일한 방식으로 로지컬 서브파티션으로 나눈다. 로지컬 서브파티션 내에서, 각 미드플레인 상의 I/O 프로세서는 소프트웨어로 재구성되어 상기 트리를 그 파티션 내에서 연결한다.
도 6 및 도 7은 토러스 신호를 또한 전송하는 미드플레인 사이에서 링크 칩(x,y,z 링크 칩이 도시되어 있다)과 케이블을 통해 글로벌 인터럽트 신호와 글로벌 결합 트리의 라우팅을 보여준다. 상기 링크 칩이 재구성되면, 이는 어느 미드플레인이 시스템의 로지컬 파티션 각각에서 연결될지를 셋팅한다. 그러나, 재분할하면, 상기 결합 트리 네트워크 및 인터럽트 신호 네트워크 모두는, 상기 결합 트리의 헤드 및 인터럽트 신호 네트워크의 헤드 모두가 각 로지컬 머신 파티션 전체에 걸쳐 정의되도록 추가 구성될 필요가 있다. 이것은 여러 가지 방식으로 달성할 수 있다.
도 6은 글로벌 결합 트리 네트워크의 신호인 글로벌 트리 신호의 라우팅을 보여주고 있으며, 그 신호는 도 5의 토러스 신호와 정확히 동일한 케이블 위로 라우팅된다.
상기 글로벌 결합 트리에 대하여, 고도 병렬 수퍼컴퓨터는 각 미드플레인에서 톱 레벨 미드플레인 컴퓨트 프로세서(ASIC) 그룹을 이용하여, 인접 미드플레인으로의 6개의 오프-미드플레인 케이블 방향(링크 칩을 통한 신호) 중 어느 것이 업 트리(사시도로 보아, 도 2의 트리의 상단을 향함), 즉 상기 트리에서 보다 상위의 로지컬 레벨로 이동하는 것으로 정해질지, 그리고 어느 것이 다운-트리(사시도로 보아, 도 2의 트리의 바닥을 향함)로서 정해질 지를 집합적으로 규정한다. 이들 톱 레벨 미드플레인 ASIC은 각각 3개의 글로벌 트리 포트를 갖고 있고, 이들 포트는 소프트웨어 제어 하에서 스위칭되어 어느 포트가 업-트리 및 다운-트리인지를 정할 수 있다. 집합적으로, 이들 톱 레벨 미드플레인 ASIC은 6개의 오프-미드플레인 케이블 링크 중 하나를 업-트리로서, 그리고 다른 5개를 다운-트리로서 정하고, 도 6에 도시한 바와 같이, 다른 하위 레벨 미드플레인 ASIC에 대하여 트리 접속을제공한다.
도 7은 인터럽트 신호의 라우팅을 보여주는데, 상기 신호는 글로벌 인터럽트 신호 네트워크의 신호이고, 도 5의 토러스 신호와 정확히 동일한 케이블에 걸쳐 라우팅된다.
상기 인터럽트는 간단한 논리곱(AND) 및 논리합(OR) 함수이기 때문에, 복수의 다운-트리 브랜치를 업-트리 링크에 연결할 때 수학 연산을 수행하기 위하여 미드플레인 컴퓨트 ASIC의 복합 프로세서는 요구되지 않는다. 인터럽트 네트워크의 오프-미드플레인 업-트리 및 다운-트리 링크를 연결하기 위하여 톱 레벨 컴퓨트 ASIC 그룹을 필요로 하지 않는다. 이와 같이 도 7의 인터럽트 라우팅은 도 6의 글로벌 트리와 비교하여 단순화할 수 있다. 글로벌 인터럽트에 대하여, 도 7의 링크 칩은 라인(54) 위에서 그들 사이에서 통신하고, 단일의 양방향 업-트리 신호를 라인(55) 위에서 링크 카드 상의 링크 FPGA(ASIC Floating Point Gate Array)에 함께 제공한다. 이 FPGA는 다운-트리 브로드캐스트 및 업-트리 AND 및 OR 로직 함수를 수행할 수 있다. 이는 5개의 다운-트리 케이블 연결부 위로 그리고 미드플레인으로 다운-트리 신호를 통신한다.
도 5 내지 도 7은 토러스 신호, 글로벌 트리 신호, 인터럽트 신호를 케이블과 링크 카드 사이에서 라우팅하는 것은 정확히 동일함을 보여준다. 3개의 모든 네트워크는 동일한 케이블 위로 이동하고, 각 링크 카드는 3개의 모든 종류의 네트워크에 대한 3가지 종류의 신호의 라우팅 및 재분할을 처리한다.
동적 재분할을 통해 수퍼컴퓨터에서 장애 허용성을 제공하기 위한 본 발명의몇몇 실시 형태 및 변형예를 상세하게 설명하였지만, 본 발명의 개시 및 교시 내용은 당업자에게 많은 별법의 구성을 제안하게 될 거라는 것은 명백하다.
Claims (11)
- 복수 개의 병렬 프로세서를 포함하는 병렬 컴퓨터 시스템에서 병렬 컴퓨터 시스템이 하드웨어 고장을 견대내도록 장애 허용성을 제공하는 방법으로서,상기 컴퓨터 시스템에 여분의 리던던트 대기 프로세서 그룹을 제공하고,상기 여분의 리던던트 대기 프로세서 그룹이 스위칭되어 하드웨어 고장을 겪는 상기 컴퓨터 시스템의 프로세서 그룹 대신에 동작할 수 있도록 상기 컴퓨터 시스템을 설계하는 것을 포함하는 방법.
- 청구항 1에 있어서, 상기 스위칭은 소프트웨어 제어 하에 있어, 상기 전체 컴퓨터 시스템이 하드웨어 고장을 견딜 수 있도록 하고, 상기 대기 프로세서의 스위칭 후에, 상기 컴퓨터 시스템은 완전히 기능하고 동작하는 컴퓨터 시스템으로서 소프트웨어에 나타나는 방법.
- 청구항 1에 있어서, 상기 컴퓨터 시스템은 실질적으로 동일한 복수 개의 컴퓨트 노드를 포함하는 고도 병렬 컴퓨터 시스템을 포함하고, 상기 각각의 노드는 하나 이상의 CPU, 메모리, 그 노드를 다른 컴퓨터 노드에 연결하는 하나 이상의 네트워크 인터페이스를 포함하는 방법.
- 청구항 1에 있어서, 상기 컴퓨터 시스템은 3차원 토러스로서 연결된 a ×b ×c 컴퓨트 노드 어레이를 포함하며, 각각의 컴퓨트 노드는 랩(wrap) 링크를 포함하는 + 및 - x,y,z 방향의 6개의 링크에 의해 6개의 인접 컴퓨트 노드에 연결되는 방법.
- 청구항 4에 있어서, 상기 각각의 컴퓨트 노드는 멀티프로세서가 구비된 ASIC을 포함하고, 상기 멀티프로세서의 한 프로세서는 고도 병렬 수퍼컴퓨터의 일부로서 프로세싱을 수행하고, 상기 멀티프로세서의 제2 프로세서는 상기 컴퓨트 노드의 메시지 전달 작업을 수행하는 방법.
- 청구항 4에 있어서, 상기 컴퓨터 시스템은 링크의 글로벌 결합 트리와, 글로벌 인터럽트 신호의 셋트에 대한 유사한 결합 트리에 걸친 통신 링크도 포함하는 방법.
- 청구항 6에 있어서, 상기 컴퓨터 시스템의 토러스, 글로벌 결합 트리, 글로벌 인터럽트 신호는 링크 칩을 통과하고, 이 링크 칩은 그 링크 칩의 상이한 포트 사이에서 신호를 방향 변경하여 상기 컴퓨터 시스템이 복수 개의 논리적으로 별도인 시스템으로 분할될 수 있도록 하는 방법.
- 청구항 7에 있어서, 상기 링크 칩은 미드플레인 사이의 케이블에 걸쳐 신호를 재구동하는 제2의 기능도 수행하여 상기 신호의 고속 형태 및 진폭을 개선하는 방법.
- 청구항 6에 있어서, 상기 각 링크 칩은, 상기 컴퓨터 시스템의 x,y,z 축의 어느 하나를 따라 하나의 로지컬 방향으로부터 하나의 미드플레인을 제거하는 레귤러 방향 변경과, 상기 컴퓨터 시스템을 2개의 절반부 또는 4개의 4분의 1 부분들로 분할할 수 있게 하는 스플리트 방향 변경인 2가지 종류의 신호 방향 변경을 수행하는 방법.
- 청구항 6에 있어서, 상기 글로벌 결합 트리 및 글로벌 제어 신호는 상기 토러스 신호와 동일한 링크 칩 및 케이블을 통해 라우팅되어, 레귤러 및 스플리트 방향 변경과 재분할이 상기 트리를 상기 토러스에 대한 것과 정확히 동일한 방식으로 로지컬 서브파티션으로 변화시키는 방법.
- 청구항 10에 있어서, 상기 글로벌 결합 트리와 인터럽트 신호는, 재분할시 상기 결합 트리의 헤드와 상기 인터럽트 네트워크의 헤드 모두가 각 로지컬 머신 파티션 전체에 걸쳐 정의되도록 추가 구성되는 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US27112401P | 2001-02-24 | 2001-02-24 | |
US60/271,124 | 2001-02-24 | ||
PCT/US2002/005566 WO2002069469A1 (en) | 2001-02-24 | 2002-02-25 | Fault tolerance in a supercomputer through dynamic repartitioning |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20030077034A true KR20030077034A (ko) | 2003-09-29 |
KR100570145B1 KR100570145B1 (ko) | 2006-04-12 |
Family
ID=68499838
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020037010921A KR100570145B1 (ko) | 2001-02-24 | 2002-02-25 | 동적 재분할을 통해 수퍼컴퓨터에 장애 허용성을 제공하는방법 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7185226B2 (ko) |
EP (1) | EP1374360A4 (ko) |
JP (2) | JP4524073B2 (ko) |
KR (1) | KR100570145B1 (ko) |
CN (1) | CN1319237C (ko) |
WO (1) | WO2002069469A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100748715B1 (ko) * | 2005-12-27 | 2007-08-13 | 주식회사 텔레칩스 | 하드웨어 작업관리 장치 |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100592752B1 (ko) * | 2001-02-24 | 2006-06-26 | 인터내셔널 비지네스 머신즈 코포레이션 | 토러스 및 트리 네트워크에서의 산술 기능 |
WO2002069469A1 (en) * | 2001-02-24 | 2002-09-06 | International Business Machines Corporation | Fault tolerance in a supercomputer through dynamic repartitioning |
US7340644B2 (en) * | 2002-12-02 | 2008-03-04 | Marvell World Trade Ltd. | Self-reparable semiconductor and method thereof |
US20060001669A1 (en) * | 2002-12-02 | 2006-01-05 | Sehat Sutardja | Self-reparable semiconductor and method thereof |
US7185225B2 (en) * | 2002-12-02 | 2007-02-27 | Marvell World Trade Ltd. | Self-reparable semiconductor and method thereof |
US7178059B2 (en) * | 2003-05-07 | 2007-02-13 | Egenera, Inc. | Disaster recovery for processing resources using configurable deployment platform |
JP3737810B2 (ja) * | 2003-05-09 | 2006-01-25 | 株式会社東芝 | 計算機システム及び故障計算機代替制御プログラム |
US7904663B2 (en) * | 2003-12-18 | 2011-03-08 | International Business Machines Corporation | Secondary path for coherency controller to interconnection network(s) |
US8336040B2 (en) | 2004-04-15 | 2012-12-18 | Raytheon Company | System and method for topology-aware job scheduling and backfilling in an HPC environment |
US8335909B2 (en) | 2004-04-15 | 2012-12-18 | Raytheon Company | Coupling processors to each other for high performance computing (HPC) |
US9178784B2 (en) | 2004-04-15 | 2015-11-03 | Raytheon Company | System and method for cluster management based on HPC architecture |
US7376890B2 (en) * | 2004-05-27 | 2008-05-20 | International Business Machines Corporation | Method and system for checking rotate, shift and sign extension functions using a modulo function |
US7475274B2 (en) * | 2004-11-17 | 2009-01-06 | Raytheon Company | Fault tolerance and recovery in a high-performance computing (HPC) system |
US20070174655A1 (en) * | 2006-01-18 | 2007-07-26 | Brown Kyle G | System and method of implementing automatic resource outage handling |
US8078907B2 (en) * | 2006-01-19 | 2011-12-13 | Silicon Graphics, Inc. | Failsoft system for multiple CPU system |
US8516444B2 (en) | 2006-02-23 | 2013-08-20 | International Business Machines Corporation | Debugging a high performance computing program |
US7512836B2 (en) * | 2006-12-11 | 2009-03-31 | International Business Machines Corporation | Fast backup of compute nodes in failing midplane by copying to nodes in backup midplane via link chips operating in pass through and normal modes in massively parallel computing system |
JP2008165381A (ja) * | 2006-12-27 | 2008-07-17 | Ricoh Co Ltd | 画像処理装置及び画像処理方法 |
US8412981B2 (en) * | 2006-12-29 | 2013-04-02 | Intel Corporation | Core sparing on multi-core platforms |
US20080235454A1 (en) * | 2007-03-22 | 2008-09-25 | Ibm Corporation | Method and Apparatus for Repairing a Processor Core During Run Time in a Multi-Processor Data Processing System |
US9330230B2 (en) * | 2007-04-19 | 2016-05-03 | International Business Machines Corporation | Validating a cabling topology in a distributed computing system |
US7984150B2 (en) * | 2007-07-31 | 2011-07-19 | Hewlett-Packard Development Company, L.P. | Cell compatibilty in multiprocessor systems |
JP2009104300A (ja) * | 2007-10-22 | 2009-05-14 | Denso Corp | データ処理装置及びプログラム |
US7870365B1 (en) | 2008-07-07 | 2011-01-11 | Ovics | Matrix of processors with data stream instruction execution pipeline coupled to data switch linking to neighbor units by non-contentious command channel / data channel |
US7958341B1 (en) | 2008-07-07 | 2011-06-07 | Ovics | Processing stream instruction in IC of mesh connected matrix of processors containing pipeline coupled switch transferring messages over consecutive cycles from one link to another link or memory |
US8131975B1 (en) | 2008-07-07 | 2012-03-06 | Ovics | Matrix processor initialization systems and methods |
US8145880B1 (en) | 2008-07-07 | 2012-03-27 | Ovics | Matrix processor data switch routing systems and methods |
US8327114B1 (en) | 2008-07-07 | 2012-12-04 | Ovics | Matrix processor proxy systems and methods |
JP2010086363A (ja) * | 2008-10-01 | 2010-04-15 | Fujitsu Ltd | 情報処理装置及び装置構成組み換え制御方法 |
US20110202995A1 (en) * | 2010-02-16 | 2011-08-18 | Honeywell International Inc. | Single hardware platform multiple software redundancy |
US8718079B1 (en) | 2010-06-07 | 2014-05-06 | Marvell International Ltd. | Physical layer devices for network switches |
US8713362B2 (en) | 2010-12-01 | 2014-04-29 | International Business Machines Corporation | Obviation of recovery of data store consistency for application I/O errors |
US8694821B2 (en) | 2010-12-03 | 2014-04-08 | International Business Machines Corporation | Generation of standby images of applications |
CN111811116A (zh) * | 2020-07-07 | 2020-10-23 | 北京丰联奥睿科技有限公司 | 一种多联空调系统的配置方法 |
WO2023068960A1 (ru) * | 2021-10-20 | 2023-04-27 | Федеральное Государственное Унитарное Предприятие "Российский Федеральный Ядерный Центр - Всероссийский Научно - Исследовательский Институт Технической Физики Имени Академика Е.И. Забабахина" | Компактный суперкомпьютер |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61201365A (ja) | 1985-03-04 | 1986-09-06 | Nippon Telegr & Teleph Corp <Ntt> | 並列処理システムの自動再構成方式 |
JPS62274454A (ja) | 1986-05-23 | 1987-11-28 | Hitachi Ltd | 並列処理計算機 |
US4907232A (en) | 1988-04-28 | 1990-03-06 | The Charles Stark Draper Laboratory, Inc. | Fault-tolerant parallel processing system |
JPH03132861A (ja) * | 1989-10-19 | 1991-06-06 | Agency Of Ind Science & Technol | マルチプロセッサ・システムの再構成制御方式 |
US5963746A (en) * | 1990-11-13 | 1999-10-05 | International Business Machines Corporation | Fully distributed processing memory element |
US5594918A (en) * | 1991-05-13 | 1997-01-14 | International Business Machines Corporation | Parallel computer system providing multi-ported intelligent memory |
US5715391A (en) * | 1991-11-15 | 1998-02-03 | International Business Machines Corporation | Modular and infinitely extendable three dimensional torus packaging scheme for parallel processing |
US5271014A (en) * | 1992-05-04 | 1993-12-14 | International Business Machines Corporation | Method and apparatus for a fault-tolerant mesh with spare nodes |
EP0570729A3 (en) | 1992-05-22 | 1994-07-20 | Ibm | Apap i/o programmable router |
JPH06290158A (ja) | 1993-03-31 | 1994-10-18 | Fujitsu Ltd | 再構成可能なトーラス・ネットワーク方式 |
US5592610A (en) * | 1994-12-21 | 1997-01-07 | Intel Corporation | Method and apparatus for enhancing the fault-tolerance of a network |
US6002851A (en) * | 1997-01-28 | 1999-12-14 | Tandem Computers Incorporated | Method and apparatus for node pruning a multi-processor system for maximal, full connection during recovery |
US6189112B1 (en) * | 1998-04-30 | 2001-02-13 | International Business Machines Corporation | Transparent processor sparing |
US6115829A (en) * | 1998-04-30 | 2000-09-05 | International Business Machines Corporation | Computer system with transparent processor sparing |
GB2359162B (en) * | 1998-11-10 | 2003-09-10 | Fujitsu Ltd | Parallel processor system |
FR2795840B1 (fr) * | 1999-07-02 | 2001-08-31 | Commissariat Energie Atomique | Reseau de processeurs paralleles avec tolerance aux fautes de ces processeurs, et procede de reconfiguration applicable a un tel reseau |
US6789213B2 (en) * | 2000-01-10 | 2004-09-07 | Sun Microsystems, Inc. | Controlled take over of services by remaining nodes of clustered computing system |
JP3674515B2 (ja) * | 2000-02-25 | 2005-07-20 | 日本電気株式会社 | アレイ型プロセッサ |
AU2002220600A1 (en) * | 2000-10-06 | 2002-04-15 | Pact Informationstechnologie Gmbh | Cell system with segmented intermediate cell structure |
WO2002084509A1 (en) | 2001-02-24 | 2002-10-24 | International Business Machines Corporation | A novel massively parrallel supercomputer |
WO2002069469A1 (en) * | 2001-02-24 | 2002-09-06 | International Business Machines Corporation | Fault tolerance in a supercomputer through dynamic repartitioning |
US7080156B2 (en) * | 2002-03-21 | 2006-07-18 | Sun Microsystems, Inc. | Message routing in a torus interconnect |
-
2002
- 2002-02-25 WO PCT/US2002/005566 patent/WO2002069469A1/en active IP Right Grant
- 2002-02-25 KR KR1020037010921A patent/KR100570145B1/ko not_active IP Right Cessation
- 2002-02-25 CN CNB028054253A patent/CN1319237C/zh not_active Expired - Fee Related
- 2002-02-25 EP EP02706408A patent/EP1374360A4/en not_active Withdrawn
- 2002-02-25 JP JP2002568482A patent/JP4524073B2/ja not_active Expired - Fee Related
- 2002-02-25 US US10/469,002 patent/US7185226B2/en not_active Expired - Fee Related
-
2007
- 2007-05-30 JP JP2007144007A patent/JP4577851B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100748715B1 (ko) * | 2005-12-27 | 2007-08-13 | 주식회사 텔레칩스 | 하드웨어 작업관리 장치 |
Also Published As
Publication number | Publication date |
---|---|
JP4524073B2 (ja) | 2010-08-11 |
EP1374360A1 (en) | 2004-01-02 |
JP2007220147A (ja) | 2007-08-30 |
CN1493101A (zh) | 2004-04-28 |
JP2004532447A (ja) | 2004-10-21 |
WO2002069469A1 (en) | 2002-09-06 |
US20040153754A1 (en) | 2004-08-05 |
KR100570145B1 (ko) | 2006-04-12 |
CN1319237C (zh) | 2007-05-30 |
US7185226B2 (en) | 2007-02-27 |
EP1374360A4 (en) | 2010-02-17 |
JP4577851B2 (ja) | 2010-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100570145B1 (ko) | 동적 재분할을 통해 수퍼컴퓨터에 장애 허용성을 제공하는방법 | |
Despain et al. | X-Tree: A tree structured multi-processor computer architecture | |
US10282338B1 (en) | Configuring routing in mesh networks | |
US8737392B1 (en) | Configuring routing in mesh networks | |
KR100553145B1 (ko) | 고장 발생 시 완전한 성능을 유지하는 컴퓨터 파일 시스템, 컴퓨터 파일 시스템을 포함하는 컴퓨터 시스템, 컴퓨터 파일 서버의 유지 방법, 컴퓨터 파일 시스템의 완전한 성능을 유지하기 위한 프로그램을 수록한 컴퓨터 판독 가능한 기록 매체 및 프로그램 스토리지 디바이스 | |
EP2147375B1 (en) | Fault recovery on a parallel computer system with a torus network | |
EP0733237B1 (en) | Multidimensional interconnection and routing network for an mpp computer | |
KR100586768B1 (ko) | 글로벌 인터럽트 및 배리어 네트워크 | |
US20160328357A1 (en) | Computer subsystem and computer system with composite nodes in an interconnection structure | |
US5630162A (en) | Array processor dotted communication network based on H-DOTs | |
CN112188325B (zh) | 使用具有一对多光交换机的光网络的可重新配置的计算平台 | |
JPH06290157A (ja) | 網 | |
KR20080106129A (ko) | 복수의 다중 모드 프로세서를 연결하는 방법과 장치 | |
Banerjee | The cubical ring connected cycles: a fault tolerant parallel computation network | |
KR20240097485A (ko) | 병렬 싱글-스테이지 스위치를 이용한 전자 장치, 저장 장치 및 연산 장치 | |
Ruighaver et al. | On The Fault-Tolerance of PANDORA networks | |
Rim et al. | An architecture for high availability multi-user systems | |
Jindal | Simulation Analysis of Permutation Passibility behavior of Multi-stage Interconnection Networks A Thesis Report Submitted in the partial fulfillment of the requirements for the award of the degree of ME in Software Engineering | |
Parhami | Message-Passing MIMD Machines | |
Siege | David G. Meyer Howard Jay Siege | |
Kung et al. | A General Switch Architecture for Fault-Tolerant VLSI Processor Arrays | |
Chittor et al. | Link switching: a communication architecture for configurable parallel systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130327 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20140326 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |