JPH07152788A - 並列検索方法及びその方法を用いた並列演算処理コンピューターシステム - Google Patents

並列検索方法及びその方法を用いた並列演算処理コンピューターシステム

Info

Publication number
JPH07152788A
JPH07152788A JP6142081A JP14208194A JPH07152788A JP H07152788 A JPH07152788 A JP H07152788A JP 6142081 A JP6142081 A JP 6142081A JP 14208194 A JP14208194 A JP 14208194A JP H07152788 A JPH07152788 A JP H07152788A
Authority
JP
Japan
Prior art keywords
task
block
parallel
application
arbitration
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
JP6142081A
Other languages
English (en)
Inventor
Stephen Victor Chenoweth
ヴィクター チェノウェス ステファン
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.)
NCR International Inc
NCR Voyix Corp
Original Assignee
AT&T Global Information Solutions Co
AT&T Global Information Solutions International Inc
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 AT&T Global Information Solutions Co, AT&T Global Information Solutions International Inc filed Critical AT&T Global Information Solutions Co
Publication of JPH07152788A publication Critical patent/JPH07152788A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/45Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【目的】 本発明は、並列演算処理コンピュータの並列
検索方法を提供するものである。 【構成】 あらかじめ定められた問題を解決するため
に、並列演算処理コンピュータの長所を利用する並列検
索方法において、異なり、拮抗した演算処理手順を同時
に実行し、問題解決を行うステップを有する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、並列演算処理コンピュ
ーターに関し、特に並列検索方法に関するものである。
【0002】
【従来の技術】並列演算処理はビジネスや科学的問題に
すばやい解決手段を提供する。並列演算処理コンピュー
ターは複数の中央演算処理装置(多重CPU)を有する
コンピューターや、単一CPUと、一つまたはそれ以上
の複合演算処理装置を備えたコンピューターなどがあ
る。 並列演算処理の使用は単式演算処理装置を使用す
るよりもすばやく演算ロードが多重演算処理要素と関連
したリソースに行き渡り、求められた結果を早く出すこ
とができる。演算ロードをすばやく行き渡らす一般的な
アプローチは、それぞれのコンピューターの処理装置の
異なったデーター要素において、同じアルゴリズムある
いはそのアルゴリズムの協同部分で行なうというもので
ある。個々のデータリソースは、より大きなアルゴリズ
ムの部分集合を実行してもよい。
【0003】
【発明が解決しようとする課題】しかしながら、従来の
方法においては、データーの位置を突きとめる検索、複
雑な問題の解法をあみだす検索等、計算機としての集中
的なタスクにおいても、検索アルゴリズムの選択が非効
率さの最も大きな原因となっている。(アルゴリズムは
検索を行なう時に使用される方式、または方法理論とい
ったものである。)並列演算処理でさえ、アルゴリズム
の選択によって検索を完成させる所用時間に大きな差が
ある。この所用時間の大きな差は問題の明細や検索され
るデータの微妙な違いによって起こるので、検索実行前
または検索実行中でさえ最適なアルゴリズムの選択は困
難、または不可能である。
【0004】このことから、異なった検索アルゴリズム
を適用したり、検索アルゴリズムを変える並列検索方法
を提供し、並列演算処理コンピューターの演算力を最大
限に引き出す活用法が求められている。
【0005】また従来の方法は、一般にコンピュータ演
算処理装置などの並列リソース間でより頻繁な交信を必
要とする。単一の検索アルゴリズムが用いられてデータ
のみが小分割された場合、ますますデータは細かく分割
され、通常はますます頻繁な交信が必要とされる。この
ように従来の方法は、例えば、内部演算処理装置間の交
信頻度が障害となり、コンピュータの実用に見合う範囲
において限界を生ずる場合がある。
【0006】よって本発明は、上記問題点を解消するた
めになされたものであり、別々に拮抗する検索手順を用
いて検索タスクを達成する並列演算処理コンピュータの
並列検索方法を提供し、また、その並列演算処理コンピ
ュータの長所を利用し、別々に拮抗する手順を実行して
予め定められた問題を解決する並列検索方法を提供す
る。
【0007】
【課題を解決するための手段】本発明はあらかじめ定め
られた問題を解決するために、並列演算処理コンピュー
タの長所を利用する並列検索方法において、異なり、拮
抗した演算処理手順を同時に実行し、問題解決を行うス
テップを有する。
【0008】また、本発明は並列演算処理コンピュータ
ーシステムにおいて、応用プログラムを実行する第一の
演算処理装置を有した応用要素と、第一の方法で応用プ
ログラムによって作成された問題を解決する第二の演算
処理装置を有する第一の問題要素と、第二の方法で、該
第一の方法とは別に、第一の方法と同時に拮抗しながら
応用要素によって作成された問題を解決する第三の演算
処理装置を有する第二の問題要素と、第一の演算処理装
置と第二の演算処理装置および第三の演算処理装置との
間の相互作用を調停し、プログラムによって作成された
問題を解決する第一、第二の方法を作成する第四の演算
処理装置を有する調停要素とを有するものである。
【0009】
【作用】本発明における並列検索方法は、別々の拮抗し
た検索手順を用いてデータの集合体を検索する。検索問
題はデータ管理アプリケーションによって系統立てられ
ている。拮抗する検索手順は、検索問題と既に存在する
法則の系統立てから作成され実行される。加えて、それ
ら拮抗する検索手順は、その効果についての情報を得る
ため調査され、その情報に基づいて拮抗する検索手順を
変更することができる。
【0010】時間制限が必要とされるこれらの検索にお
いて、実行開始時にタイマーが作動し、制限時間内での
最初の解答か、もしくは予め定められた基準下での最も
適切な解答がデータ管理アプリケーションに返される。
【0011】本発明で、並列演算処理はコンピュータ演
算処理装置などの並列リソースを使用することによって
行われ、それぞれのリソース上で検索タスクを繰り返し
ながら、選択的アルゴリズムを実行するか、もしくは与
えられたアルゴリズムに対する変化形を実行する。例え
ば、データベース検索において、本発明の方法は異なる
検索プランを作成し、同時にその検索プランを実行す
る。また、人工知能検索においては、本発明の方法は異
なるアルゴリズムを用いるか、もしくは同様のアルゴリ
ズムを有する異なる発見的ウェートを用いて同様の検索
を処理する。
【0012】本発明は既存の並列処理方法とは異なる。
なぜならば、各々のリソースがより大きなアルゴリズム
の部分集合を実行する代わりに、異なるタスクが既存の
コンピュータリソースの区分によりそれぞれ実行される
からである。複合タスクの唯一の共通処理は、それら拮
抗する検索を初期化し、中間結果と最終結果が返される
時にそれらを記録または比較し、必要に応じていずれか
のリソースに向き直り、満足すべき解答が返されたか、
または時間制限がきた時に残りのすべてのリソース上の
活動を終了することである。
【0013】
【実施例】図1において、並列処理システム10は、応
用要素12、調停要素14、一次問題要素16、二次問
題要素18を有する。
【0014】応用要素12は、ユーザーによって入力さ
れた問題ステートメントを実行する。
【0015】この応用要素12はパーソナルコンピュー
ターか、他のワークステーション、または大きなサーバ
ーである。
【0016】応用要素12は、応用要素CPU20、応
用メモリー22、応用入力装置24、応用ディスプレー
26を有する。応用入力装置24はキーボード入力装置
を有してもよい。
【0017】調停要素14は、応用要素12の命令に従
い一次問題要素16と二次問題要素18の動作を制御す
る。調停要素14は、調停要素CPU28、調停メモリ
ー30、調停入出力装置32を有する。この調停要素1
4は、既存のハイパワーワークステーションや、大規模
並列処理機器におけるノードである。
【0018】一次問題要素16と二次問題要素18は問
題を解決し、調停要素14を介し、それらの解答を応用
要素12に返す。
【0019】一次問題要素16は、一次問題CPU4
4、一次問題メモリー46、一次問題入出力装置48を
有する。二次問題要素18は、二次問題CPU50、二
次問題メモリー54、二次問題入出力装置52を有す
る。この一次問題要素16と二次問題要素18は、ハイ
パワーワークステーションやデータベースサーバー、大
規模並列処理機器における独立ノードである。
【0020】一次問題要素16と二次問題要素18は、
与えられたアルゴリズムの変化形を個々に用いて、要求
された問題を解決するに十分なCPU、メモリー、入出
力装置の容量を有している。例えば、一次問題要素16
と二次問題要素18のそれぞれに各一つづつ、データベ
ースが複写されると、一次、二次問題要素はそれぞれ固
有のデータベースソフトのコピーを有することになる。
【0021】図2に関し、調停CPU28は、タスク開
始部34、タスク終結部36、タイマー38、規則更新
部40を有する。好ましくはこれらの構成要素がソフト
ウェアとして実行されることであるが、しかしハードウ
ェアとして実行されることもある。タスク開始部34
は、一次問題要素16と二次問題要素18上で問題実行
を始め、規則を用い一次問題要素16と二次問題要素1
8に対してアルゴリズム変化形の割り当てを決定する。
【0022】タスク終結部36は一次問題要素16と二
次問題要素18から問題解法メッセージを受け取り、好
ましい応答を選択して応用要素12に返す。
【0023】タイマー38はあらかじめ設定された時間
が過ぎたのち、一次問題要素16と二次問題要素18か
ら受け取った応答あるいは、さらに受け取る応答のない
ことをタスク終結部36に知らせる。
【0024】規則更新部40は、図2の調停CPU28
の外に示される共用メモリーと、記憶装置41に規則を
設定する。共用メモリーと、記憶装置41は、調停メモ
リー30と入出力装置32を有する。
【0025】図3に関し、タスク開始部34は、入力処
理タスク60、状況報告タスク62、問題分析タスク6
4、アルゴリズム割り当てタスク66、プロフィール作
成タスク68を有する。入力処理タスク60は応用要素
12から処理要求を受け取り、確認し、系統立てを行な
う。入力処理タスク60はまた、タスク開始部34内に
おける次の進行先である問題分析タスク64か状態報告
タスク62のどちらかにこれらの要求を送る。
【0026】状況報告タスク62は、応用要素12に、
未決定問題実行タスクの状態を報告する。これは、これ
らのタスク操作において検出された内部エラーを報告
し、かつ、その操作を特徴づける統計データを報告する
ものである。
【0027】問題分析タスク64は応用要素12から受
け取る問題の操作方法を決定する。問題特定規則を適用
し、問題を分析してもよい。
【0028】アルゴリズム割り当てタスク66は、問題
分析タスク64により選択された、別のアルゴリズム変
化形を一次問題要素16と二次問題要素18に送る。
【0029】プロフィール作成タスク68は、与えられ
た問題のその終結条件を含めた要約を作成し、タスク終
結部36に送る。
【0030】図4に関し、タスク終結部36は、入力操
作タスク70、状態報告タスク72、終了判定タスク7
4、応答翻訳タスク76、プロフィール完成タスク78
を有する。入力操作タスク70は、タイマー38から受
け取る区間時間満了メッセージと同様に、一次問題要素
16と二次問題要素18から処理終了メッセージを受け
取り、確認をし、系統立てを行なう。入力操作タスク7
0はまた、タスク開始部34から問題プロフィール等の
メッセージを受け取る。
【0031】タスク終結部の状態報告タスク72は、進
行中の問題実行タスクの完了状況や、検出された内部エ
ラー、関連統計データを応用要素12に報告する。
【0032】終了判定タスク74は、共用メモリーと記
憶装置41からの規則、あるいは応用要素12から送ら
れる情報のいずれかを用いて、与えられた問題タスク終
結時を判断する。
【0033】応答翻訳タスク76は、タスク終了とその
終了結果を応用要素12に報告する。
【0034】プロフィール完了タスク78は、完了した
タスクについての統計データや記述的データを更新し、
この情報と問題プロフィールを規則更新部40に送る。
【0035】図5に関し、規則更新部40は、入力操作
タスク80、状態報告タスク82、規則保守タスク84
を有する。入力操作タスク80は、応用要素12とタス
ク終結部36から受け取ったメッセージを処理し、これ
らのメッセージを規則保守タスク84と状態報告タスク
82に分配する。
【0036】状態報告タスク82は状況を報告し、共用
メモリーと記憶装置41に蓄積された規則に変わり、応
用要素12に変わる。
【0037】規則保守タスク84は、応用要素12から
送られた規則を割り振る手動保守を実行する。規則保守
タスク84はまた、タスク終結部36から問題プロフィ
ールといっしょに送られた作業結果に基づき規則を割り
振る自動保守を介して、これらの規則を修正する。
【0038】図6においては、本発明方法を用いたシス
テム10の動作が詳細に説明されており、スタート90
から始まる。ブロック92で、応用要素12は問題ステ
ートメントを作成し、これを調停要素14に送る。この
問題ステートメントはデータベース照会や、発見的検索
などである。単純なケースでは、ユーザーは問題や照会
がある場合、端末機のキーボードをたたいて入力するこ
とが出来る。より複雑なケースにおいては、ユーザー入
力は応用要素12上でハードウェアとソフトウェアを用
いて前もって処理されるかもしれない。このような前処
理の実例は、ユーザー照会を標準的データベース専門用
語に置き換えているものである。
【0039】この説明で使われているように、用語「検
索」すなわち「SEARCH」は、「何かを探す」とい
う一般的な概念を含む広範な意味をもつ。「特定フィー
ルド定義」も同様である。「SEARCH」という用語
は人工知能で用いられる「CONSTRUCTIVE
SEARCH」(建設的検索)にほとんどなぞらえるこ
とが出来る。建設的検索は、「解法のために必要な一連
の行動がこれまでに知られていないとしても、二者択一
の試行錯誤検索によって判断されるに違いない普遍的な
問題解決機構」である。検索問題を系統立てるに必要な
ことは、問題の状況設定、状況変化を示すオペレーター
の収集データー、初期状態、最終状態の記述である。そ
の時、タスクは初期の状態から最終の状態に変えていく
オペレーターのシーケンスを見出す作業の一つとなる。
【0040】人工知能の検索と、コンピュータ科学の他
の領域で行なわれる検索との間でしばしば見られる重要
な違いは、検索されている物の系統立てされる以前に明
示された存在に関する。例えばデータベース検索におい
ては、通常探し出されるデータはすでに存在しているも
のである。重要な点は、このデータをのちのアクセスの
ために、系統立てる最善の方法を得ることにある。人工
知能検索では、「問題解法」は一般的に検索推移として
作成されているので、最終的に求められた結果のおおよ
その推定のみが解答発見に先立って系統立てられること
になる。
【0041】検索の目的や帰着が、ふつう非常に一般的
な方法で表現されている点においても人工知能検索は異
なっており、特定した解答や、解答のパターンの多岐に
わたる多様性が最後には「解答」ということになる。す
なわち、通常多くの選択可能な解答があるということで
ある。例えばゲームプログラムの一部である検索におい
ては、いくつかの「ウィニングプレイ」(勝利プレイ)
が受け入れ可能なゴールとなる。
【0042】本発明の方法においては、調停要素14に
送られる問題ステートメントは、拮抗するリソースの使
い方を特定する。例えば問題ステートメントは問題要素
16か18のうちどちらか問題解決の早いほうから最初
の応答を返すように指示する。もしくは、問題ステート
メントは、所定の方法で与えられた時間内で発見した最
も好ましい応答を返すよう指示する。
【0043】ブロック94に進み、調停要素14はアル
ゴリズムの変化形を作成し、問題を解決する。
【0044】ブロック96では、調停要素14は問題ス
テートメントとアルゴリズムの変化形を一次問題要素1
6と、二次問題要素18のそれぞれに送り、タイマー3
8を始動させる。
【0045】ブロック96では、一次問題要素16と、
二次問題要素18はそれぞれ所定の方法で問題解決を試
みる。一次問題要素16は、第一次アルゴリズム変化形
を用いて問題解決を試み、調停要素14に解答を返す。
二次問題要素18は、第二次アルゴリズム変化形を用い
て問題解決を試みる。
【0046】ブロック98において、調停CPU28
は、一次問題要素16と二次問題要素18からの応答、
およびタイマー38からの応答のあらかじめ定められた
組合せを待つ。
【0047】ブロック99において、この方法は、少な
くとも一つの解が指定時間内で返されたかどうかを判断
する。万一、問題要素16も18も何も解答していなか
った場合、調停要素14のタイマー38は、調停要素1
4がブロック100においても応用要素12にエラー応
答をもどし、ブロック109で終了することが出来る。
もし問題要素16か18のどちらか一つでも解答を返し
ていたならば、この方法はブロック102に進む。
【0048】ブロック102では、調停要素14が問題
要素16と18のうちどちらか一つか、または両方とも
解答を返したかどうか判断する。どちらか一つの問題要
素が指定の時間内でその問題を解決した場合、調停要素
14は、この解答をブロック104で応用要素12に返
し、この方法はブロック108に進む。もし問題記述が
最初に見つけだされた解答の返却を求めた場合、それは
調停要素によって応用要素に返され、残りの問題要素上
で稼働しているタスクは無効となる。
【0049】ブロック106において、問題要素の16
と18の両方が指定時間内で問題を解決した場合、調停
要素14は、問題ステートメントによって特定された望
ましいステートメントに従い、両方の解答を応用要素1
2に返すか、またはどちらか一つの解答だけ返す。
【0050】ブロック108において、応用要素12は
解答を受取り、処理し、この方法を終える。応用要素1
2は応用メモリー22に解答を保存し、応用ディスプレ
ー26上で解答を表示するか、または他の応用入出力装
置に解答を書き込む。
【0051】なお、応用要素12は、大きなジョブの進
行状況、一般的状況、あるいは調停要素の内部作業効率
について、調停要素14とやりとりを交わす場合があ
る。この目的のために、三つの内部タスク(開始部3
4、終結部36、規則更新部40)が各々それ自身の状
況報告サブタスクを有している(図7〜11参照)。
【0052】応用要素12はまた、例えば、新しいテー
ブルがデータベースに加えられた時、タスク開始部34
によって使われる規則を更新する必要がある。
【0053】ブロック109でこの方法が終結する。図
7を用い、スタート110から始まる、タスク開始部3
4の動作をより詳細に示す。ブロック112ではタスク
開始部34が応用要素12からの入力を待つ。ブロック
114では、タスク開始部34が、応用要素12からの
入力メッセージを受け取る。調停要素14により応用要
素12から受け取られる問題ステートメントは、入力操
作タスク60によって処理されるため順番を待つ。今日
のシステムにおいて一般的に多重スレッド化タスク(い
くつかの一連の仕事を同時並行で行なう)のために行な
われているように、実際の順番待ちはオペレーティング
システムソフトウェアによってなされる。ブッロク11
6では、タスク開始部34はそのメッセージが状態要求
かどうか判断する。簡単な状態報告タスクは状態報告タ
スク62によって操作される。状態報告に対する応答は
直接応用要素12に返される。メッセージが状態要求で
あった場合は、タスク開始部34がブロック118で入
力状態報告を作成し、ブロク120で応用要素12に状
態メッセージを返す。そしてブロック121で、この方
法はスタート110に戻る。
【0054】ブロック116にもどって、メッセージが
状況要求でなかった場合、タスク開始部34が、調停メ
モリー30、または他の入出力装置32から受取った規
則を用いて、ブロック122でどちらのアルゴリズムを
一次問題要素16と、二次問題要素18とに使用すべき
かを決定する。問題分析タスク64は、例えば問題分析
においてどちらの規則設定を適用すべきか、といったよ
うな一般的な問題処理の方法を決定する。問題分析タク
ス64は、一次問題要素16と二次問題要素18上で試
されるアルゴリズムの変化形を確定するために、詳細分
析を行なう。例えば、規則が次のような通知をする場合
がある。「もし問題がデータベースの三つのテーブルに
加わることを要求したら、一次問題要素16が最初の二
つのテーブルをまず加えることで始動し、そして、二次
問題要素18が最後の二つのテーブルをまず加えること
により始動する。」ブロック124で、タスク開始部3
4はアルゴリズム割り当てタスク66を介し、タイマー
38を始動する。
【0055】ブロック126で、アルゴリズム割り当て
タスク66は、一次問題要素16と二次問題要素18に
問題ステートメントを有する別々のアルゴリズム変化形
を送り、タイマー38始動と同時に一次問題要素16と
二次問題要素18を始動する。
【0056】ブロック128で、タスク開始部34は問
題プロフィールメッセージを作成する。この問題プロフ
ィールメッセージは問題を確定し、それが一次問題要素
16と二次問題要素18によって作動開始させらたもの
であることを示す。そして応用要素12に応答を返すタ
イミングの決定方法をタスク終結部36に通知する。例
えば、問題プロフィールメッセージは、一次問題要素1
6と、二次問題要素18のどちらからか受け取った最初
の解答が十分なものであることを、タスク終結部36に
示す。ブロック130において、プロフィール作成タス
ク68は、ブロック132でスタート110に返る前
に、その情報を含んだ問題プロフィールメッセージをタ
スク終結部36に送る。
【0057】図8〜10を用いて、スタート140から
開始されるタスク終結部の動作を詳細に示す。ブロック
142において、タスク終結部36はタスク開始部3
4、タイマー38、一次問題要素16と二次問題要素1
8、または応用要素12からの入力を待つ。
【0058】ブロック144において、タスク終結部3
6は入力メッセージを受け取る。入力メッセージは、タ
スク開始部34からの問題プロフィールステートメント
か、一次問題要素16と二次問題要素18からの解決メ
ッセージか、またはタイマー38からのタイムアウト
(時間満了)メッセージである。これら全てのメッセー
ジは入力操作タスク70による処理のため順番を待つ。
問題プロフィールステートメントは問題終結の後の制御
や、状態報告に備えて、共用メモリーや記憶装置41に
保存される。
【0059】このように、ブロック146〜152にお
いて、この方法は入力メッセージの種類を判別する。一
次問題要素16と二次問題要素18からのメッセージ、
またはタイマー38からのメッセージがその処理を受け
る時間に先行するならば(例えば、これらのメッセージ
がマッチング問題プロファイルステートメントの受取り
に先行するならば)、または問題終了が後の結果を待つ
べきと判断される場合(拮抗する解答が比較される場合
のように)、これらのメッセージは終了判定タスク74
によってたくわえられる。
【0060】このように、ブロック146において、も
しメッセージが応用要素12からの状態要求である場
合、この方法はブロック154に進む。ここでは、タス
ク終結部36が入力状態報告を作成する。ブロック15
6では、タスク終結部が、ブロック158でスタート1
40に返る前に、応用要素12にメッセージを返す。
【0061】ブロック148において、メッセージがタ
イマー38からのタイムアウトメッセージである場合、
この方法は、ブロック162に進んで図9〜10の方法
を実行する前に、ブロック160でタイムアウト記録を
とる。
【0062】ブロック150で、メッセージがタスク開
始部34からの問題プロフィールステートメントである
場合、この方法は、ブロック166に進んで図9〜10
の方法を実行する前に、ブロック164のプロフィール
を記録する。
【0063】ブロック152で、メッセージが一次問題
要素16からの問題解決であった場合、この方法はブロ
ック170に進んで図9〜10の方法を行なう前にブロ
ック168の解答を記録する。もしこの方法がブロック
154にたどり着いたならば、メッセージは二次問題要
素18からの解答である。ブロック154において、こ
の方法は、ブロック172に進んで図9〜10の方法を
行なう前に、解答を記録する。
【0064】図9に関し、タスク終結部36は、ブロッ
ク174で問題ステートメントのためにプロフィールが
すでに記録されたがどうかを判定する。もし、プロフィ
ールが記録されていないと判定された場合、この方法は
ブロック186で図8のスタート140に返る。
【0065】もしもタスク終結部36が、プロフィール
が記録されていると判断した場合は、ブロック176で
問題ステートメントのためにタイムアウトも記録された
かどうかを判定する。記録されていると判定された場
合、タスク終結部36はブロック188で、問題ステー
トメント「終了」を示し、この方法はブロック190で
図10に進む。
【0066】タイムアウトが記録されていなかった場
合、タスク終結部36はブロック178で、一次問題要
素16と二次問題要素18の両方からの解答を待つべき
かどうかを判断する。待つ場合、タスク終結部36がブ
ロック192において両方の解答が記録されたかどうか
を判断する。記録されていない場合、この方法はブロッ
ク194でスタート140に返る。記録されていた場
合、タスク終結部36はブック196で問題ステートメ
ント「終了」を示し、ブロック198で図10に進む。
【0067】ブロック178に戻って、もしタスク終結
部36が、一次問題要素16と二次問題要素18の両方
の解答を待たないと判定した場合、ブロック180にお
いて、一次問題要素16からの解答を記録すべきかどう
か判断する。記録すると判断した場合、タスク終結部3
6はブロック200で問題ステートメント「終了」を示
し、この方法はブロック202で図10に進む。
【0068】タスク終結部36が、一次問題要素16か
らの解答が記録されていないと判定した場合、ブロック
182で二次問題要素18からの解答を記録するかどう
かを判定する。もし記録すると判定した場合、タスク終
結部36は、ブロック204で問題ステートメント「終
了」を示し、この方法はブロック206で図10に進
む。
【0069】もし、タスク終結部36が、二次問題要素
18からの解答を記録していないと判定した場合、この
方法はブロック184でスタート140に戻る。
【0070】図10に関し、タスク終結部36は、ブロ
ック208において、問題ステートメントのために記録
されたデータに基づいて、返す応答を選択する。
【0071】ブロック210において、タスク終結部3
6は、選択された応答を応用要素12に返す。問題ステ
ートメントの一部として応用要素12から送られた規則
あるいは情報のいづれかに応じて、論理的に問題終了が
判断された時、終了判定タスク74は、適切な問題情報
を応答翻訳タスク76に伝える。このタスクは、与えら
れた望ましい解答に、適した記述を加えながら、応用要
素12に終了を知らせる責任を負う。タスク終結部36
の他のサブタスクと同様に、応答翻訳タスク76もまた
この問題の状態やシステムの状態を更新する。
【0072】ブロック212で、タスク終結部36は、
選択された応答に基づいて問題ステートメントのプロフ
ィールを完了させる。
【0073】ブロック214で、タスク終結部36は、
プロフィールを規則更新部40に送る。プロフィール完
了タスク78は、いかにして問題が解決されたか、その
統計データや記述データを更新し、この問題結果と共に
規則更新部40にプロフィールを送る。
【0074】ブロック216で、この方法はスタートに
戻る。
【0075】図11は、スタート220から開始する規
則更新部40の動作を詳細に示している。ブロック22
2で、規則更新部40は、応用要素12またはタスク終
結部36からの入力を待つ。
【0076】ブロック224では規則更新部40が入力
メッセージを受け取る。入力操作タスク80は、応用要
素12と、タスク終結部36から受け取った順番待ちメ
ッセージを処理する。
【0077】ブロック226において、規則更新部40
はメッセージが応用要素12からの状態要求であるかど
うかを判別する。もしそうであれば、規則更新部40は
ブロック228で規則状態報告を作成する。状態報告要
求は、状態報告タスク82に伝えられ、体系化されて応
用要素12に提供される。状態報告タスク82は共用メ
モリーと記憶装置41を使い、保持された規則について
の情報を供給する。
【0078】ブロック230で、規則更新部40は、ブ
ロック232でスタート220に戻る前に、応用要素1
2に状態メッセージを返す。
【0079】ブロック226に戻って、メッセージが状
態要求でない場合、規則更新部40は、ブロック234
において、メッセージが応用要素からの規則保守要求で
あるかどうか判別する。
【0080】規則保守タスク84は、応用要素12を介
してユーザーの要求で、「手動」保守を行なうことが出
来る。また、「自動」保守を行い、現行規則の効果、あ
るいはタスク終結部36によって返された情報に基づい
て規則を変更することが出来る。
【0081】ブロック236で、規則保守要求は規則保
守タスク84に伝えられ、共用メモリーと記憶装置41
を用い、メッセージで要求されたように規則を変える。
【0082】ブロック238で、この方法はスタート2
20に戻る。
【0083】ブロック234に戻って、もしメッセージ
が規則保守要求でなっかた場合、規則更新部40は、タ
スク終結部36からの問題プロフィールステートメント
を用い、ブロック240で規則を調整する。規則更新部
40は、調停入出力装置32から受け取った入力結果に
基づいて、必要あれば規則を修正し、その結果を共用メ
モリーと記憶装置41に保存する。例えば、データベー
スが加わるための上記の規則は、与えられたテーブルの
設定のために「最初と最後のテーブルをまず連結するか
わりに一つの問題要素が試されるべきである。」という
ように修正される場合がある。
【0084】ブロック242で、この方法はスタート2
20に戻る。
【0085】ここで示してきた本発明の好ましい実行例
により実行される動作シーケンスの詳細な説明をもって
すれば、従来技術分野における通常の技術で容易に、そ
れ自信に適したソフトウェアを書き込み、ここで示して
きた方法どうりに並列処理コンピューターを操作するこ
とが出来る。よって、ソフトウェアに関する詳細の説明
をここでは省略する。ソフトウェアは、アセンブリ言語
のような低いレベルでかかれたものでもよいし、C言語
のように高レベルの言語でかかれたものでもよい。
【0086】
【発明の効果】上述したとおり、本発明における主な利
点は、コンピュータシステムリソース間で必要となる交
信を減じることにある。個々のリソースが協同してより
大きな問題を解決する場合、すべてのリソースが共通の
ゴールに向かって前進していることを保証するために頻
繁な交信が必要となるが、本発明においては、並列演算
処理コンピュータの長所を利用し、別々に拮抗する検索
手順を用いて検索タスクを達成する。従って、各々のリ
ソースは、問題の解決に対してそれぞれ拮抗するアプロ
ーチ上で起動されており、そのため、各々のリソースを
すべて独立して作動することが可能となる。
【図面の簡単な説明】
【図1】 並列処理コンピューターシステムのブロック
図である。
【図2】 図1における調停要素のブロック図である。
【図3】 図2におけるタスク開始部のブロック図であ
る。
【図4】 図2におけるタスク終結部のブロック図であ
る。
【図5】 図2における規則更新部のブロック図であ
る。
【図6】 本発明におけるシステムの動作を示すフロー
チャート図である。
【図7】 本発明におけるタスク開始部の動作を示すフ
ローチャート図である。
【図8】 本発明におけるタスク終結部の動作を示すフ
ローチャート図である。
【図9】 本発明におけるタスク終結部の動作を示すフ
ローチャート図である。
【図10】 本発明におけるタスク終結部の動作を示す
フローチャート図である。
【図11】 本発明における規則更新部の動作を示すフ
ローチャート図である。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 あらかじめ定められた問題を解決するた
    めに、並列演算処理コンピュータの長所を利用する並列
    検索方法において、異なり、拮抗した演算処理手順を同
    時に実行し、問題解決を行うステップを有することを特
    徴とする並列検索方法。
  2. 【請求項2】 並列演算処理コンピューターシステムに
    おいて、 応用プログラムを実行する第一の演算処理装置を有した
    応用要素と、 第一の方法で応用プログラムによって作成された問題を
    解決する第二の演算処理装置を有する第一の問題要素
    と、 第二の方法で、該第一の方法とは別に、第一の方法と同
    時に拮抗しながら応用要素によって作成された問題を解
    決する第三の演算処理装置を有する第二の問題要素と、 第一の演算処理装置と第二の演算処理装置および第三の
    演算処理装置との間の相互作用を調停し、プログラムに
    よって作成された問題を解決する第一、第二の方法を作
    成する第四の演算処理装置を有する調停要素とを有する
    ことを特徴とする並列演算処理コンピューターシステ
    ム。
