JPH06243110A - Barrier synchronization attaining method - Google Patents

Barrier synchronization attaining method

Info

Publication number
JPH06243110A
JPH06243110A JP2638393A JP2638393A JPH06243110A JP H06243110 A JPH06243110 A JP H06243110A JP 2638393 A JP2638393 A JP 2638393A JP 2638393 A JP2638393 A JP 2638393A JP H06243110 A JPH06243110 A JP H06243110A
Authority
JP
Japan
Prior art keywords
cpu
barrier synchronization
shared
cpus
shared variable
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.)
Granted
Application number
JP2638393A
Other languages
Japanese (ja)
Other versions
JP2968658B2 (en
Inventor
Shoichiro Yamada
正一郎 山田
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP5026383A priority Critical patent/JP2968658B2/en
Publication of JPH06243110A publication Critical patent/JPH06243110A/en
Application granted granted Critical
Publication of JP2968658B2 publication Critical patent/JP2968658B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

PURPOSE:To shorten the executing time of a barrier synchronization attaining method by securing the corresponding shared variable areas for each CPU in order to eliminate the lock control and to reduce the waiting frequency. CONSTITUTION:Each shared variable corresponding to each CPU is initialized into the same specific numeric value '0' and stored in a shared memory. In a step 1, each barrier synchronization processing operation is started every time the execution of each CPU proceeds to a barrier part. In a step 2, each CPU increases only its corresponding shared variable by an amount equal to the same prescribed numeric value '1'. In a step 3, each CPU waits until the shared variables corresponding to other CPUs exceed the shared variable corresponding to its own CPU. When the conditions of the step 3 are satisfied, the barrier synchronization is attained and each barrier synchronization processing is complete in a step 4.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、バリア同期実現方法に
関し、特に複数のCPUとすべてのCPUから定義や参
照が可能な共有メモリとを有する並列計算機システムに
おけるバリア同期実現方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a barrier synchronization realization method, and more particularly to a barrier synchronization realization method in a parallel computer system having a plurality of CPUs and a shared memory that can be defined and referenced by all the CPUs.

【0002】[0002]

【従来の技術】次に、複数のCPUとすべてのCPUか
らの定義や参照が可能な共有メモリとを有する並列計算
機システムにおけるバリア同期実現方法の一例につい
て、図面を参照して説明する。
2. Description of the Related Art Next, an example of a barrier synchronization realization method in a parallel computer system having a plurality of CPUs and a shared memory that can be defined and referenced by all the CPUs will be described with reference to the drawings.

【0003】図3は、従来のバリア同期実現方法の一例
を示す流れ図である。そして、図4は、図3の従来のバ
リア同期実現方法を適用した並列計算機システムの一例
を示すブロック図である。
FIG. 3 is a flow chart showing an example of a conventional barrier synchronization realizing method. 4 is a block diagram showing an example of a parallel computer system to which the conventional barrier synchronization realizing method of FIG. 3 is applied.

【0004】図4の並列計算機システムは、CPU41
−1,41−2とCPU41−1,41−2からの定義
や参照が可能な共有変数43を記憶している共有メモリ
42とから構成されている。
The parallel computer system shown in FIG.
-1, 41-2 and a shared memory 42 storing a shared variable 43 that can be defined and referenced by the CPUs 41-1 and 41-2.

【0005】そして、CPU41−1,41−2の実行
が、それぞれのバリア部分に達すると、図3に示す従来
のバリア同期実現方法である従来のバリア同期処理の動
作が開始される。
When the execution of the CPUs 41-1 and 41-2 reaches the respective barrier portions, the operation of the conventional barrier synchronization processing which is the conventional barrier synchronization realizing method shown in FIG. 3 is started.

【0006】例えば、CPU41−1の実行が、バリア
部分に達したときに、ステップ21で、CPU41−1
に対するバリア同期処理が開始され、ステップ22で、
共有メモリ42の共有変数43を、CPU41−1から
他のCPU41−2に対して排他的に定義したり参照し
たりするために、CPU41−1がロックを取得してい
る。
For example, when the execution of the CPU 41-1 reaches the barrier portion, at step 21, the CPU 41-1 is executed.
The barrier synchronization processing for is started, and in step 22,
The CPU 41-1 acquires the lock in order to exclusively define or refer to the shared variable 43 of the shared memory 42 from the CPU 41-1 to the other CPU 41-2.

【0007】なお、ロックの機能は、一つのCPUだけ
に動作の許可を与えるためのしくみであり、同時には、
一つのCPUしかロックを取得することができないこと
により、ロックを取得したCPUがロックの解除をする
までは、他のCPUがロックを取得することを待たされ
る機能である。
Note that the lock function is a mechanism for granting operation permission to only one CPU, and at the same time,
Since only one CPU can acquire the lock, it is a function of waiting for the other CPU to acquire the lock until the CPU that acquires the lock releases the lock.

【0008】そして、ステップ23で、共有変数43が
“0”か否かを調べて、“0”のときにだけ、ステップ
24で、共有変数43をCPU台数の“2”で初期化す
る。
Then, in step 23, it is checked whether or not the shared variable 43 is "0", and only when it is "0", the shared variable 43 is initialized to "2" which is the number of CPUs in step 24.

【0009】次に、ステップ25で、共有変数43から
“1”をひくことにより“1”にして、ステップ26
で、CPU41−1がロックを解除する。
Next, in step 25, "1" is subtracted from the shared variable 43 to set it to "1", and step 26
Then, the CPU 41-1 releases the lock.

【0010】そして、ステップ27で、共有変数43が
“1”以上であるか否かを調べて、“1”であるので、
待ち合わせのためにループを行う。
Then, in step 27, it is checked whether or not the shared variable 43 is "1" or more, and since it is "1",
Do a loop to meet.

【0011】一方、CPU41−2の実行が、バリア部
分に達したときには、ステップ21で、CPU41−2
に対するバリア同期処理が開始されることにより、ステ
ップ22で、CPU41−2がロックを取得する。
On the other hand, when the execution of the CPU 41-2 reaches the barrier portion, in step 21, the CPU 41-2 is executed.
By starting the barrier synchronization processing for, the CPU 41-2 acquires the lock in step 22.

【0012】そして、ステップ23で、共有変数43が
“0”か否かを調べて、“1”であるので、ステップ2
5で、共有変数43から“1”をひくことにより“0”
にして、ステップ26で、CPU41−2がロックを解
除する。
Then, in step 23, it is checked whether or not the shared variable 43 is "0", and since it is "1", step 2
In step 5, "0" is obtained by subtracting "1" from the shared variable 43.
Then, in step 26, the CPU 41-2 releases the lock.

【0013】そこで、共有変数43が“0”になったと
きに、待ち合わせをしていたCPU41−1に対するバ
リア同期処理は、ステップ27からステップ28に移行
し、CPU41−1がロックを取得する。
Therefore, when the shared variable 43 becomes "0", the barrier synchronization processing for the waiting CPU 41-1 proceeds from step 27 to step 28, and the CPU 41-1 acquires the lock.

【0014】そして、ステップ29で、共有変数43が
“0”か否かを調べて、“0”のときにだけ、ステップ
30で、共有変数43を負のCPU台数の“−2”で初
期化する。
Then, in step 29, it is checked whether or not the shared variable 43 is "0", and only when it is "0", in step 30, the shared variable 43 is initialized to "-2" which is the negative number of CPUs. Turn into.

【0015】次に、ステップ31で、共有変数23に
“1”をくわえることにより“−1”にして、ステップ
32で、CPU41−1がロックを解除する。
Next, in step 31, "-1" is added to the shared variable 23 to add "-1", and in step 32, the CPU 41-1 releases the lock.

【0016】そして、ステップ33で、共有変数43が
“−1”以下であるか否かを調べ、“−1”であるの
で、待ち合わせのためにループを行う。
Then, in step 33, it is checked whether or not the shared variable 43 is equal to or less than "-1", and since it is "-1", a loop is executed for waiting.

【0017】一方、CPU41−2に対するバリア同期
処理は、ステップ27からステップ28に移行し、CP
U41−2がロックを取得する。
On the other hand, the barrier synchronization processing for the CPU 41-2 shifts from step 27 to step 28, and CP
U41-2 acquires the lock.

【0018】そして、ステップ29で、共有変数43が
“0”か否かを調べて、“−1”であるので、ステップ
31で、共有変数43に“1”をくわえることにより
“0”にして、ステップ32で、CPU41−2がロッ
クを解除する。
Then, in step 29, it is checked whether or not the shared variable 43 is "0". Since it is "-1", in step 31, "1" is added to the shared variable 43 to set it to "0". Then, in step 32, the CPU 41-2 releases the lock.

【0019】そこで、共有変数43が“0”になったと
きに、待ち合わせをしていたCPU41−1に対するバ
リア同期処理は、ステップ33からステップ34に移行
し、CPU41−1に対するバリア同期処理を終了す
る。
Therefore, when the shared variable 43 becomes "0", the barrier synchronization processing for the CPU 41-1 waiting is shifted from step 33 to step 34, and the barrier synchronization processing for the CPU 41-1 is completed. To do.

【0020】一方、CPU41−2に対するバリア同期
処理も、ステップ32で、共有変数43が“−1”以下
であるか否かを調べて、“0”であるので、ステップ3
4に移行し、CPU41−2に対するバリア同期処理を
終了する。
On the other hand, also in the barrier synchronization processing for the CPU 41-2, it is checked in step 32 whether the shared variable 43 is "-1" or less, and since it is "0", step 3
4, and the barrier synchronization process for the CPU 41-2 ends.

【0021】[0021]

【発明が解決しようとする課題】上述した従来のバリア
同期実現方法は、一つの共有変数を排他的に定義したり
参照したりしているので、ロック制御を必要とするとと
もに、同期の誤りがない完全な同期を実現するために
は、長いステップと複数回の待ち合わせとをしなければ
ならないので、バリア同期処理に長い実行時間を必要と
するという欠点を有している。
Since the above-mentioned conventional barrier synchronization realization method exclusively defines or refers to one shared variable, lock control is required and an error in synchronization occurs. In order to realize complete perfect synchronization, a long step and a plurality of waits must be performed, which has a drawback that the barrier synchronization process requires a long execution time.

【0022】[0022]

【課題を解決するための手段】第1の発明のバリア同期
実現方法は、複数のCPUとそれぞれの前記CPUから
定義や参照が可能な共有メモリとを有する並列計算機シ
ステムのバリア同期実現方法において、(A)前記共有
メモリに前記CPUのそれぞれに対応する共有変数のそ
れぞれを同一の特定の数値に初期化して記憶させ、
(B)それぞれの前記CPUの実行がバリア部分に達す
る毎にそれぞれのバリア同期処理の動作を開始し、
(C)それぞれの前記バリア同期処理で、前記CPUが
自己に対応する前記共有変数だけを同一の所定の数値分
増加させ、(D)自己以外の他の前記CPUに対応する
前記共有変数の値のすべてが、自己の前記CPUに対応
する前記共有変数の値以上になるまで待合わせを行い、
(E)自己以外の他の前記CPUに対応する前記共有変
数の値のすべてが、自己の前記CPUに対応する前記共
有変数の値以上になったときには、バリア同期の成立と
判定して、それぞれの前記バリア同期処理を終了する、
ことを含んでいる。
A barrier synchronization realization method of a first invention is a barrier synchronization realization method for a parallel computer system having a plurality of CPUs and a shared memory that can be defined and referenced by each of the CPUs. (A) Initialize and store in the shared memory each of the shared variables corresponding to each of the CPUs to the same specific numerical value,
(B) Each time the execution of each CPU reaches the barrier portion, the operation of each barrier synchronization process is started,
(C) In each of the barrier synchronization processes, the CPU increments only the shared variable corresponding to itself by the same predetermined numerical value, and (D) the value of the shared variable corresponding to another CPU other than itself. Wait until the value of the shared variable corresponding to its own CPU is greater than or equal to
(E) When all the values of the shared variables corresponding to the other CPUs than the self become equal to or more than the values of the shared variable corresponding to the own CPU, it is determined that the barrier synchronization is established, and The barrier synchronization processing of
It includes that.

【0023】そして、第2の発明のバリア同期実現方法
は、複数のCPUとそれぞれの前記CPUから定義や参
照が可能な共有メモリとを有する並列計算機システムの
バリア同期実現方法において、(A)前記共有メモリに
前記CPUのそれぞれに対応する共有変数のそれぞれを
同一の特定の数値に初期化して記憶させ、(B)それぞ
れの前記CPUの実行がバリア部分に達する毎にそれぞ
れのバリア同期処理の動作を開始し、(C)それぞれの
前記バリア同期処理で、前記CPUが自己に対応する前
記共有変数だけを同一の所定の数値分減少させ、(D)
自己以外の他の前記CPUに対応する前記共有変数の値
のすべてが、自己の前記CPUに対応する前記共有変数
の値以下になるまで待合わせを行い、(E)自己以外の
他の前記CPUに対応する前記共有変数の値のすべて
が、自己の前記CPUに対応する前記共有変数の値以下
になったときには、バリア同期の成立と判定して、それ
ぞれの前記バリア同期処理を終了する、ことを含んでい
る。
The barrier synchronization realization method of the second invention is the barrier synchronization realization method of a parallel computer system having a plurality of CPUs and a shared memory that can be defined and referred to by each of the CPUs. Each of the shared variables corresponding to each of the CPUs is initialized and stored in the shared memory to the same specific numerical value, and (B) the operation of each barrier synchronization process is executed each time the execution of each CPU reaches the barrier portion. And (C) in each of the barrier synchronization processes, the CPU reduces only the shared variable corresponding to itself by the same predetermined numerical value, and (D).
Wait until all the values of the shared variables corresponding to the other CPUs than the self become equal to or less than the values of the shared variable corresponding to the own CPU, and (E) the other CPUs other than the self When all the values of the shared variable corresponding to the above are equal to or less than the values of the shared variable corresponding to the own CPU, it is determined that the barrier synchronization is established, and each of the barrier synchronization processing is ended. Is included.

【0024】[0024]

【実施例】次に、複数のCPUとすべてのCPUからの
定義や参照が可能な共有メモリとを有する並列計算機シ
ステムにおける本発明の実施例について、図面を参照す
ることにより説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention in a parallel computer system having a plurality of CPUs and a shared memory which can be defined and referred to by all the CPUs will be described with reference to the drawings.

【0025】図1は、本発明のバリア同期実現方法の一
実施例を示す流れ図である。また、図2は、本実施例の
バリア同期実現方法を適用した並列計算機システムの一
例を示すブロック図である。
FIG. 1 is a flow chart showing an embodiment of the barrier synchronization realizing method of the present invention. FIG. 2 is a block diagram showing an example of a parallel computer system to which the barrier synchronization realizing method of this embodiment is applied.

【0026】図2の並列計算機システムは、CPU11
−1,11−2とCPU11−1,11−2からの定義
や参照が可能な共有変数13−1,13−2を記憶して
いる共有メモリ12とから構成されている。
The parallel computer system shown in FIG.
-1, 11-2 and the shared memory 12 storing shared variables 13-1, 13-2 that can be defined and referenced by the CPUs 11-1, 11-2.

【0027】そして、図1に示した本実施例のバリア同
期実現方法であるバリア同期処理の動作の開始に先立っ
て、共有メモリ12の共有変数13−1,13−2の各
々を“0”に初期化している。
Before starting the operation of the barrier synchronization processing which is the barrier synchronization realizing method of the present embodiment shown in FIG. 1, each of the shared variables 13-1 and 13-2 of the shared memory 12 is set to "0". It has been initialized to.

【0028】そこで、CPU11−1,11−2の実行
が、それぞれのバリア部分に達すると、図1のバリア同
期処理の動作が開始される。
Therefore, when the execution of the CPUs 11-1 and 11-2 reaches the respective barrier portions, the operation of the barrier synchronization processing of FIG. 1 is started.

【0029】例えば、CPU11−1の実行が、バリア
部分に達したときには、ステップ1で、CPU11−1
に対するバリア同期処理が開始されて、ステップ2で、
共有メモリ12にあるCPU11−1に対する共有変数
13−1に“1”をくわえることにより“1”にしてい
る。
For example, when the execution of the CPU 11-1 reaches the barrier portion, in step 1, the CPU 11-1
The barrier synchronization process for is started, and in step 2,
It is set to "1" by adding "1" to the shared variable 13-1 for the CPU 11-1 in the shared memory 12.

【0030】そして、ステップ3で、すべての他のCP
Uの共有変数が自CPUの共有変数以上であるか否かを
調べている。このときには、他のCPU11−2の共有
変数13−2が“0”で、自CPU11−1の共有変数
13−1が“1”であることにより、待ち合わせのため
にループを行っている。
Then, in step 3, all other CPs
It is checked whether the shared variable of U is greater than or equal to the shared variable of its own CPU. At this time, since the shared variable 13-2 of the other CPU 11-2 is “0” and the shared variable 13-1 of the own CPU 11-1 is “1”, a loop is performed for waiting.

【0031】一方、CPU11−2の実行が、バリア部
分に達したときに、ステップ1で、CPU11−2に対
するバリア同期処理が開始され、ステップ2で、共有メ
モリ12にあるCPU11−2に対する共有変数13−
2に“1”をくわえることにより“1”にしている。
On the other hand, when the execution of the CPU 11-2 reaches the barrier portion, the barrier synchronization processing for the CPU 11-2 is started in step 1, and the shared variable for the CPU 11-2 in the shared memory 12 is started in step 2. 13-
By adding "1" to 2, it is set to "1".

【0032】そこで、共有変数13−2が“1”になっ
たときには、待ち合わせをしていたCPU11−1に対
するバリア同期処理は、ステップ3からステップ4に移
行して、CPU11−1に対するバリア同期処理を終了
する。
Therefore, when the shared variable 13-2 becomes "1", the barrier synchronization processing for the waiting CPU 11-1 moves from step 3 to step 4 and the barrier synchronization processing for the CPU 11-1 is performed. To finish.

【0033】一方、CPU11−2に対するバリア同期
処理も、ステップ3で、他のCPU11−1の共有変数
13−1が“1”で、自CPU11−1の共有変数13
−1が“1”であるので、ステップ3からステップ4に
移行して、CPU11−2に対するバリア同期処理を終
了する。
On the other hand, also in the barrier synchronization processing for the CPU 11-2, in step 3, the shared variable 13-1 of the other CPU 11-1 is "1" and the shared variable 13 of the own CPU 11-1.
Since -1 is "1", the process shifts from step 3 to step 4, and the barrier synchronization process for the CPU 11-2 ends.

【0034】このような動作を繰返すことにより、共有
変数13−1,13−2の各値は、一つずつ増加するご
とに、1回のバリア同期が行われている。
By repeating such an operation, each time the values of the shared variables 13-1 and 13-2 are increased by one, barrier synchronization is performed once.

【0035】なお、上記には、簡単のために2台のCP
Uの場合について説明したが、図1の本実施例は、n
(ただし、nは整数でn≧2)台のCPUの場合にも、
当然に矛盾なく動作することができる。
In the above, for the sake of simplicity, two CPs are used.
Although the case of U has been described, this embodiment of FIG.
(However, n is an integer and n ≧ 2)
Naturally, it can work without contradiction.

【0036】[0036]

【発明の効果】以上説明したように、複数のCPUとす
べてのCPUからの定義や参照が可能な共有メモリとを
持つ並列計算機システムにおける本発明のバリア同期実
現方法は、CPUごとに対応する共有変数の領域を確保
することによって、ロック制御を不要にするとともに待
合わせの回数を減らしているので、実行時間を短縮する
ことができるという効果を有している。
As described above, the barrier synchronization realization method of the present invention in a parallel computer system having a plurality of CPUs and a shared memory that can be defined and referenced by all the CPUs is shared by each CPU. By securing the variable area, the lock control becomes unnecessary and the number of times of waiting is reduced, so that the execution time can be shortened.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明のバリア同期実現方法の一実施例を示す
流れ図である。
FIG. 1 is a flow chart showing an embodiment of a barrier synchronization realization method of the present invention.

【図2】本実施例のバリア同期実現方法を適用した並列
計算機システムの一例を示すブロック図である。
FIG. 2 is a block diagram showing an example of a parallel computer system to which the barrier synchronization realizing method of this embodiment is applied.

【図3】従来のバリア同期実現方法の一例を示す流れ図
である。そして、図4は、
FIG. 3 is a flowchart showing an example of a conventional barrier synchronization realization method. And in FIG.

【図4】図3の従来のバリア同期実現方法を適用した並
列計算機システムの一例を示すブロック図である。
FIG. 4 is a block diagram showing an example of a parallel computer system to which the conventional barrier synchronization realizing method of FIG. 3 is applied.

【符号の説明】[Explanation of symbols]

1 バリア開始 2 自CPUの共有変数に1をくわえる 3 他CPUの共有変数が自CPUの共有変数以上 4 バリア終了 11−1,11−2 CPU 12 共有メモリ 13−1,13−2 共有変数 21 バリア開始 22 ロック取得 23 共有変数が0 24 共有変数をCPU台数で初期化する 25 共有変数から1をひく 26 ロック解除 27 共有変数が1以上 28 ロック取得 29 共有変数が0 30 共有変数を−CPU台数で初期化する 31 共有変数に1をくわえる 32 ロック解除 33 共有変数が−1以下 34 バリア終了 41−1,41−2 CPU 42 共有メモリ 43 共有変数 1 Barrier start 2 Add 1 to shared variable of own CPU 3 Shared variable of other CPU is a shared variable of own CPU or more 4 Barrier end 11-1, 11-2 CPU 12 Shared memory 13-1, 13-2 Shared variable 21 Barrier start 22 Lock acquisition 23 Shared variable 0 24 Initialize shared variable by the number of CPUs 25 Subtract 1 from shared variable 26 Unlock 27 Shared variable is 1 or more 28 Lock acquisition 29 Shared variable is 0 30 Shared variable is -CPU Initialize with the number of units 31 Add 1 to the shared variable 32 Unlock 33 The shared variable is -1 or less 34 Barrier end 41-1, 41-2 CPU 42 Shared memory 43 Shared variable

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 複数のCPUとそれぞれの前記CPUか
ら定義や参照が可能な共有メモリとを有する並列計算機
システムのバリア同期実現方法において、(A)前記共
有メモリに前記CPUのそれぞれに対応する共有変数の
それぞれを同一の特定の数値に初期化して記憶させ、
(B)それぞれの前記CPUの実行がバリア部分に達す
る毎にそれぞれのバリア同期処理の動作を開始し、
(C)それぞれの前記バリア同期処理で、前記CPUが
自己に対応する前記共有変数だけを同一の所定の数値分
増加させ、(D)自己以外の他の前記CPUに対応する
前記共有変数の値のすべてが、自己の前記CPUに対応
する前記共有変数の値以上になるまで待合わせを行い、
(E)自己以外の他の前記CPUに対応する前記共有変
数の値のすべてが、自己の前記CPUに対応する前記共
有変数の値以上になったときには、バリア同期の成立と
判定して、それぞれの前記バリア同期処理を終了する、
ことを特徴とするバリア同期実現方法。
1. A barrier synchronization realization method for a parallel computer system having a plurality of CPUs and a shared memory that can be defined and referenced by each of the CPUs, comprising: (A) sharing corresponding to each of the CPUs in the shared memory. Initialize and store each variable to the same specific number,
(B) Each time the execution of each CPU reaches the barrier portion, the operation of each barrier synchronization process is started,
(C) In each of the barrier synchronization processes, the CPU increments only the shared variable corresponding to itself by the same predetermined numerical value, and (D) the value of the shared variable corresponding to another CPU other than itself. Wait until the value of the shared variable corresponding to its own CPU is greater than or equal to
(E) When all the values of the shared variables corresponding to the other CPUs than the self become equal to or more than the values of the shared variable corresponding to the own CPU, it is determined that the barrier synchronization is established, and The barrier synchronization processing of
A method for realizing barrier synchronization, which is characterized in that
【請求項2】 複数のCPUとそれぞれの前記CPUか
ら定義や参照が可能な共有メモリとを有する並列計算機
システムのバリア同期実現方法において、(A)前記共
有メモリに前記CPUのそれぞれに対応する共有変数の
それぞれを同一の特定の数値に初期化して記憶させ、
(B)それぞれの前記CPUの実行がバリア部分に達す
る毎にそれぞれのバリア同期処理の動作を開始し、
(C)それぞれの前記バリア同期処理で、前記CPUが
自己に対応する前記共有変数だけを同一の所定の数値分
減少させ、(D)自己以外の他の前記CPUに対応する
前記共有変数の値のすべてが、自己の前記CPUに対応
する前記共有変数の値以下になるまで待合わせを行い、
(E)自己以外の他の前記CPUに対応する前記共有変
数の値のすべてが、自己の前記CPUに対応する前記共
有変数の値以下になったときには、バリア同期の成立と
判定して、それぞれの前記バリア同期処理を終了する、
ことを特徴とするバリア同期実現方法。
2. A barrier synchronization realization method for a parallel computer system having a plurality of CPUs and a shared memory that can be defined and referenced by each of the CPUs, comprising: (A) sharing corresponding to each of the CPUs in the shared memory. Initialize and store each variable to the same specific number,
(B) Each time the execution of each CPU reaches the barrier portion, the operation of each barrier synchronization process is started,
(C) In each of the barrier synchronization processes, the CPU reduces only the shared variable corresponding to itself by the same predetermined numerical value, and (D) the value of the shared variable corresponding to another CPU other than itself. Wait until the value of the shared variable corresponding to its own CPU is less than or equal to
(E) When all the values of the shared variables corresponding to the other CPUs other than the self become equal to or less than the values of the shared variable corresponding to the own CPU, it is determined that the barrier synchronization is established, and The barrier synchronization processing of
A method for realizing barrier synchronization, which is characterized in that
JP5026383A 1993-02-16 1993-02-16 Barrier synchronization method Expired - Fee Related JP2968658B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5026383A JP2968658B2 (en) 1993-02-16 1993-02-16 Barrier synchronization method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5026383A JP2968658B2 (en) 1993-02-16 1993-02-16 Barrier synchronization method

Publications (2)

Publication Number Publication Date
JPH06243110A true JPH06243110A (en) 1994-09-02
JP2968658B2 JP2968658B2 (en) 1999-10-25

Family

ID=12192010

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5026383A Expired - Fee Related JP2968658B2 (en) 1993-02-16 1993-02-16 Barrier synchronization method

Country Status (1)

Country Link
JP (1) JP2968658B2 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01240965A (en) * 1988-03-23 1989-09-26 Hitachi Ltd Synchronization control system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01240965A (en) * 1988-03-23 1989-09-26 Hitachi Ltd Synchronization control system

Also Published As

Publication number Publication date
JP2968658B2 (en) 1999-10-25

Similar Documents

Publication Publication Date Title
Salvador A solution to a special case of flow shop scheduling problems
CN101853182A (en) Task execution method and device based on database
JP3113841B2 (en) Parallel transaction processing system
JPH11327934A (en) Semaphore for computer system
US7051136B2 (en) Entry locking for large data structures
JPH06243110A (en) Barrier synchronization attaining method
US5805917A (en) Parallel processing system with a plurality of communication register modules
JP2962241B2 (en) Parallel processing method in hierarchical multiprocessor
US5586320A (en) High speed synchronous processing system for executing parallel processing of programs having loops
JPH07152694A (en) Synchronizing device for barrier of multiprocessor system
JPH05257902A (en) Lock acquisition processing system in processing program mode
US6898262B1 (en) Programmable controller
KR0134463B1 (en) Improved method for limiting vector
JPH08278896A (en) Interruption processor
KR100249811B1 (en) Variable concurrency control device and method for transaction management systems
JPH04139545A (en) Data base updating processing system
JPH04223533A (en) Common resource exclusive control system
JPH0355656A (en) Spin lock control system
JP3013343B2 (en) Journal batch processing method
JPH04209063A (en) Spin lock control system
JPH07175764A (en) Deadlock avoidance system in distributed system
JP3140442B2 (en) Data processing device
JPH0443466A (en) Processing method for mask pattern data
JPS63128441A (en) State transition control system
JPH01205351A (en) Locking control system

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19960402

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070820

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080820

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080820

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090820

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090820

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100820

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110820

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees