JPH0293756A - Parallel processing computer - Google Patents

Parallel processing computer

Info

Publication number
JPH0293756A
JPH0293756A JP24413188A JP24413188A JPH0293756A JP H0293756 A JPH0293756 A JP H0293756A JP 24413188 A JP24413188 A JP 24413188A JP 24413188 A JP24413188 A JP 24413188A JP H0293756 A JPH0293756 A JP H0293756A
Authority
JP
Japan
Prior art keywords
central processing
register
processing unit
processing
computer
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
Application number
JP24413188A
Other languages
Japanese (ja)
Inventor
Shigeo Abe
阿部 重夫
Kaoru Kiriyama
桐山 薫
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP24413188A priority Critical patent/JPH0293756A/en
Publication of JPH0293756A publication Critical patent/JPH0293756A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Hardware Redundancy (AREA)

Abstract

PURPOSE:To easily obtain synchronization between computers even when computation is not repeated by sending end information through a contact means to the other computer for the computer to parallelly execute the computation when processing is finished in the self-computer. CONSTITUTION:The value of a mask signal register 44i is set by an input line 491. However, when the processed result of a central processing unit 10i is needed, for the contents of the register, the contents are caused to be 1 for the register 44i and to be 0 for the other register. When an execution ending signal 50i is inputted from the unit 10i to correspond to the register, for which the 1 is set out of the outputs of the register 41i, an AND circuit 41i turns on the output and sets 1 through an OR circuit 42i to a correspondent ending signal register 43i. When the output of the register 43i and the output of the register 44i are completely coincident, necessary processing is wholly finished. Such a condition is detected by a coincidence circuit 470 and a coincidence output line 480 is turned on. Thus, the pertinent unit 10i executes the processing in the unit itself.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は高速処理に好適な並列処理計算機に関するもの
である。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a parallel processing computer suitable for high-speed processing.

〔従来の技術〕[Conventional technology]

並列処理は、複数の処理装置により演算処理を分担して
実行することにより高速演算を行うものであ′る。従来
の並列処理計算機には、種々のタイプがあるが、特開昭
62−187971号に示されているように、フォート
ランプログラムのD○ループ等の反復計算を並列に実行
するものが主であった。
Parallel processing is a method of performing high-speed calculations by sharing and executing calculation processing among a plurality of processing devices. There are various types of conventional parallel processing computers, but as shown in Japanese Patent Application Laid-Open No. 62-187971, the main ones are those that execute repetitive calculations such as the D○ loop of the Fortran program in parallel. Ta.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

上記従来技術は、Doループのような反復計算に含まれ
ていない部分の並列処理については配慮されておらず、
これらについては逐次処理を行っていた。例えば、 (1)  A=B+C (2)  n= (B+10)*C (3)  E=A+D という演算は逐次処理によっていた。しかし、このよう
な演算でも(1)と(2)は並列に実行可能である。た
だしく3)は、(1)(2)の計算により変数A、Dが
求められた後に実行する必要があるから、(1)(2)
を別の処理装置で並列に実行したときには、それらがと
もに終了したことを、(3)を実行する処理装置は知る
必要があり、この問題は″同期″と呼ばれている。反復
計算のときは同じ式を、右辺の値だけ違った場合につい
て複数の処理装置で実行するから、処理時間はほぼ同じ
となって同期をとるのが易しいが、上記のような例では
大幅に処理時間が異なる場合があり、従来技術では一般
的な同期を高速にとることはできなかった。
The above conventional technology does not take into account parallel processing of parts not included in repetitive calculations, such as Do loops,
These were processed sequentially. For example, the calculations (1) A=B+C (2) n=(B+10)*C (3) E=A+D were performed sequentially. However, even in such operations, (1) and (2) can be executed in parallel. However, 3) needs to be executed after variables A and D are determined by the calculations in (1) and (2), so (1) and (2)
When executed in parallel by different processing devices, the processing device executing (3) needs to know that they have both finished, and this problem is called "synchronization." During repeated calculations, the same formula is executed by multiple processing units for cases where only the value on the right side differs, so the processing time is almost the same and it is easy to synchronize, but in the example above, the Processing times may vary, and conventional techniques have not been able to achieve general synchronization at high speed.