JP6142081A 1993-06-28 1994-06-24 並列検索方法及びその方法を用いた並列演算処理コンピューターシステム Pending JPH07152788A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US8270593A 1993-06-28 1993-06-28
US08/082,705 1993-06-28

Publications (1)

Publication Number Publication Date
JPH07152788A true JPH07152788A (ja) 1995-06-16

Family

ID=22172896

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6142081A Pending JPH07152788A (ja) 1993-06-28 1994-06-24 並列検索方法及びその方法を用いた並列演算処理コンピューターシステム

Country Status (3)

Country Link
US (1) US5689631A (ja)
JP (1) JPH07152788A (ja)
DE (1) DE4422637A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4930907B2 (ja) * 2005-09-30 2012-05-16 富士ゼロックス株式会社 自己同期型の処理ユニットを有するシステム

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3702546B2 (ja) * 1996-08-23 2005-10-05 ブラザー工業株式会社 多機能周辺装置および記憶媒体
US6684346B2 (en) * 2000-12-22 2004-01-27 Intel Corporation Method and apparatus for machine check abort handling in a multiprocessing system
JP4152611B2 (ja) * 2001-09-13 2008-09-17 株式会社日立製作所 経営改革のための対策案立案支援方法およびそのためのシステム
JP2005339237A (ja) * 2004-05-27 2005-12-08 Aruze Corp アプリケーション利用補助システム
US7533384B2 (en) * 2004-05-27 2009-05-12 International Business Machines Corporation Job routing to earliest available resources in a parallel job scheduler
US20070174290A1 (en) * 2006-01-19 2007-07-26 International Business Machines Corporation System and architecture for enterprise-scale, parallel data mining
US9342350B2 (en) * 2006-08-24 2016-05-17 Renesas Electronics Corporation System for selecting a task to be executed according to an output from a task control circuit
JP5451498B2 (ja) * 2009-07-17 2014-03-26 キヤノン株式会社 情報処理装置、情報処理装置の制御方法およびプログラム
JP2018194900A (ja) * 2017-05-12 2018-12-06 富士通株式会社 情報処理装置、情報処理プログラムおよび情報処理方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1209258B (it) * 1980-08-26 1989-07-16 Sits Soc It Telecom Siemens Disposizione circuitale atta a gestire lo scambio di dati tra una coppia di elaboratori, operanti secondo il principio master-slave, ed un elaboratore di supporto.
US4876643A (en) * 1987-06-24 1989-10-24 Kabushiki Kaisha Toshiba Parallel searching system having a master processor for controlling plural slave processors for independently processing respective search requests
US4992935A (en) * 1988-07-12 1991-02-12 International Business Machines Corporation Bit map search by competitive processors
US5197002A (en) * 1989-12-22 1993-03-23 Bell Communications Research, Inc. Methods and apparatus for dynamic hashing
US5243607A (en) * 1990-06-25 1993-09-07 The Johns Hopkins University Method and apparatus for fault tolerance
US5325525A (en) * 1991-04-04 1994-06-28 Hewlett-Packard Company Method of automatically controlling the allocation of resources of a parallel processor computer system by calculating a minimum execution time of a task and scheduling subtasks against resources to execute the task in the minimum time
JPH06131312A (ja) * 1992-01-23 1994-05-13 Hitachi Ltd 並行処理方法およびシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4930907B2 (ja) * 2005-09-30 2012-05-16 富士ゼロックス株式会社 自己同期型の処理ユニットを有するシステム

