CN101833537A - 一种基于ccnuma多处理器架构下的多结点初始化同步方法 - Google Patents
一种基于ccnuma多处理器架构下的多结点初始化同步方法 Download PDFInfo
- Publication number
- CN101833537A CN101833537A CN 201010153819 CN201010153819A CN101833537A CN 101833537 A CN101833537 A CN 101833537A CN 201010153819 CN201010153819 CN 201010153819 CN 201010153819 A CN201010153819 A CN 201010153819A CN 101833537 A CN101833537 A CN 101833537A
- Authority
- CN
- China
- Prior art keywords
- processor
- master
- slave
- state
- master processor
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 20
- 230000001360 synchronised effect Effects 0.000 title claims abstract description 18
- 230000001427 coherent effect Effects 0.000 title abstract 2
- 238000004891 communication Methods 0.000 claims abstract description 26
- 230000007246 mechanism Effects 0.000 claims abstract description 26
- 230000006399 behavior Effects 0.000 claims abstract description 4
- 230000008569 process Effects 0.000 claims abstract description 4
- 230000005540 biological transmission Effects 0.000 claims description 6
- 235000012364 Peperomia pellucida Nutrition 0.000 claims description 3
- 240000007711 Peperomia pellucida Species 0.000 claims description 3
- 230000000694 effects Effects 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
Images
Landscapes
- Multi Processors (AREA)
Abstract
本发明提供一种基于CCNUMA多处理器架构下的多结点初始化同步方法,包括:状态机系统,处理器间信息通信机制和系统同步机制,状态机系统描述当前处理器状态,处理器间信息通信机制保证当前各处理器之间正常通信,系统同步机制保证系统中Master处理器与Slave处理器之间初始化的同步进行,对于CCNUMA多处理器架构下的多处理器系统初始化过程,是CCNUMA多处理器架构的本地资源都围绕在本地处理器周围,多处理器通过竞争算法,竞争出一个Master,其它处理器则进入Slave,一个Master处理器通过分发命令控制多个Slave处理器,Master处理器仅发送命令和等待数据,Slave处理器自动对自身行为进行约束与控制,并将数据返回给Master处理器,实现CCNUMA多处理器架构下Slave处理器使用状态机进行与Master多处理器初始化同步。
Description
技术领域
本发明涉及CCNUMA架构多处理计算机系统领域,具体涉及一种基于CCNUMA多处理器架构下的多结点初始化同步方法。
技术背景
在科学计算、商用服务、政府职能等领域,各种高端计算机系统均起着总中枢的作用,用户在追求系统高性能、高容量、高密度等指标的同时,更看重的是系统的可靠性和稳定性,CCNUMA架构的计算机系统经常存在几十或上百颗处理器,初始化过程中,对如此庞大的处理器进行初始化是至关重要的。在保证系统能正常使用的同时,增加框架整体的鲁棒性和可扩展性就成为当务之急。以往的多处理器同步使用直接信号量方式,在同步时容易出错,代码编写逻辑复杂,系统调试困难。而使用状态机机制,每个处理器相互独立,降低偶合度,简化数据结构。通过每个处理器独自的状态机,简化多处理器通讯复杂度,对CCNUMA下的多处理器信息交互、收集方式提供更易于操作的方法。
发明内容
本发明的目的是提供一种基于CCNUMA多处理器架构下的多结点初始化同步方法。
本发明的目的是按以下方式实现的,包括:状态机系统,处理器间信息通信机制和系统同步机制,状态机系统描述当前处理器状态,处理器间信息通信机制保证当前各处理器之间正常通信,系统同步机制保证系统中Master处理器与Slave处理器之间初始化的同步进行,对于CCNUMA多处理器架构下的多处理器系统初始化过程,是CCNUMA多处理器架构的本地资源都围绕在本地处理器周围,多处理器通过竞争算法,竞争出一个Master,其它处理器则进入Slave,一个Master处理器通过分发命令控制多个Slave处理器,Master处理器仅发送命令和等待数据,Slave处理器自动对自身行为进行约束与控制,并将数据返回给Master处理器,实现CCNUMA多处理器架构下Slave处理器使用状态机进行与Master多处理器初始化同步,其中,状态机系统的状态包括以下内容:
Wait状态:等待Master处理器Quest,有Quest,返回ACK,进入Ready;
Ready状态:在反馈Master处理器ACK后,进入Ready状态,等待Master处理器发送指令;
Lock状态:Master处理器发送Lock指令,打开一条Command Channel,并将Master处理器的Id写入Slave处理器,Slave处理器进入Lock,从而建立一对一的稳定联系;
Doing状态:Master处理器发送Do指令及参数后,Slave处理器进入Doing状态,进行Do指令的相应流程,在执行完毕后,自动进入Done状态。
Done状态:Master处理器发送Unlock,Slave处理器进入Unlocked状态,若Master处理器继续发送Do指令,则再次进入Doing状态;
Unlocked状态:Master处理器发送Unlock,Slave处理器进入Unlocked状态,清除Master处理器的Id,关闭与Master处理器的一对一稳定联系;
Closed状态:Master处理器发送Close命令,Master处理器关闭与Slave处理器之间的Command Channel;
处理器间信息通信机制:使用Command Channel进行通讯,由Master处理器对命令通道进行相应顺序访问实现多处理器之间通讯,此机制根据实际需要进行任意选择;
系统同步机制:在CCNUMA架构下的多处理器初始化过程中,Master处理器通过处理器间信息通信发送命令到各Slave处理器中,Slave处理器执行Master处理器的指令并返回相应的数据信息,具体步骤如下:
首先,Slave处理器在需要同步时,自动进入Wait状态,等待Master处理器发送Quest;
在Master处理器需要同步某Slave处理器或有命令需要某Slave处理器执行时,则根据处理器标识Quest该Slave处理器的状态,该Slave处理器接收到Quest命令,返回ACK,证明该Slave处理器有响应,继续进行操作;
Master使用一条空闲的Command Channel处理器发送Lock,将Master自身的标识写到Slave处理器,此时Master处理器与Slave处理器就建立了一条唯一通路;
Master处理器发送命令Do,Slave根据Do命令的内容及参数,进行相应的操作,包括初始化内存,传输处理器信息;
Do指令执行完毕,Slave处理器进入Done状态,若Master处理器仍需要执行其它指令,则再次发送Do命令;
Master处理器在所有Do指令结束后,发送Unlock指令,Slave处理器认定所有交易已结束,销毁所有与Master处理器有关的上下文;
Master处理器在发送完毕Unlock之后,发送Close指令,Slave处理器进入Closed状态,Master处理器销毁使用的Command Channel,释放系统资源。
本发明的有益效果是:针对基于CCNUMA架构的多处理器同步进行控制,以状态机的方式进行同步处理。同时为多处理器间信息交互、收集提供更易用、更便利更可靠的支持。每个处理器相互独立,降低偶合度,简化数据结构。通过每个处理器独自的状态机,简化多处理器通讯复杂度,对CCNUMA下的多处理器信息交互、收集方式提供更易于操作的方法。利用本发明的方法,可以简化CCNUMA架构下多处理器的初始化难度,减小系统复杂度,同时理论上可以大量扩充处理器数量。
附图说明
附图1CCNUMA架构多处理器竞争Master之后的逻辑框图;
附图2Slave处理器状态图;
附图3Master处理器工作流程。
具体实施方式
下面参照附图,对本发明的内容做详细的描述,本发明体系结构主要包括:状态机系统,处理器间信息通信机制,系统同步机制,其中,状态机系统描述当前处理器状态,处理器间信息通信机制保证当前各处理器之间正常通信,系统同步机制保证系统中Master处理器与Slave处理器之间初始化的同步进行,对于CCNUMA多处理器架构下的多处理器系统初始化过程,是CCNUMA多处理器架构的本地资源都围绕在本地处理器周围,多处理器通过竞争算法,竞争出一个Master,其它处理器则进入Slave,一个Master处理器通过分发命令控制多个Slave处理器,Master处理器仅发送命令和等待数据,Slave处理器自动对自身行为进行约束与控制,并将数据返回给Master处理器,实现CCNUMA多处理器架构下Slave处理器使用状态机进行与Master多处理器初始化同步。
状态机系统的状态有:
Wait状态,等待Master处理器Quest,如果有Quest,返回ACK,进入Ready;
Ready状态,在反馈Master处理器ACK后,进入Ready状态,等待Master处理器发送指令;
Lock状态,Master处理器发送Lock指令,打开一条Command Channel,并将Master处理器的Id写入Slave处理器,Slave处理器进入Lock,从而建立一对一的稳定联系;
Doing状态,Master处理器发送Do指令及参数后,Slave处理器进入Doing状态,进行Do指令的相应流程,在执行完毕后,自动进入Done状态。
Done状态,Master处理器发送Unlock,Slave处理器进入Unlocked状态。若Master处理器继续发送Do指令,则再次进入Doing状态。
Unlocked状态,Master处理器发送Unlock,Slave处理器进入Unlocked状态,清除Master处理器的Id,关闭与Master处理器的一对一稳定联系。
Closed状态,Master处理器发送Close命令,Master处理器关闭与Slave处理器之间的Command Channel。
处理器间信息通信机制:
使用Command Channel进行通讯,由Master处理器对命令通道进行相应顺序访问实现多处理器之间通讯。此机制可以根据实际需要进行任意选择。
系统同步机制:
在CCNUMA架构下的多处理器初始化过程中,Master处理器通过处理器间信息通信发送命令到各Slave处理器中,Slave处理器执行Master处理器的指令并返回相应的数据信息。具体步骤如下:
首先,Slave处理器在需要同步时,自动进入Wait状态,等待Master处理器发送Quest。
在Master处理器需要同步其它Slave处理器,有命令需要Slave处理器执行时,则根据处理器标识Quest此Slave处理器的状态,Slave处理器接收到Quest命令,返回ACK,证明该Slave处理器有响应,可以继续进行操作。
Master使用一条空闲的Command Channel处理器发送Lock,将Master自身的标识写到Slave处理器,此时Master处理器与Slave处理器就建立了一条唯一通路。
Master处理器发送命令Do,Slave根据Do命令的内容及参数,进行相应的操作,如初始化内存,传输处理器信息等。
Do指令执行完毕,Slave处理器进入Done状态,若Master处理器仍需要执行其它指令,则再次发送Do命令。
Master处理器在所有Do指令结束后,发送Unlock指令,Slave处理器认定所有交易已结束,销毁所有与Master处理器有关的上下文。
Master处理器在发送完毕Unlock之后,发送Close指令,Slave处理器进入Closed状态,Master处理器销毁使用的Command Channel,释放系统资源。
Claims (1)
1.一种基于CCNUMA多处理器架构下的多结点初始化同步方法,其特征在于,包括:状态机系统,处理器间信息通信机制和系统同步机制,状态机系统描述当前处理器状态,处理器间信息通信机制保证当前各处理器之间正常通信,系统同步机制保证系统中Master处理器与Slave处理器之间初始化的同步进行,对于CCNUMA多处理器架构下的多处理器系统初始化过程,是CCNUMA多处理器架构的本地资源都围绕在本地处理器周围,多处理器通过竞争算法,竞争出一个Master,其它处理器则进入Slave,一个Master处理器通过分发命令控制多个Slave处理器,Master处理器仅发送命令和等待数据,Slave处理器自动对自身行为进行约束与控制,并将数据返回给Master处理器,实现CCNUMA多处理器架构下Slave处理器使用状态机进行与Master多处理器初始化同步,其中,状态机系统的状态包括以下内容:
Wait状态:等待Master处理器Quest,有Quest,返回ACK,进入Ready;
Ready状态:在反馈Master处理器ACK后,进入Ready状态,等待Master处理器发送指令;
Lock状态:Master处理器发送Lock指令,打开一条Command Channel,并将Master处理器的Id写入Slave处理器,Slave处理器进入Lock,从而建立一对一的稳定联系;
Doing状态:Master处理器发送Do指令及参数后,Slave处理器进入Doing状态,进行Do指令的相应流程,在执行完毕后,自动进入Done状态。
Done状态:Master处理器发送Unlock,Slave处理器进入Unlocked状态,若Master处理器继续发送Do指令,则再次进入Doing状态;
Unlocked状态:Master处理器发送Unlock,Slave处理器进入Unlocked状态,清除Master处理器的Id,关闭与Master处理器的一对一稳定联系;
Closed状态:Master处理器发送Close命令,Master处理器关闭与Slave处理器之间的Command Channel;
处理器间信息通信机制:使用Command Channel进行通讯,由Master处理器对命令通道进行相应顺序访问实现多处理器之间通讯,此机制根据实际需要进行任意选择;
系统同步机制:在CCNUMA架构下的多处理器初始化过程中,Master处理器通过处理器间信息通信发送命令到各Slave处理器中,Slave处理器执行Master处理器的指令并返回相应的数据信息,具体步骤如下:
首先,Slave处理器在需要同步时,自动进入Wait状态,等待Master处理器发送Quest;
在Master处理器需要同步某Slave处理器或有命令需要某Slave处理器执行时,则根据处理器标识Quest该Slave处理器的状态,该Slave处理器接收到Quest命令,返回ACK,证明该Slave处理器有响应,继续进行操作;
Master使用一条空闲的Command Channel处理器发送Lock,将Master自身的标识写到Slave处理器,此时Master处理器与Slave处理器就建立了一条唯一通路;
Master处理器发送命令Do,Slave根据Do命令的内容及参数,进行相应的操作,包括初始化内存,传输处理器信息;
Do指令执行完毕,Slave处理器进入Done状态,若Master处理器仍需要执行其它指令,则再次发送Do命令;
Master处理器在所有Do指令结束后,发送Unlock指令,Slave处理器认定所有交易已结束,销毁所有与Master处理器有关的上下文;
Master处理器在发送完毕Unlock之后,发送Close指令,Slave处理器进入Closed状态,Master处理器销毁使用的Command Channel,释放系统资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010153819 CN101833537A (zh) | 2010-04-23 | 2010-04-23 | 一种基于ccnuma多处理器架构下的多结点初始化同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010153819 CN101833537A (zh) | 2010-04-23 | 2010-04-23 | 一种基于ccnuma多处理器架构下的多结点初始化同步方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101833537A true CN101833537A (zh) | 2010-09-15 |
Family
ID=42717609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010153819 Pending CN101833537A (zh) | 2010-04-23 | 2010-04-23 | 一种基于ccnuma多处理器架构下的多结点初始化同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101833537A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8954639B2 (en) | 2011-09-06 | 2015-02-10 | International Business Machines Corporation | Integrated link calibration and multi-processor topology discovery |
CN113641621A (zh) * | 2021-07-20 | 2021-11-12 | 北京百度网讯科技有限公司 | 数据处理方法、装置、处理器芯片、电子设备和介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6105053A (en) * | 1995-06-23 | 2000-08-15 | Emc Corporation | Operating system for a non-uniform memory access multiprocessor system |
US6269428B1 (en) * | 1999-02-26 | 2001-07-31 | International Business Machines Corporation | Method and system for avoiding livelocks due to colliding invalidating transactions within a non-uniform memory access system |
EP1126369A2 (en) * | 2000-02-17 | 2001-08-22 | International Business Machines Corporation | Method and system for supporting multiple operating systems on the same disk running on different computers at the same time |
CN1337637A (zh) * | 2000-08-03 | 2002-02-27 | 国际商业机器公司 | 异种计算机系统中节点同步的装置与方法 |
-
2010
- 2010-04-23 CN CN 201010153819 patent/CN101833537A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6105053A (en) * | 1995-06-23 | 2000-08-15 | Emc Corporation | Operating system for a non-uniform memory access multiprocessor system |
US6269428B1 (en) * | 1999-02-26 | 2001-07-31 | International Business Machines Corporation | Method and system for avoiding livelocks due to colliding invalidating transactions within a non-uniform memory access system |
EP1126369A2 (en) * | 2000-02-17 | 2001-08-22 | International Business Machines Corporation | Method and system for supporting multiple operating systems on the same disk running on different computers at the same time |
CN1337637A (zh) * | 2000-08-03 | 2002-02-27 | 国际商业机器公司 | 异种计算机系统中节点同步的装置与方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8954639B2 (en) | 2011-09-06 | 2015-02-10 | International Business Machines Corporation | Integrated link calibration and multi-processor topology discovery |
US8996770B2 (en) | 2011-09-06 | 2015-03-31 | International Business Machines Corporation | Integrated link calibration and multi-processor topology discovery |
CN113641621A (zh) * | 2021-07-20 | 2021-11-12 | 北京百度网讯科技有限公司 | 数据处理方法、装置、处理器芯片、电子设备和介质 |
US11892970B2 (en) | 2021-07-20 | 2024-02-06 | Kunlunxin Technology (Beijing) Company | Synchronizing coprocessors using synchronization instructions to force a second coprocessor to wait until receiving an acknowledgement signal from a first coprocessor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9971635B2 (en) | Method and apparatus for a hierarchical synchronization barrier in a multi-node system | |
Sarkar et al. | Software challenges in extreme scale systems | |
CN106662995B (zh) | 用于提供中间线程抢占的装置、方法、系统、介质和设备 | |
CN102521002B (zh) | 可动态和选择性停用内核以及重新设定多内核微处理器 | |
US7984448B2 (en) | Mechanism to support generic collective communication across a variety of programming models | |
Lin et al. | Efficient container virtualization-based digital twin simulation of smart industrial systems | |
CN107278299A (zh) | 经由可重配置的虚拟交换机实现次级总线功能性的方法、装置和系统 | |
CN101366004A (zh) | 用于带有专用线程管理的多核处理的方法和设备 | |
CN102279766B (zh) | 并行模拟多个处理器的方法及系统、调度器 | |
CN103309786A (zh) | 用于在非可抢占式图形处理单元上交互调试的方法和装置 | |
CN102955737A (zh) | 异构处理器体系的程序调试方法和系统 | |
CN102521028B (zh) | 一种分布式环境下的事务内存系统 | |
CN109343979A (zh) | 一种配置管理方法及系统 | |
CN103744644A (zh) | 采用四核结构搭建的四核处理器系统及数据交换方法 | |
CN106250348A (zh) | 一种基于gpu访存特性的异构多核架构缓存管理方法 | |
CN102681890A (zh) | 一种应用于线程级推测并行的限制性值传递方法和装置 | |
Thabet et al. | An efficient and flexible hardware support for accelerating synchronization operations on the sthorm many-core architecture | |
Derin et al. | A system-level approach to adaptivity and fault-tolerance in NoC-based MPSoCs: The MADNESS project | |
CN101833537A (zh) | 一种基于ccnuma多处理器架构下的多结点初始化同步方法 | |
Abid et al. | Asynchronous synthesis techniques for coordinating autonomic managers in the cloud | |
KR101656693B1 (ko) | 하둡 플랫폼을 이용한 전산유체역학의 시뮬레이션 장치 및 방법 | |
Flich et al. | The mango fet-hpc project: An overview | |
WO2012069831A1 (en) | Method and arrangement for a multi-core system | |
Zhang et al. | On-chip COMA cache-coherence protocol for microgrids of microthreaded cores | |
Prinz et al. | Distributed ASM-pitfalls and solutions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20100915 |