[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JPS6361362A - プログラム分割処理方式 - Google Patents

プログラム分割処理方式

Info

Publication number
JPS6361362A
JPS6361362A JP20366986A JP20366986A JPS6361362A JP S6361362 A JPS6361362 A JP S6361362A JP 20366986 A JP20366986 A JP 20366986A JP 20366986 A JP20366986 A JP 20366986A JP S6361362 A JPS6361362 A JP S6361362A
Authority
JP
Japan
Prior art keywords
program
processing
procedure
task
transmitting
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
JP20366986A
Other languages
English (en)
Inventor
Manabu Idemoto
出本 学
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 JP20366986A priority Critical patent/JPS6361362A/ja
Publication of JPS6361362A publication Critical patent/JPS6361362A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、並列に動作する多数の計算機等情報処理装置
に係シ、特にそのための簡潔なプログラムの作成方法に
関するものである。
〔従来の技術〕
従来、プログラムを複数に分割して複数のタスクで実行
する方法については、アイ・6 ・イー・イー、コンピ
ュータ(1984年7月)第62頁から第69頁(IE
EE 、 COMPUTER、July(1984)、
 pp62−69)において論じられている。しかし、
分割したプ貸グラムの間に依存関係が存在する場合につ
いては、従来の機能では簡潔に示すことができない。
ここでタスクとは、プログラムの命令を実行する仕事の
単位である。一般的な計算機等情報処理装置では、−台
で複数のタスクを持ち、複数のプログラムの実行が可能
である。
ここでの依存関係とは、データの送受信のように送信元
と受信先が存在し、受信先は送信元から送られて来るデ
ータを待つために、送られてくるまで次の処理を行9こ
とができず、次の処理の実行は送信元に依存する関係で
ある。依存関係において、対応する送信元と受信先が存
在する場合を依存関係が成立する、対ろする送信元また
は受信先が存在しない場合を依存関係が成立しない、と
表現する。
〔発明が解決しようとする問題点〕
上記従来技術は依存関係の簡潔な表現の点について配慮
がされておらず、そのためにプログラムの種類、タスク
の個数の増加を招きプログラムが複雑になる問題があっ
た。
たとえば、4個の数値列を右へ1つシフトを行い、空い
た領域にOを入れる処理全行うプログラムを数値列の要
素ごとに作成することを考える。
このプログラムの基本動作は、第2図に示すプログラム
Aのようになる。プログラム人は、まず自分の値Vを設
定する。そして、Vioutへ出力し、inからの入力
をあらたにVの値とする動作を行う。プログラム人を4
個連結したものを第3図に示す。これを用いて処理全行
うと1両端の依存関係が成立してAないので、左端のプ
ログラムAの入力は不明で0が入力されるとは限らず、
右端のプログラム人の出力光が存在しないので誤動作の
可能性がある。これらを従来技術で解決するには、次の
ような方法がある。
(1)左端のプログラムAの入力に0を送るプログラム
と右端のプログラムAの出力を受けるプログラムCを付
加する(第4図)。
(2)左端のプログラムAの入力全削除し、■の値を送
った後にVの値をOとするプログラムDと右端のプログ
ラム人の出力を削除したプログラムEを作成し、左端を
右端のプログラムをそれで置きかえる。
(3)連結したプログラムの左端と判定した時はプログ
ラムDの動作を、右端と判定した時はプログラムEの動
作を、その他の時はプログラム人の動作を行うプログラ
ムFk作成し全プログラムをそれで置きかえる(第6図
)。
これらの方法により、依存関係全成立させることができ
たが、(1)ではプログラムの種類が1種類から3穫類
へ、タスク数は4個から6個へ増加し、(2ではタスク
数には変化は無いが、プログラムの種類は1種類から3
種類へ増加し、(3)ではタスク数、プログラム種類と
も変化がないが、プログラムが複雑になる。
本発明の目的は、このようなプログラムの変更を行うこ
となく、第3図の構成で処理を行われるようにすること
である。
〔問題点を解決するための手段〕
上記目的は、成立しない依存関係を識別し、例外処理を
行う機能を依存関係の処理を行5手続き中に設けること
により、達成される。
成立しない依存関係を成立させる方法としては、対応す
る依存関係を成立させるプログラムを持ったタスクを仮
定し、これを用りて形式上、全ての依存関係を成立させ
る(ここで仮定したタスクを今後、ダミータスクと呼ぶ
)。そして、このような依存関係の認識は依存関係の処
理の実行時に、依存関係の対応光のタスクがダミータス
クであるか否かを識別することによって行う。そのため
ダミータスクを識別する情報さえもてばよく、実際のタ
スクを用意する必要はない。
ここで手続きとはシステムで用意する処理ルーチンであ
プ、手続き名を呼び出すことでデータ送受信処理を行う
ことができるものである。今後、〔作用〕 依存手続きで、対応するタスクがダミータスクであると
判定した時、次のよつな動作を行う。
(υ 依存手続きが送信動作を行う場合は、送信の処理
は行わず、送受信完了の状態を設定する処理を行り。
(2)依存手続きが受信動作を行う場合は、前もって定
義されていたダミータスクの送信値を受信する領域に設
定する処理と送受信完了の状態を設定する処理を行う。
以上のようにすることで、相手の存在しない送信または
受信を行うことが無くなるので、プログラムの正常な動
作が保障される。
〔実施例〕
本実施例は、n行n列の行列CX++] (’ =L・
・・#  n J ==l、・・・、n)’e係数行列
に持つ連立−次方程式 %式%) を解くための計算の一部分であシ、ガウス消去法f o
 r  k = 1 、  n−1end における各行列要素T+h、XIJの計算を異なるタス
クに割)当てて、並列に実行する場合を示すものである
上記の計算手順は、kit、  2.・・・、n−1と
変えて各にの値に対して順次(Q部を実行し、(a)部
においてはさらにiをに+1.に+2.・・・、nと変
えて各に、iの値に対して順次Φ)部を実行し。
さらに(b)部においてJtk+x、 k+2.  ・
・・、nと変えて各kl  1FJO値に対して順次(
C)部を実行する。
まず1(=lにおける計算の実施過程を示す。
i=に+1=2 Tit :Xgl / X1l j  =に+1=2 Xzx=xtz  Tzt’X−xtzj =j+x=
3 Xll =X2s  Txt*Xts j =J+1=+1 )(2,=)(2,Tz1薫Xxm i = i −)−1= 3 T31  =xs1/xsx j=に+1=2 Xmm =X32   Tss’kX1zj  =j+
1=n X s m = X s *  T 31 ’k X 
1*i = i  −1−1= n T w+l ” X ml / X 11j=に+1=
2 X IIx = X ml −’r ml 芳Xl!j
=j+1=n X am ”  Xmm    Tut →←XI 風
筒1図は、上記計算を並列実行するために各要素ごとに
タスクを割シ当てた時の構成を示す。各タスクは、第7
図の1行目の要素の値を送るプログラムa、第8図の1
行目の要素の値を中継し乗数値を計算し送シ出すプログ
ラムb、第9図の1行目の要素の値と乗数値全中継しあ
らたな要素の1全計算するプログラムCのいずれかを実
行する。
次に、この実行過程を示す。
最初は、全てのプログラム2が停止状態にあるものとす
る。まず1行目全部のプログラムaが起動される。起動
されたプログラムaは、各自要素の値4を各列2行目の
プログラムb、cへ送信する。2行1列目のプログラム
batは1行1列目の要素X目のIt’に受信3して起
動される。そして、受信したXllの値をプログラムb
31へ送信し、2行1列目の要素X21とXllの商T
ztを求め(T意1= Xz+/ Xll ) 、Tz
lの値をプログラムCamへ送信する。2行2列目のプ
ログラムCzzは、1行2列目の要素Xtzの値と2行
1列目の乗数値T21を受信して起動する。そして、x
tzO値をプログラムCsxへ送信し、Tzlの値全プ
ログラムσ■へ送信し、2行2列目の要素X22からT
zlの値とXllの値の積を引いた値をあらためてX2
2とする(Xzt=Xzz  Tel +XB)。これ
らのプログラムの動作を行2列方向に拡張して実行する
と、n行目とn夕1j目のプログラムb、cのダミータ
スク5への送信に達する。ダミータスクへの送信の処理
は、次のように行われる。
上記の実行過程の説明では省略したが、データを他のプ
ログラムへ送信する時は、依存手続きである送信手続き
11を呼び出す。呼び出された送信手続きには、受信先
のタスクの識別番号と送信値が与えられる。送信手続き
は5まず受信先がダミータスクであるか否かを判定する
ために、各タスクの情報を格納したテーブル6のダミー
タスク識別の項目8を調べる。なお、この情報は前もっ
て定義されているものとする。調べた結果がダミ−タス
クでないなら送信処理を行い、ダミータスクなら何もし
ないで送信終了処理を行う。ここでは、受信先はダミー
タスクなので、送信手続きでは何も行われない。そして
、n行目とn列目のプログラムがすべて完了した時点で
、k=1における前進消去が完了する。
k=2.・・・、n−1の前進消去については、正方行
列XIj(1=kn ・” +  ”  J =kp”
・*  n)について同様の処理を行うことで、前進消
去演算が完了する。
本発明を用いない従来技術との効果の比較では次のよう
になる。
(1)ダミータスクの代シに受信用のプログラムを与え
ると、プログラムの種類が11類、タスク1数が(2n
−1)個増加する。
(2)n行目とn列目のプログラムb、  cの送信を
削除すると、プログラムbは2種類、プログラムCは3
穫類になシ、プログラムの種類が3種類増加する。
(3)プログラムbt CVCn行目かn列目なら送信
を抑える制御を加えると、プログラムの種類、タスク数
とも変化しないが、制御のためにプログラムが複雑にな
る。
それに対し、本発明のようにダミータスクによって成立
しない依存関係を示し、依存手続きの中でそれを識別し
て例外処理を行りことで、プログラムの種類やタスク数
を増加させずにかつ、依存関係の制御をプログラム上に
持ち込ませないのでプログラムの簡略化ができる効果が
ある。
〔発明の効果〕
本発明によれば、依存関係の成立の可否の識別が実行中
に可能になシ、この識別と成立しない場合の処理を依存
手続きに組み込むことで、依存関係が成立しない場合の
処理をプログラム上で区別せずに表現できるので、プロ
グラムの種類とタスク数の増加を押えたシ、プログラム
の簡略化が可能となる。
【図面の簡単な説明】
第1図はこの発明の実施例による、n行n列の行列にお
ける1行目の要素によるガウス消去法の前進消去を行う
プログラムの構成とダミータスクの識別例、第2図は要
XをシフトするプログラムA%第3図はプログラムAを
用いて数値列をシフトさせる構成例、第4図、第5図、
第6図は第3図の欠点を従来技術で補つ九例、第7図、
第8図。 第9図は第1図で用いたプログラムa、b、Cの機能を
示す。 1・・・タスク、2・・・プログラム、3・・・送受信
関係。 4・・・送受信される値、5・・・ダミータスク、6・
・・タスクの情報テーブル、7・・・タスクの識別番号
、8・・・ダミータスク、9・・・受信記号、10・・
・送信記号、■ 1  図 (久p !

Claims (1)

    【特許請求の範囲】
  1. 1、1つのプログラムを複数のプログラムに分割して得
    られる各分割プログラムを、プログラム間のデータ通信
    等に関係する部分を実際にはデータ送受信をともなわな
    い送信元または受信先をも設定するように生成し、送受
    信処理プログラムに送信元または受信先が実際にデータ
    送受信をともなわないものであるか否かを識別する判定
    処理をプログラム中に不要としたことを特徴とするプロ
    グラム分割処理方式。
JP20366986A 1986-09-01 1986-09-01 プログラム分割処理方式 Pending JPS6361362A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20366986A JPS6361362A (ja) 1986-09-01 1986-09-01 プログラム分割処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20366986A JPS6361362A (ja) 1986-09-01 1986-09-01 プログラム分割処理方式

Publications (1)

Publication Number Publication Date
JPS6361362A true JPS6361362A (ja) 1988-03-17

Family

ID=16477891

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20366986A Pending JPS6361362A (ja) 1986-09-01 1986-09-01 プログラム分割処理方式

Country Status (1)

Country Link
JP (1) JPS6361362A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484167A (zh) * 2014-12-05 2015-04-01 广州华多网络科技有限公司 任务处理方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484167A (zh) * 2014-12-05 2015-04-01 广州华多网络科技有限公司 任务处理方法及装置

Similar Documents

Publication Publication Date Title
US3229260A (en) Multiprocessing computer system
JPS61276032A (ja) 情報処理装置
JP2746502B2 (ja) 半導体集積回路装置の製造装置及び製造方法並びに電子回路装置
CA2304609A1 (en) Autonomously cycling data processing architecture
JPS6361362A (ja) プログラム分割処理方式
CN117608861A (zh) 一种中央处理器cpu装置
JPS5958580A (ja) マスク付きベクトル演算処理装置
RU2092895C1 (ru) Устройство представления и использования знаний
JPS5969845A (ja) デ−タ駆動制御方式
JP3196985B2 (ja) データパス表示装置
JP2509936B2 (ja) 出力制御装置
JP2696903B2 (ja) 数値計算装置
US20220334987A1 (en) Systems, apparatus, and methods of conveyor belt processing
JPH04355836A (ja) 仮想計算機間データ転送処理装置
JPS63204322A (ja) 情報処理装置
JPS63250738A (ja) デ−タ処理用プロセツサ
JPH0343865A (ja) ベクトル・データ処理装置
JPH02205987A (ja) 演算処理システム
JPS60682B2 (ja) 論理演算装置
CN112416951A (zh) 数据传递方法及其装置、计算机可存储介质
JPS6371761A (ja) オンラインシステムのシステム条件定義方式
JPS63278150A (ja) 論理シミュレ−ション装置
JPH0646412B2 (ja) デ−タフロ−プロセツサ
Cotton Investigation of Sequential Machine Design Techniques for Implementation of a TRAC Scanning Algorithm
JPH0293756A (ja) 並列処理計算機