本発明の目的は、反復計算以外の部分でも並列処理の同
期を高速にとれるようにし、高速処理を行える並列処理
計算機を提供するにある。
An object of the present invention is to provide a parallel processing computer that can quickly synchronize parallel processing even in areas other than repetitive calculations and perform high-speed processing.

〔課題を解決するための手段〕[Means to solve the problem]

上記の目的は、各計算機から他の計算機へ1割りつけら
れた計算の実行終了を知らせるための連絡手段と、各計
算機からの実行終了の報告を受けて、自分の必要とする
計算がすでに終了したかを判定するところの各計算機対
応の判定手段とを設けることにより達成される。
The purpose of the above is to provide a means of communication from each computer to other computers to notify them of the completion of execution of the assigned calculation, and to receive a report from each computer of the completion of execution so that the calculation required by the computer has already been completed. This is achieved by providing a determination means for each computer that determines whether the

〔作用〕[Effect]

計算を並列に実行している計算機は、1計算機での処理
が終了した時点に終了報告を連絡手段を介して他の計算
機に送る。この並列処理の終了を待っている計算機は、
どの計算機の処理が終了していればよいかを自分の実行
する計算式とともに与えられるから、各計算機よりの終
了報告を判定手段によりチエツクして必要な計算が全て
終了しかた否かを判定でき、並列処理の同期処理を高速
に行える。
Computers executing calculations in parallel send a completion report to other computers via communication means when the processing on one computer is completed. The computer waiting for this parallel processing to finish is
Since you are given information on which computer's processing should have been completed along with the calculation formula you want to execute, you can check the completion report from each computer using the determination means and determine whether all necessary calculations have been completed. Synchronous processing of parallel processing can be performed at high speed.

〔実施例〕〔Example〕

以下、本発明の一実施例を図面を用いながら詳細に説明
する。第1図は、本発明の計算機の一実施例の全体を示
すブロック図で、中央処理装置(CPU)101〜10
4、バス2oO、メーV−リ300、実行終了連絡線5
00から成り、中央処理装置101〜104には終了判
定回路401〜404がそれぞれ設けられている。なお
、中央処理装置は4台としたがこれは任意の台数でよい
Hereinafter, one embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 is a block diagram showing the entire embodiment of a computer according to the present invention, and includes central processing units (CPUs) 101 to 10.
4, Bus 2oO, May V-Re 300, Execution end communication line 5
00, and the central processing units 101-104 are provided with end determination circuits 401-404, respectively. Although the number of central processing units is four, any number may be used.

第2図は終了判定回路401(他も同じ構成)の構成を
示すもので、アンド回路411〜414、オア回路42
1〜424、終了信号レジスタ431〜434.マスク
信号レジスタ441〜444゜および一致回路470か
ら成っている。
FIG. 2 shows the configuration of the end determination circuit 401 (others have the same configuration), including AND circuits 411 to 414, an OR circuit 42,
1 to 424, end signal registers 431 to 434. It consists of mask signal registers 441-444° and a matching circuit 470.

マスク信号レジスタ441〜444の値は、入力線49
1によりセットされるが、その内容は。
The values of the mask signal registers 441 to 444 are input to the input line 49.
It is set by 1, but its contents are.

