JPS61182161A - マルチプロセツサ処理方式 - Google Patents

マルチプロセツサ処理方式

Info

Publication number
JPS61182161A
JPS61182161A JP60021631A JP2163185A JPS61182161A JP S61182161 A JPS61182161 A JP S61182161A JP 60021631 A JP60021631 A JP 60021631A JP 2163185 A JP2163185 A JP 2163185A JP S61182161 A JPS61182161 A JP S61182161A
Authority
JP
Japan
Prior art keywords
message
processor
processors
messages
loop
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
JP60021631A
Other languages
English (en)
Inventor
Tadashi Hirose
広瀬 正
Masahiro Uminaga
正博 海永
Kousuke Sakota
迫田 行介
Hidehiko Akita
秋田 英彦
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 JP60021631A priority Critical patent/JPS61182161A/ja
Publication of JPS61182161A publication Critical patent/JPS61182161A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明はマルチプロセッサシステムの構成方式に係り、
特に述語論理型言語処理系の並列実行に好適なマルチプ
ロセッサシステムの処理方式に関する。
〔発明の背景〕
従来の方式は、下記の文献記載の様に、任意の2つのプ
ロセッサ間でのメツセージの受は渡しが可能な構成とな
っている。この方式は、プロセッサの使い方の自由度が
大きいという長所はあるが、そのメツセージ転送機構が
性能上のネックとなり、またそれを回避するには多大の
ハードウェアが必要となった。
文献:電子計算機基礎技術開発成果報告書推論サブシス
テム編 (財)新世代コンピュータ技術開発機構昭和59年3月 一般に並列処理可能な仕事の単位を″プロセス″と呼ぶ
。システムに投入される仕事は、最初は1つのプロセス
である。しかし、プロセスは実行中に並行処理可能な部
分を見い出すと、それを行なう別のプロセスを作り出す
。これがここで対象としているシステムに与えられる仕
事の持つ性質である。
従来のマルチプロセッサシステムは、プロセスとプロセ
ッサとの対応をできるだけ変えない様にすることを前提
としていた。一般にプロセッサ間でのメツセージ転送に
は時間がかかるからである。
1つのプロセスが新らたに別のプロセスを作った場合、
それを実行するための空プロセッサをさがし、そこへメ
ツセージを送る。そのため、任意の2プロセッサ間でメ
ツセージ転送ができるシステム構成が必要となる。
〔発明の目的〕
本発明の目的は、上記の必要を満たすためプロセッサ間
メツセージ転送機構の単純なマルチプロセッサ処理方式
を提供することにある。
〔発明の概要〕
本発明は、プロセスとプロセッサの対応を動的に変える
ことを可能としたものである。すなわちプロセスに含ま
れる各鼻環段階の1つずつを各プロセッサに順次割当て
る。
この方式は、プロセッサ間でのメツセージ転送量が多く
なるが、特定の2プロセッサ間だけ転送する単純なメツ
セージ転送機構で実現可能である。
〔発明の実施例〕
以下1本発明の一実施例を第1図〜第5図により説明す
る。
第1図は、システムの全体構成を4プロセツサシステム
の場合について描いたものである。プロセッサ11は入
出力用プロセッサで、本システムへの質問の投入および
解出力を行なう。プロセッサ12〜14はそれぞれリダ
クション処理を行なうプロセッサで、メモリ15を共有
している。また各々独自のメモリ16,17.18を持
つ。4つのプロセッサはストリームバス19によりルー
プ状に結合されている。
第2回に、このシステムの動作の概要を示すための簡単
な実行例を示す。メモリ15には、次の様なclaus
eが格納されているものとする。
p(a)。
p(x)i−P L(X)e P 2(X)。
p(x)i  pg(X)。
pa(x)i−P4(X)。
pa(b)− q(a)。
q(b)。
このclause群に対して、 ?  p(x)、q(x)。
なる質問を行なった時の解は x = aとx=bの2
つであるが、本システムでは、この解を4つのプロセッ
サで役割分担し、並列に処理して解を見い出す。
第2図は、4つのプロセッサ間の゛データストリームバ
ス”上のメツセージを示している。以下層に説明する。
■ 最初の質問(21)がプロセッサ11に加えられる
。これはただちにプロセッサ12へ送られる(22)。
■ プロセッサ21はこの質問の最初の項、すなわちp
(x)のりダクションを試みる。メモリ15上には、p
(a)とp(x) i P 1(xLp−(x)とp(
x)i  P 3(X)の3つのclauseがあるの
で、それぞれで展開した3つのメツセージ(23,24
,25)を発生し、これらを順にプロセッサ13に送る
ただし、unit clause  p(a)で展開し
たメツセージ23には、メツセージ22のp (x)項
が取り去られている。
■ プロセッサ13は、送られて来る3つのメツセージ
に対し、プロセッサ12と同様の処理を行なう。最初の
メツセージ(23)に対しては、q(a)とユニファイ
可能なcl a u s eの存在有無を調らべる。こ
の場合 unit clause q(a)が存在するので、メ
ツセージ23からq(a)を取り去った部分(26)を
次のプロセッサに送る。2番目のメツセージ(24)の
先頭の項p1(x)とユニファイ可能なclauseは
存在しない。そこで、このメツセージは消去される。
最後のメツセージ(25)の先頭の項はp (x)に置
き換え、メツセージ(27)として次のプロセッサへ送
られる。
■ プロセッサ14には2つのメツセージ(26,27
)が送られて来る。メツセージ26には質問部分がなく
、解の部分だけしか存在しない。この種のメツセージは
そのまま次のプロセッサへ送る。この様にして、ここで
は入力された2つのメツセージに対応した2つのメツセ
ージ(28,29)が次のプロセッサ11に送られる。
■ プロセッサ11では、送られて来るメツセージが解
だけを持つものであるかを調べ、もしそうであればそれ
をループ外へ出力する。
この場合、メツセージ28が解だけを持つメツセージで
あり、これはループ外へ出力される(メツセージ30)
。もう1つのメツセージ29はまだ質問項を持つので、
そのまま次のプロセッサへ送られる(メツセージ31)
■ 以上のループがくり返され、メツセージ31はプロ
セッサ12でメツセージ32に。
プロセッサ13.14でそれぞれメツセージ33.34
に変換され、プロセッサ11で解として出力される(メ
ツセージ35)。
以上の実行例について、各プロセッサの動作を時間軸上
に整理して示したのが第3図である。本システムの各プ
ロセッサは必らずしも同期的に動さしなければならない
理由はないが、ここでは動作の理解を容易にするため、
各プロセッサとも。
1つのメツセージを作り出すために必要とする時間は同
一であり、したがって同期的にメツセージ送受が行なわ
れるものと仮定して各プロセッサの動作を示した。図中
・印は、プロセッサが実動している時点を示し、特に0
印はメモリ15を参照して項の置きかえを行なっている
時点を示している。時刻3,4において並列処理が行な
われていることが判る。
ここに示した実施例では、第3図から明らかな様に2つ
の解が時刻3と時刻8で求まっているにもかかわらず時
刻5と時刻11までシステムから出力されない。これは
、プロセッサ11だけに入出力機能を持たせたからであ
り、入出力機能を各プロセッサに持たせ、第4図の様な
構成にすれば、第5図の様に時刻2と時刻6に解が出力
されるシステムを構築することができる。
(メツセージ追い越し処理) 上述の実行例では、並列に展開されるメツセージの数が
少ないため、メツセージ処理中のプロセッサにメツセー
ジを送る場合が発生していない。
しかし、たとえば第2図におけるメツセージ22が3つ
のメツセージ(23,24,25)だけでなく7つ以上
のメツセージに展開されたならば、メツセージ31はメ
ツセージ展開処理中のプロセッサ21に送られることに
なる(第3図参照)。
この例の場合、後から来たメツセージ(31)を優先し
て処理しなければならない。この処理を、ここでは″“
メツセージ追い越し処理′・と呼ぶことにする。
メツセージ追い越し処理を実現するため、各メツセージ
に優先番号を持たせる。システムに投入される初期の質
問メツセージの優先順をゼロとし、以降メツセージが展
開処理される毎にその番号を大きくして行く。同じメツ
セージから展開されるメツセージが複数存在する場合、
それらには同一の優先順位を与える。各プロセッサでは
、送られて来るメツセージのうち、優先番号の大きいも
のを優先して処理する。優先番号が同一のメツセージに
ついては、先着のものを優先する。
〔発明の効果〕
本発明によれば、ループ状のメツセージ交換網だけを持
つ簡単なマルチプロセッサシステム構成でありなから、
論理型言語をその仕様通りにかつ並列に処理できるとい
う効果がある。
【図面の簡単な説明】
第1図は1本発明実施例のハードウェア構成図、第2図
、第3図は1本発明におけるそれぞれそのハードウェア
上でのメツセージの空間的動きと時間的動きを示す図。 第4図は、第1図のハード構成を変形した別の実施例を
示すハードウェア構成図。第5図は、第4図のハードウ
ェア構成におけるメツセージの時間的動きを示す図であ
る。 11〜14・・・プロセッサ 15  ・・・・・・共有メモリ 16〜18・・・各プロセッサ専用メモリ19  ・・
・・・・ストリームバス 21〜35・・・メツセージ 第1図 62図

Claims (1)

  1. 【特許請求の範囲】 複数のcpuと複数のメモリとを基本構成要素とするマ
    ルチプロセッサ計算機システムにおいて、各プロセッサ
    をループ状に結合したストリームバスと、 各プロセッサ内部には、ストリームバスに対して一定方
    向にメッセージを逆受する手段を有し、メッセージをル
    ープ状に結合した上記各プロセッサに順次、一定方向に
    送りながら、1つの処理を進めることを特徴とするマル
    チプロセッサ処理方式。
JP60021631A 1985-02-08 1985-02-08 マルチプロセツサ処理方式 Pending JPS61182161A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60021631A JPS61182161A (ja) 1985-02-08 1985-02-08 マルチプロセツサ処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60021631A JPS61182161A (ja) 1985-02-08 1985-02-08 マルチプロセツサ処理方式

Publications (1)

Publication Number Publication Date
JPS61182161A true JPS61182161A (ja) 1986-08-14

Family

ID=12060411

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60021631A Pending JPS61182161A (ja) 1985-02-08 1985-02-08 マルチプロセツサ処理方式

Country Status (1)

Country Link
JP (1) JPS61182161A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2623641A1 (fr) * 1987-11-24 1989-05-26 Thomson Csf Machine multiprocesseurs pour l'execution de traitements numeriques paralleles
EP0691607A2 (en) 1994-07-06 1996-01-10 International Business Machines Corporation Data processing system and method
JP2011008658A (ja) * 2009-06-29 2011-01-13 Canon Inc データ処理装置、データ処理方法およびプログラム
JP2011170557A (ja) * 2010-02-17 2011-09-01 Canon Inc データ処理装置およびその制御方法、プログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2623641A1 (fr) * 1987-11-24 1989-05-26 Thomson Csf Machine multiprocesseurs pour l'execution de traitements numeriques paralleles
EP0691607A2 (en) 1994-07-06 1996-01-10 International Business Machines Corporation Data processing system and method
US5852734A (en) * 1994-07-06 1998-12-22 International Business Machines Corporation Method and compiler for parallel execution of a program
JP2011008658A (ja) * 2009-06-29 2011-01-13 Canon Inc データ処理装置、データ処理方法およびプログラム
JP2011170557A (ja) * 2010-02-17 2011-09-01 Canon Inc データ処理装置およびその制御方法、プログラム

Similar Documents

Publication Publication Date Title
JP3411273B2 (ja) プロセッサでのデータ処理方法及びデータ処理システム
US5568617A (en) Processor element having a plurality of processors which communicate with each other and selectively use a common bus
JP2770603B2 (ja) 並列計算機
US7386689B2 (en) Method and apparatus for connecting a massively parallel processor array to a memory array in a bit serial manner
US20030135351A1 (en) Functional pipelines
US20190228308A1 (en) Deep learning accelerator system and methods thereof
US20230041130A1 (en) Overlay layer for network of processor cores
JPH02230455A (ja) 外部記憶装置の割込み制御方式
JPS61182161A (ja) マルチプロセツサ処理方式
US20230403232A1 (en) Data Transmission System and Method, and Related Device
US20240168639A1 (en) Efficient reduce-scatter via near-memory computation
CN116455612A (zh) 一种隐私计算中间数据流零拷贝装置及方法
Abu-Amara et al. PSi: A silicon compiler for very fast protocol processing
JPS6347835A (ja) パイプライン計算機
RU2790094C1 (ru) СПОСОБ ПАРАЛЛЕЛЬНОЙ ОБРАБОТКИ ИНФОРМАЦИИ В ГЕТЕРОГЕННОЙ МНОГОПРОЦЕССОРНОЙ СИСТЕМЕ НА КРИСТАЛЛЕ (СнК)
JPH08263293A (ja) アプリケーションの開発・実行方法
Fisher A multi‐processor implementation of occam
JPH02108150A (ja) コンピュータの並列分散処理装置
JPH01120635A (ja) プロセス間通信におけるデータ管理方法
JPS62222350A (ja) 情報処理装置
Kung Advances in multicomputers
Méhat et al. Controlling and programming the SPHINX multi-SIMD pyramid machine
JPH04104355A (ja) マルチプロセッシング方式
JPH09198355A (ja) プロセッサシステム
JPH0314064A (ja) コード変換処理方式