Also Published As

Publication number Publication date
US5689631A (en) 1997-11-18
DE4422637A1 (de) 1995-01-05

Similar Documents

Publication Publication Date Title
EP0657813B1 (en) Distributed database management
US5471622A (en) Run-time system having nodes for identifying parallel tasks in a logic program and searching for available nodes to execute the parallel tasks
US5634125A (en) Selecting buckets for redistributing data between nodes in a parallel database in the quiescent mode
US5870604A (en) Job execution processor changing method and system, for load distribution among processors
CN111580954B (zh) 一种可扩展的分布式数据采集方法和系统
US7853584B2 (en) Multi-partition query governor in a computer database system
EP0642092A2 (en) Parallel database system
EP2131282A1 (en) Software modification management program, software modification management device, and software modification management method
JPH0644256A (ja) 資源のロットとの関連を効率的に調整するための装置および方法
JPH05265975A (ja) 並列計算処理装置
JPH07152788A (ja) 並列検索方法及びその方法を用いた並列演算処理コンピューターシステム
CN110019530A (zh) 基于分布式数据库的事务处理方法及装置
US7152026B1 (en) Versioned node configurations for parallel applications
CN1503949B (zh) 服务器、计算机系统、对象管理方法、服务器控制方法
Wolf et al. Multisystem coupling by a combination of data sharing and data partitioning
JPH07219787A (ja) 予測制御型並列分散処理方式、及びコンピュータシステム、並びにネットワークシステム
Mehra et al. Population-based learning of load balancing policies for a distributed computer system
JPH09319618A (ja) 装置シミュレータ
JP2000003333A (ja) クライアント・サーバ・システム及び記録媒体
JP2001092793A (ja) 分散オブジェクトの適正配置推定方法および適正配置位置決定方法並びに装置
KR950009431B1 (ko) 실시간 데이타 베이스 관리시스템의 질의어 윈도우 처리방법
JPS62231342A (ja) マイクロテストプログラムのダウンロ−ド制御方式
Kulkarni et al. Interaction between concurrent transactions in the design of distributed databases
CN114496113A (zh) 跨云跨地域的大规模虚拟筛选方法、系统以及存储介质
Kaur et al. Performance Analysis and Comparison of Parallel Computing Frameworks: Sips and Openmp

Legal Events

Date Code Title Description
A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20040510

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040517

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040907

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050222