中央処理装置10i (i=1〜4)の処理結果が必要
なとき、レジスタ44i  (j=1〜4)を“1”、
他を“0″とするものである。アンド回路411〜41
4は、マスク信号レジスタの出力451〜454の内の
′1″がセラ1−されたものに対応する中央処理装置1
01〜104からの実行終了信号501〜504が入力
されたときに出力がオンし、オア回路421〜424を
介して該当する終了信号レジスタ431〜434に11
111をセットする。レジスタ431〜434の出力4
61〜464と、マスク信号レジスタ441〜444の
出力451〜454とが完全に一致したときは、必要な
処理が全部終わったときで、それは−数回路470で検
出され、一致出力線480がオンとなる。これによって
該当する中央処理装置101は自装置内での処理を行う
、処理が終わると入力線490によりレジスタ441〜
444の内容はリセットされる。
When the processing results of the central processing unit 10i (i=1 to 4) are required, the register 44i (j=1 to 4) is set to "1",
The others are set to "0". AND circuits 411-41
4 is the central processing unit 1 corresponding to the mask signal register output 451 to 454 whose output is '1'.
When the execution end signals 501 to 504 from 01 to 104 are input, the output is turned on, and 11 is sent to the corresponding end signal register 431 to 434 via OR circuits 421 to 424.
Set 111. Output 4 of registers 431-434
61 to 464 and the outputs 451 to 454 of the mask signal registers 441 to 444 completely match, when all necessary processing has been completed, this is detected by the minus number circuit 470, and the match output line 480 is turned on. becomes. As a result, the corresponding central processing unit 101 performs processing within itself. When the processing is completed, the input line 490 causes the registers 441 to
The contents of 444 are reset.

以上の実施例において、第3図のプログラムを例に本実
施例の動作を説明する。主プログラム610は中央処理
装置101で実行されるとすると、set−mesh−
queue # 2 命令の実行によって並列動作可能
なプログラム620,630が以下のように起動される
。第4図は、set −mesh −queue命令の
処理フローを示す。ステップ700において、set−
mesh−queue命令のオペランドの数(今の場合
2)だけの中央処理装置の割りあてが可能か調べ、可能
ならばステップ710へ移る。
In the above embodiment, the operation of this embodiment will be explained using the program shown in FIG. 3 as an example. Assuming that the main program 610 is executed by the central processing unit 101, set-mesh-
By executing the queue #2 instruction, programs 620 and 630 that can operate in parallel are activated as follows. FIG. 4 shows the processing flow of the set-mesh-queue command. In step 700, set-
It is checked whether it is possible to allocate as many central processing units as the number of operands of the mesh-queue instruction (2 in this case), and if possible, the process moves to step 710.

ここでは割りあてられた中央処理装置に対応するマスク
信号レジスタ441〜444の対応したものにII 1
 #をセットする。この場合中央処理装置102.10
3が割りあてられたとすると、中央処理装置101のマ
スク信号レジスタ441〜444の各々には“0″、“
1″、“1”、′0”がセットされる。続いてステップ
720で割りあてられた中央処理装置を起動し、これに
より中央処理装置102,103の各々においてプログ
ラム620および630が実行される。これらの実行が
終了すると、中央処理袋[102,103は、set 
−end命令を実行する。第5図はこのset −en
d命令を示しており、対応する実行終了信号50i(i
=1〜4)を連絡[500へ送出する。今の場合は中央
処理装置102.103の処理終了により終了信号50
2.503が送出される。そうすると中央処理袋@10
1の終了判定回路401において、終了信号レジスタ4
32,433に1”がセットされ、−数回路470の出
力480に1111+が出力される。
Here, the mask signal registers 441 to 444 corresponding to the assigned central processing unit are set to II 1.
Set #. In this case central processing unit 102.10
3 is assigned, each of the mask signal registers 441 to 444 of the central processing unit 101 has "0" and "
1'', "1", and '0' are set. Subsequently, in step 720, the allocated central processing units are activated, and thereby programs 620 and 630 are executed in each of central processing units 102 and 103. When these executions are completed, the central processing bag [102, 103 is set
-Execute the end command. Figure 5 shows this set -en
d instruction, and the corresponding execution end signal 50i (i
=1 to 4) to the contact [500. In this case, the end signal 50 is generated when the processing of the central processing units 102 and 103 is completed.
2.503 is sent. Then central processing bag @10
In the end determination circuit 401 of No. 1, the end signal register 4
32 and 433 are set to 1'', and 1111+ is output to the output 480 of the minus number circuit 470.

一方、中央処理装置101では、set −mesh 
−queue # 2命令の後の処理を行っており、t
est−reset命令まで処理が進んだとする。te
st −reset命令の処理内容は第6図に示されて
いる。
On the other hand, in the central processing unit 101, set -mesh
-queue # Processing after 2 instructions is performed, and t
Assume that the processing has progressed to the est-reset command. te
The processing contents of the st-reset command are shown in FIG.

ステップ900では一致出力線480がオンかどうかを
調べ、オンであればステップ910で終了信号レジスタ
431〜434をリセットして次の処理に備える。ステ
ップ900で、一致出力線480がオンでないときは、
プログラム620.630の処理が終了するまで待つ。
In step 900, it is checked whether the coincidence output line 480 is on, and if it is on, the end signal registers 431 to 434 are reset in step 910 in preparation for the next process. At step 900, if match output line 480 is not on, then
Wait until the processing of programs 620 and 630 is completed.

このようにしてプログラム620,630の処理終了が
確認されると、test −set命令の後の命令の処
理が、中央処理装置101で続けられるが、この並列処
理の同期は、ハードウェアでとられているから、同期の
ための処理時間は短く、並列処理の高速性が十分に発揮
できる。
When the completion of the processing of the programs 620 and 630 is confirmed in this way, the processing of the instructions after the test-set instruction is continued in the central processing unit 101, but the synchronization of this parallel processing is not achieved by the hardware. Therefore, the processing time for synchronization is short and the high speed of parallel processing can be fully demonstrated.

〔発明の効果〕〔Effect of the invention〕

本発明により、反復計算でない場合にも計算機間の同期
が容易にかつ高速にとれるため、高速な並列処理が容易
に実現できるという効果がある。
According to the present invention, synchronization between computers can be easily and quickly achieved even when calculations are not repeated, so that high-speed parallel processing can be easily realized.

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

第1図は本発明の一実施例の全体を示すブロック図、第
2図は終了判定回路の構成を示す図、第3図は第1図の
実施例で実行されるプログラムの例、第4図〜第6図は
第3図に示した命令の処理内容を示した図である。 101〜104・・・中央処理装置、401〜404・
・終了判定回路1.411〜414・・アンド回路、4
21〜424・・・オア回路、431〜434・・・終
了信号レジスタ、441〜444・・マスク信号レジス
タ、470・・・−数回路、500・・・実行終了連絡
線。
FIG. 1 is a block diagram showing the entire embodiment of the present invention, FIG. 2 is a diagram showing the configuration of an end determination circuit, FIG. 3 is an example of a program executed in the embodiment of FIG. 1, and FIG. 6 to 6 are diagrams showing the processing contents of the command shown in FIG. 3. 101-104...Central processing unit, 401-404.
・End determination circuit 1.411 to 414...AND circuit, 4
21-424...OR circuit, 431-434...end signal register, 441-444...mask signal register, 470...-number circuit, 500...execution end communication line.

Claims (1)

【特許請求の範囲】 1、複数の中央処理装置と、各中央処理装置における処
理が終わつたときに終了信号を他中央処理装置へ送るた
めの連絡手段と、自中央処理装置内で予め指定した中央
処理装置から上記連絡手段経由で上記終了信号が送られ
てきたか否かを判定するための各中央処理装置対応の判
定手段とをもうけるとともに、主プログラムを実行する
中央処理装置は、並列処理可能な複数の処理の実行時に
、該処理を空いている中央処理装置へ割りつけて実行を
開始させると同時にその割りつけた中央処理装置を上記
指定した中央処理装置として自装置内の上記判定手段内
に記憶し、その後終了判定命令を実行することにより、
上記指定した中央処理装置のすべてから上記終了信号が
できたことを上記判定手段により検出すると、上記終了
判定命令に続く命令を実行するように構成したことを特
徴とする並列処理計算機。 2、前記判定手段は、各中央処理装置対応のビットをも
ちかつ前記指定された中央処理装置対応のビットのみ“
1”がセットされる第1のレジスタと、該第1のレジス
タのセット値を用いて上記指定された中央処理装置から
の前記終了信号が送られてきたときこれを検出するゲー
ト手段と、該ゲート手段により検出された終了信号を格
納し保持する第2のレジスタと、上記第1および第2の
レジスタの内容を比較し一致したときに上記指定された
中央処理装置のすべてから上記終了信号が送られてきた
ことを示す信号を出力する比較手段とから成ることを特
徴とする請求項1記載の並列処理計算機。 3、前記並列処理可能な処理を割りつけられた中央処理
装置は、該割りつけられた処理の終了時に終了信号発行
用の命令を実行して前記連絡手段へ終了信号を送出する
ことを特徴とする請求項1記載の並列処理計算機。
[Scope of Claims] 1. A plurality of central processing units, communication means for sending an end signal to other central processing units when processing in each central processing unit is completed, and communication means specified in advance within the own central processing unit. A determination means corresponding to each central processing unit is provided to determine whether or not the end signal has been sent from the central processing unit via the communication means, and the central processing unit that executes the main program is capable of parallel processing. When executing multiple processes, the process is assigned to a vacant central processing unit and execution is started, and at the same time, the assigned central processing unit is designated as the specified central processing unit in the determination means within the own device. By storing it in , and then executing the end judgment instruction,
The parallel processing computer is characterized in that the parallel processing computer is configured to execute an instruction following the termination determination instruction when the determination means detects that the termination signal is generated from all of the specified central processing units. 2. The determining means has bits corresponding to each central processing unit, and only the bits corresponding to the designated central processing unit are “
a first register to which "1" is set; gate means for detecting when the end signal is sent from the designated central processing unit using the set value of the first register; A second register stores and holds the end signal detected by the gate means, and the contents of the first and second registers are compared, and when they match, the end signal is sent from all of the designated central processing units. 2. A parallel processing computer according to claim 1, further comprising comparison means for outputting a signal indicating that the parallel processing has been sent.3. 2. The parallel processing computer according to claim 1, wherein the parallel processing computer executes an instruction for issuing a termination signal at the end of the assigned processing and sends the termination signal to the communication means.
JP24413188A 1988-09-30 1988-09-30 Parallel processing computer Pending JPH0293756A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24413188A JPH0293756A (en) 1988-09-30 1988-09-30 Parallel processing computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24413188A JPH0293756A (en) 1988-09-30 1988-09-30 Parallel processing computer

Publications (1)

Publication Number Publication Date
JPH0293756A true JPH0293756A (en) 1990-04-04

Family

ID=17114227

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24413188A Pending JPH0293756A (en) 1988-09-30 1988-09-30 Parallel processing computer

Country Status (1)

Country Link
JP (1) JPH0293756A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5204201A (en) * 1991-12-18 1993-04-20 Xerox Corporation Polymeric systems for overcoating organic photoreceptors used in liquid development xerographic applications

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5204201A (en) * 1991-12-18 1993-04-20 Xerox Corporation Polymeric systems for overcoating organic photoreceptors used in liquid development xerographic applications

Similar Documents

Publication Publication Date Title
US5056000A (en) Synchronized parallel processing with shared memory
JP2645669B2 (en) Data processing system
JPH04350758A (en) Workstation having multiprocessing capability
US6789258B1 (en) System and method for performing a synchronization operation for multiple devices in a computer system
JPS63501831A (en) Method and apparatus for minimizing overhead when executing nested DO loops
EP0335990B1 (en) Processor-processor synchronization
JPH0293756A (en) Parallel processing computer
JPH07160650A (en) Task execution controller
JPS60118977A (en) Pipeline control system
JPH0375832A (en) Virtual machine control system
JP2911180B2 (en) Synchronous control device
JPS61187044A (en) Information processor
JPH04302346A (en) Multiprocessor system
JPS63155330A (en) Microprogram controller
JPS6344231A (en) Inter-storage device data transfer system
JPH07141288A (en) Dma transfer system
JPH0797309B2 (en) Data processing device
JPS63208124A (en) Microprogram controller
JPH04362741A (en) Interruption control method
JPH01147773A (en) Vector processor
JPS62113239A (en) Microinstruction generation system
JPS58163046A (en) Information processor
JPS62282368A (en) Vector data processor
JPH03228161A (en) Interface control system for computer system
JPS63271635A (en) High-speed arithmetic processor