JPH05503177A - サービス要求リストの分散構成 - Google Patents

サービス要求リストの分散構成

Info

Publication number
JPH05503177A
JPH05503177A JP2513376A JP51337690A JPH05503177A JP H05503177 A JPH05503177 A JP H05503177A JP 2513376 A JP2513376 A JP 2513376A JP 51337690 A JP51337690 A JP 51337690A JP H05503177 A JPH05503177 A JP H05503177A
Authority
JP
Japan
Prior art keywords
service request
service
memory
request
list
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
JP2513376A
Other languages
English (en)
Inventor
パパドポーロス,グレゴリー・エム
Original Assignee
マサチユセツツ・インスチチユート・オブ・テクノロジー
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 マサチユセツツ・インスチチユート・オブ・テクノロジー filed Critical マサチユセツツ・インスチチユート・オブ・テクノロジー
Publication of JPH05503177A publication Critical patent/JPH05503177A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4494Execution paradigms, e.g. implementations of programming paradigms data driven

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Bus Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 サービス要求リストの分散構成 発明の背景 多重処理システムにおいて、複数のサービス要求が、しばしば、単一サービスに 対して同時に保留している。そのような同時保留サービス要求の代表例は、空き メモリ位置に対する多重フェッチ要求である。そのようなサービス要求によって 提示される問題は、同期化の問題である。
各サービス要求は、同期方式においてサービスへのアクセスを認められなければ ならない。
フェッチ要求を同期化する問題を解決するデータ流処理システムで使用される一 つの関連するアプローチは、■構造の使用である。■構造は、保留フェッチ要求 が、値がメモリ位置に書き込まれるのを待機する間、据置リストに追加される機 構を設ける。特に、各メモリ位置は、メモリ位置の現状態を示す状態フィールド を含む。多重要求が空きメモリ位置に対して保留しているならば、メモリ位置は 、据置状態に置かれ、そしてフェッチ要求の据置リストを指す。これらのフェッ チ要求は、書き込み要求がメモリ位置に到達する時、サービスされる。■構造が 、ArvindとR,E、Thomas著の「並列機械のための有効データ形式 の1構造化」、計算機科学のための技術研究室のマサチューセッツ学会、技術メ モTM−187、マサチューセッツ州、ケンブリッジ、1980年9月において 詳細に議論される。
発明の要約 本発明は、据置サービス要求のリストを構成する方法を設ける。これらのサービ ス要求は、指定サービスに対する多重糸の計算から行われる。
サービス要求がこのサービスに対して受信される時、要求は、規約によって示さ れた如(変更される。受信されたサービス要求を変更したならば、データ処理シ ステムは、サービスに対して現在保持されたサービス要求を変更された受信サー ビス要求と置き換える。サービスに対して以前に保持されたこのサービス要求は 、現据置リストの頭におけるメモリ位置に記憶される。この据置リストは、空で あるか、又は少なくとも一つの以前受信サービス要求を含む。いずれの場合も、 サービス要求が記憶されるメモリ位置は、より最近のサービス要求をした計算糸 にすでに割り当てられている。さらに、メモリ位置アドレスは、より最近に受信 されたサービス要求によって指定される。
好ましい実施態様において、サービス要求は、メモリ位置からのフェッチに対す る要求を含む。各サービス要求は、あて先命令への命令ポインターを含む。これ らの据置リストは、データ流処理システム、特に、タグ付きトークン処理システ ムに対して理想的である。
受信サービス要求を変更するために使用される規約は、多数の異なる動作の任意 で良い。好ましい動作は、サービス要求の命令ポインターを減分するものである 。別のオプションは、単に、命令ポインターにおいてビットをトグルするもので ある。このビットのトグルは、減分動作よりもより容易に実行された動作である 。
メモリ位置が、値が現在メモリ位置にあることを示す空き状態において開始する ならば、到着する最初のサービス要求は、直接にメモリ位置に記憶される。後に 、続くフェッチ要求が到着する時、前述の変更、置換及び記憶段階が実行される 。
据置リストを作成する上述の段階はまた、あて先アドレスのリストを生成する方 法と考えられる。具体的に、それ自体として見た時、方法の第1段階は、メモリ 位置において第1メツセージから戻りあて先アドレスを記憶することである。次 のメツセージに対する次の戻りあて先アドレスは、次のあて先アドレスによって 指定された命令を指すように修正される。それから、先行の戻りあて先アドレス が、修正された次のあて先アドレスと置換され、そして次命令への入力として転 送される。これらの段階は、続くメツセージが到着する時繰り返される。修正段 階と記憶段階は、原子的に行われる。
リストが構成された後、それは、究極的にサービスされる。サービスが利用可能 になる時、据置サービス要求のすべてが一度にサービスされることが好ましい。
さらに、それらは、後入先出順序においてサービスされることが好ましい。この ため、好ましいリストは、スタックとして作用し、そして据置サービス要求は、 このスタック状リストを横断することによりサービスされる。
これらの動作を実行するデータ処理システムは、計算糸を実行するための少なく とも一つのプロセッサーから成る。それはまた、少なくとも一つのプロセッサー による使用のための少なくとも一つのメモリユニットから成るメモリを含む。さ らに、サービスは、サービスを管理するサービス制御手段としても包含される。
サービスは、好ましくは、メモリからのフェッチを設け、このため、サービス制 御手段は、好ましくは、メモリコントローラである。
そのようなデータ処理システムは、メモリ位置へのフェッチを管理することがで きる。各メモリ位置は、メモリ位置の現状態を記憶する状態フィールドと値を記 憶するための値フィールドとを具備する。特に、メモリ位置に対するフェッチ要 求がデータ処理システムによって受信される時、それは、メモリ位置の状態フェ ッチを検査する。現状態が、値が値フィールドに存在することを示す存在状態で あるならば、値は、フェッチ要求によって指定されたあて先に送信される。しか し、現状態が、値が値フィールドに存在しないことを示す空き状態であるならば 、フェッチ要求は、メモリ位置の値フィールドに記憶される。さらに、状態フィ ールドは、メモリ位置が据置状態にあることを示すために変化される。
一方、メモリ位置の現状態が据置状態であるとする。その場合、フェッチ要求が 到着する時、それは据置リストに付加され、そして状態フィールドが、メモリ位 置が据置リスト状態にあることを示すために変化される。メモリ位置はまた、フ ェッチ要求の到着の前には据置リスト状態にある。メモリ位置がそのような据置 リスト状態にあるならば、フェッチ要求は、変更され、そして据置リストに付加 される。
本発明は、据置リストを実現する際に非常に有益な命令を含む。命令は、値とあ て先の2つのオペランドを有する。この命令は、あて先によって指定されたプロ セッサーにトークンとして2つのオペランドを転送する。それはまた、値を次の 命令に転送する。
前述の如く、本発明の据置リストは、データ流処理システムにおける使用のため に理想的である。データ流処理システムが使用される時、据置リストは、活性化 フレーム位置から作成される。特に、サービスのために保持されたサービス要求 は、据置リストを具備する活性化フレーム位置に記憶されることにより、据置リ ストに付加される。このアプローチの正味結果は、複数活性化フレームにおける ポインターリストと、メモリ位置に保持されたポインターリストの頭へのポイン ターの作成である。
図面の簡単な説明 第1図は、データ流処理システムの主要構成要素を示す。
第2図は、トークンを示す。
第3図は、フェッチ要求を符号化するサンプルトークンを示す。
第4a図、第4b図と第4c図は、サンプルトークンのデータ流グラフを示す。
第5図は、メモリ位置が取る状態の状態図を示す。
第6図は、フェッチ要求のサンプル据置リストが構築される方法を示す。
第7a図と第7b図は、サンプル据置リストが解かれる方法を示す。
好ましい実施態様の詳細な説明 本発明の好ましい実施態様は、データ流処理システムにおいてフェッチ(fet ch)要求の据置リストを構築する手段に関する。特に、据@ (deferr ed)フェッチリストは、多重未決フェッチ要求がメモリ位置に到着するデータ 値を待機している時に形成される。据置リストは、はとんどオーバヘッドなしに 容易に実現される単純な方法で前割り当てメモリ空間から形成される。
第1図は、好ましい実施態様のデータ流処理システムの主要構成要素を示す。こ のデータ流処理システムは、相互接続網1を介して相互接続された複数の並列プ ロセッサー3を含む。それはまた、処理要素3に対して設けられた複数のメモリ ユニット2を含む。メモリユニット2は、相互接続網1によって相互接続される 。相互接続網は、各処理要素3をメモリユニット2とともに他の処理要素3と通 信させる。さらに、メモリ4の分離部分は、各処理要素3と関連している。この メモリ4は、存在ビットを有する活性化フレームを含む。
データ流処理システムとして、好ましい実施態様のデータ処理システムは、デー タ流グラフを実行する。それが実行するデータ流グラフは、エツジとノードから 成る。エツジは、オペランドを表現し、モしてノードは、命令において行われる 動作を表現する。オペランドは、命令の実行のスケジュールを制御する。特に、 命令は、命令のオペランドのすべてが利用可能である時のみ実行される。そのよ うなスケジュール機構によって課せられた問題は、オペランドが通常同時に利用 できないことである。典型的に、一つのオペランドが、他のオペランドよりも前 に到着する。こうして、有効に動作するためには、システムは、残余のオペラン ドが到着するのを待機する間、前到着オペランドを保持する手段を有さなければ ならない。好ましい実施態様において、活性化フレームは、そのような機構を設 ける。それらは、システムが残余のオペランドが到着するのを待機している間、 前到着オペランドを記憶する。メモリ4における活性化フレームは、メモリ位置 の各々の空き及び存在状態を指示することができる。これらの活性化フレームは 、多様な処理要素3に割り当てられたメモリ4の空間内に保持される。また、こ れらのメモリ4の空間には、処理要素3の動作を指示するコードのセクションが ある。
データ流処理システムの好ましい構成は、Papadopoulos他による同 時係属米国特許出願第07/274.498号において記載される。
データ流処理システムは、好ましくは、タグ付きトークン(tokens)処理 システムとして公知の特別に多様なデータ流システムである。それは、処理要素 3によって処理された時、活動を生成するトークンとして公知なデータ構造に作 用する。第2図が示す如く、これらのトークン11は、タグフィールド3と値フ ィールド5とから成る。値フィールド5は、データ値を保持する。対照的に、タ グフィールドは、IPとして指定された命令ポインター3aと、FPとして指定 されたフレームポインター3bを保持する。命令ポインター3aは、命令ポイン ター3aによって指定された命令が保持された割り当てメモリ4におけるメモリ アドレスを指す。トークンを処理する際に、処理要素3は、所望の命令をフェッ チするためにこの命令ポインター3aを使用する。しかし、フレームポインター 3bは、活性化フレームを指すために使用される。活性化フレームなしでは、そ れは、命令ポインターが指す命令のオペランドが一致される位置を指す。フェッ チされた命令は、命令のオペランドが一致される活性化フレーム内のメモリ位置 を指定するために使用されたオフセットを含む。典型的に、位置は、フレームを フレームポインター3bに付加することにより指定される。
各処理要素3は、処理される複数のトークンを記憶する局所トークンキューを維 持する。各処理要素3は、システムクロックのクロックサイクル毎に、トークン キューから処理要素3のパイプラインへの新トークンを計時する。処理要素3内 で、トークン11の命令ポインター3aによって指された命令の実行が試行され る。しかし、しばしば、フェッチ命令の如く命令の実行を完了するために、メモ リユニット2をアクセスすることが必要である。そのような場合に、処理要素3 は、適切なメモリユニット2に送信される新トークンを発生させる。いったん発 生されたならば、新トークンは、処理要素3を出て、相互接続網1を介して適切 なメモリユニット2に移動する。
好ましい実施態様のデータ流処理システムは、並列に作用する多重処理要素3を 有する。これらの処理要素3の各々はメモリ要求を発するために、多重要求が同 一メモリ位置に対して為される場合が発生する。特別な関心は、多重フェッチ要 求がメモリ位置への書き込みの前に受信される場合である。本発明の好ましい実 施態様は、そのような多重フェッチ要求が、サービスされるまで効果的な方法で 据置リストに記憶される機構を設ける。これらのフェッチ要求は、要求がメモリ ユニット2によってサービスされている間、処理要素3が待機する必要がないよ うにしてサービスされる。待機は、各メモリユニット2が要求を独立にサービス する別個のメモリコントローラを有するために回避され、そして必要ならば、メ モリコントローラは、データを処理要素に適切なトークン11において戻し、後 続の作用を開始することができる。
メモリユニット2に送信されたトークン11は、命令ポインター3aにおいて、 行われる動作形式を指定する。それらのフレームポインター3bは、動作が行わ れるメモリ位置を指定する。トークン11がフェッチ要求を指定するならば、ト ークン11は、値フィールド5において戻りアドレスを記憶する。同様にタグで ある戻りアドレスは、メモリ2からフェッチされた値が、フェッチ後送信される 場所を指示する。しかし、トークン11が書き込み要求であるならば、値フィー ルド5は、メモリ位置に書き込まれる値を保持する。
据置リストが形成され、管理される方法を示すために、第3図に示された3つの トークン10.12と14がメモリユニット2によって受信されるとする。さら に、それらは、図示の順序(すなわち、10が最初に処理され、12が2番目に 処理され、モして14が最後に処理される)において処理されるとする。すべて の3つの要求は、同一メモリ位ff1lx[20]に対するフェッチ要求である 。第4a図、第4b図と第4c図は、トークンのための対応するデータ流グラフ を示す。これらの図において見られる如く、■フェッチ構造が編集される時、コ ンパイラ−は、自動的に、■フェッチ構造にそうでなければ従う動作に関して固 定位置にコードにおけるI据置命令を置く。例えば、第4a図において、命令ア ドレスIPにおける乗算動作は、正常データ流においてIP−2における■フェ ッチ動作に従う。据置リスト構築の本アプローチを実現するために、付加動作、 ■据置が、IP−1において包含される。■フェッチ18と■据置16の出力エ ツジは、乗算ノード20への同一人力において終端する。以下に議論された如く 、I据置は、空きメモリ位置への多重要求の場合に据置リストを処理するために 、常に包含される。ノード20.26と32として示された算術命令は、単に例 示目的のために包含される。
典型的な動作において、■フェッチ命令を指定するトークン11がメモリユニッ ト2によって受信されるならば、メモリユニット2のメモリコントローラは、フ ェッチ命令によってめられたメモリ位置を検査する。特に、それは、メモリ位置 の現状態を検査する。メモリコントローラが次に取る作用は、メモリ位置の状態 によって命ぜられる。第5図は、好ましい実施態様においてメモリ位置が取る4 つの状態44.46.48と50を示す。据置リスト状態50は、包含される必 要がないことに注意するべきである。むしろ、据置状態46のみで十分である。
しかし、例示の目的のために、据置リスト状態50が包含されるとする。メモリ 位置が空き状態44であるならば、メモリ位置は据置状態46に変化される。さ らに、フェッチ要求に対するあて先アドレスが、メモリ位置に書き込まれる。メ モリ位置が据置状態46にあるならば、メモリ位置の状態は、据置リスト状態5 0に変化され、そして受信フェッチ要求の戻りアドレスは、後述の如(据置リス トに追加される。同様に、メモリ位置がすでに据置リスト状態50にあるならば 、フェッチ要求は、据置リストに追加される。
しかし、フェッチとは反対に書き込みを指定するトークン11が受信されるとす る。その場合に、メモリ位置の現状態に拘わらず、メモリ位置の状態は、存在状 態48に変化され、そして据置サービス要求が取り扱われる。
トークン10.12と14が第3図に示された順序で処理されるならば、据置リ ストは、第6図に示された如く構成される。第6図に見られる如く、メモリ位1 !x[20]は、メモリ状態34において始まる。メモリ状態は、メモリ位置の 内容を特徴とする。x[20]の如く各メモリ位置は、状態フィールド60と値 フィールド62を含む。このメモリ状態34において、メモリ位置x[20]の 状態フィールド60は、空き状態44を示し、そして値フィールド62は空であ る。メモリ位置は、そのような状態において開始する必要はない。空き状態44 は、例示の目的のために選ばれる。トークン10が処理された後、メモリ位置は 、メモリ状態36に変化する。メモリ状態36において、状態フィールド60は 、Dとして表記された据置状態46に変化しており、そして値フィールド62は (IP、、FP、)の値を有する。この遷移は、第5図の状態図に関して上述さ れた動作を行うことにより達成される。具体的に、メモリ位置x[20]は、ト ークン10のフェッチ要求を受信する時空き状態44であるために、メモリ位置 x [20]の状態フィールド60は、据置状態46に変化され、そしてあて先 アドレス(すなわち、IPl、FP、)は、x [20]の値フィールド62に 書き込まれる。 それから、トークン12は、メモリユニット2のメモリコント ローラによって処理される。このトークンの処理は、メモリ状態をメモリ状態3 8に変化させる。メモリ位置x [20]は、トークン12の処理の前は据置状 態46であったために、それは、トークン12が処理される時据置リスト状態5 0に変化する。メモリユニット2のメモリコントローラはまた、2段階から成る 原子動作を行う。最初に、それは、トークン12のあて先アドレスを(IP、− 1、FPt)に変化させる。言い換えれば、それは、入りトークン12によって 指定されたあて先アドレスの命令ポインター(IPz)を減分する。この規約は 有益であるが、他の規約も同様に使用しても良く、本発明内で具体化されること を意図される。例えば、別の実施態様において、命令ポインター3aの最終ビッ トは、減分ではなくトグルされる。こうして、最終ビットが1であるならば、そ れはゼロにトグルされ、また0であれば1にトグルされる。トグル動作の一つの 利点は、減算よりも単純動作であることである。
第2に、入り要求あて先アドレスを減分したならば、メモリコントローラは、メ モリ位置x [20]に現存する要求と減分あて先アドレス(すなわち、IPz  1.FPt)の交換を行う。この交換の結果として、(IP、−1、FP、) は、メモリ位置x [20]の値フィールド62に記憶される。これらの2つの 記載されたプロセスは、原子的に行われ、メモリ位置の内容がアクセス可能であ る前に交換が完了することを保証している。
さらに、前保持あて先アドレス(すなわち、IP、−1,FPI)は、新発生ト ークン11に置かれ、そして(IPz 1.FPz)によって指定されたメモリ 4位置に割り当てられた処理要素3に送信される。具体的に、トークン((rp 、−+、、FP、)、(IP、、FPI) )は、適切な処理要素3に送信され る。
1は、トークンが、IP2−1によって指された命令ノード、この場合I据置命 令の左ポートであることを示す。このI据置命令の右ポートは、フェッチされる 値のための確保される。
あて光処理要素3がこのメツセージトークンを受信する時、それは、他のトーク ン11と同様にトークンに作用する。それは、第4b図に示された如く、■据置 命令22である(IP!−1)における命令をフェッチする。■据置命令22の 実行を試行する際に、処理要素3は、フレームポインターFP、により■据置命 令22のオフセット合計によって指定された活性化フレーム位置を見る。それは 、この活性化フレーム位置を見て、そして内容が空きであることを知る。内容が 空きであるならば、処理要素3は、この活性化フレーム位置においてあて先アド レスを指定する前到着オペランドを記憶する。こうして、活性化フレームFPI においてあて先を指定する(IP、、FP、)は、活性化フレーム位置において 記憶される。
実際に、あて先アドレスは、値の前に到着する必要はない。値が最初に到着する ならば、それは、あて先アドレスの代わりに活性化フレームに記憶される。■据 置命令は、同期化機構を設ける。値とあて先アドレスの間に競合はない。
最後に、トークン14が処理される。メモリコントローラは、メモリ位置x[2 0]の状態を検査し、そして位置が据置リスト状態50にあることを決定する。
それは、メモリ位置x [20]の状態フィールド60を変化させない。という のは、第5図に示された如く、メモリ位置が据置リスト状態50にある間フェッ チが受信される時、状態は、据置リスト状態50にとどまる。しかし、値フィー ルド62は、前述の原子動作によって指定された如く変化される。こうして、あ て先アドレスの入り命令ポインターIP3は、Iによって決定され、そしてFP 、とともにメモリ位置x [20]において記憶される。さらに、前保持あて先 アドレスは、トークン((IPs l)+、FPS)、(IPz l、FPz) )として処理要素3に渡される。
活性化フレームFP、において一致したオペランドを処理する処理要素3は、メ ツセージトークンを受信し、モしてトークンを処理することを試行する。トーク ンを処理する際に、この処理要素3は、活性化フレームにおいてx[20]にお ける前保持あて先アドレスを記憶する。それは、■据置命令28のオペランドの すべてが現在利用可能であるわけではないために、そこにあて先アドレスを記憶 する。据置リストは、別のフェッチ又は書き込み要求が到着するまでこの状態に とどまる。続いて到着するフェッチ要求は、リストの頭に追加されるが、続いて 到着する書き込み要求は、後述される如くリストを解かせる。
合計において、トークン10.12と14のフェッチ要求は、据置リストにおい て記憶据置される。据置リストの開始は、メモリ位置x[20]にある。メモリ 位置x [201は、リストのおける次要素のアドレスを含む。しかし、この次 要素は、メモリユニット2位置とは反対に活性化フレーム内に記憶される。具体 的に、それは、最も最近のフェッチ要求の活性化フレーム内に記憶される。それ は、代わって、さらに別の活性化フレームに保持された据置リストにおける次要 素を指す、等である。正味結果は、複数の活性化フレームの中で作成された据置 分散リストであり、書き込みが為される時自然に解かれる。
リストが構築された後、それは、究極的に書き込み要求によってサービスされる 。第7a図に示されたトークン42が到着するとする。トークン42は、メモリ 位置x [20]が値が書き込まれる場所であることを指定し、そしてメモリ位 置x[20]に書き込まれる値を指定する。
メモリコントローラがこの書き込み要求を受信する時、それは、再び、メモリ位 置x [201の状態フィールド60を検査する。メモリ位置が据置リスト状態 50にあるために、コントローラは、x [201の値フィールドにおいて保持 された命令ポインター値によって指定された命令に値を渡すために新トークンを 発生させる。特に、コントローラは、トークン((IPs−1)1.9)を発生 させることにより、IPs 1においてI据置命令28に値を渡す。さらに、コ ントローラは、値”9”をx [20]の値フィールド62に書き込み、そして 状態フィールド60を存在状態48に変化させる。コントローラは、位置が据置 状態46にあったならばその位置において同一プロセスを行う。
第7b図は、リストが解かれる時の組み合わせデータ流グラフを示す。
値”9”は、x [20FからIPs−1におけるI据置命令28の右部分に渡 される。両オペランドは金利用可能であるために、■据置命令28は、実行され る。2つのトークンが実行において発生され、一方のトークン((IP3、FP 3.9)が、値”9”をIP3における加算命令32に渡す。さらに、それは、 値”9”をIP、−1におけるI据置命令22に渡す。第2トークンは、(I  P! +、FP2) 、9)の形式を取る。IP、−1におけるI据置命令22 はまた、今、利用可能な両オペランドを有する。こうして、それは、実行し、値 “9”を加算ノード26に送る。それはまた、値”9”を含むメツセージトーク ンをIP。
における乗算命令20に送る。IP、は減分されないために、メツセージトーク ンは、値“9”をI P、−1におけるI据置命令16に送らない。むしろ、そ れは、■据置命令16をバイパスし、そしてIP、における命令に直接に渡され る。それ自体、最後のI据置命令16は、リストが解かれる時打われない。この プロセスにおいて、■据置命令は、メモリ位置からのフェッチが、据置状態46 と50の一方であるメモリ位置から要求される場合に、コードにおいて利用可能 である。しかし、それは、データ流プロセスの展開のこの特定の場合に必要とさ れない。
上記の議論に照らして、本発明は、据置リストを実現する効果的な手段を設ける 。据置リストは、存在する割り当てメモリ空間を使用して構築される。さらに、 それらは、メモリコントローラへの拡張的な粉飾を必要としない。
据置リストの要素のすべては、同時にサービスされる必要はない。むしろ、それ らは、一度又は別の指定順序において最後から除去される。
サービスされる順序は、■据置命令が規定される方法によって決定される。それ 自体、■据置命令は、多数の異なる展開戦略を実現するために使用される。これ らの代替的な戦略は、本発明内に具現されることを意図される。
発明が好ましい実施態様を参照して特に示され記載されたが、形式と詳細におけ る多様な変形が、請求の範囲に記載された如〈発明の精神と範囲を逸脱すること なしに行われることが、技術における当業者によって理解されるであろう。
補正書の写しく翻訳文)提出書 (特許法第184条の8)平成4年2月20日

Claims (1)

  1. 【特許請求の範囲】 1.データ処理システムにおけるサービスに対する据置サービス要求のリストを 構成する方法において、 a)サービスに対応するサービス位置において第1サービス要求を記憶する段階 と、 b)第1サービス要求を第2サービス要求と置換し、第2サービス要求がサービ ス要求の据置リストの一部であるという指示を設ける段階と、c)据置リストの 次要素として第2サービス要求によって指示されたメモリ位置において第1サー ビス要求を記憶する段階と、d)続くサービス要求に対して段階bとcを繰り返 す段階とを含む方法。 2.サービスが、メモリから情報をフェッチすることを含む請求の範囲1に記載 の方法。 3.各サービス要求が、フェッチされる情報を求めるあて先命令への命令ポイン ターを具備する請求の範囲1に記載の方法。 4.各サービス要求が、さらに、フェッチされた情報が戻されるアドレスを指示 するフレームポインターを具備し、該アドレスが、すでに、第2サービス要求を 開始するプロセスに割り当てられる請求の範囲3に記載の方法。 5.第1サービス要求が記憶段階によって記憶されるメモリ位置が、第2サービ ス要求のフレームポインターによって指定されたメモリ位置である請求の範囲4 に記載の方法。 6.提供段階が、第1サービス要求が据置されることを指示する命令を指す如く 、第2サービス要求の命令ポインターを変更することを含み、そして該命令が、 フェッチされた情報がフェッチされる時、第2サービス要求の命令ポインターに よって指定された命令にフェッチされた情報を渡す請求の範囲3に記載の方法。 7.変更が、第2サービス要求の命令ポインターを1だけ減分することを含む請 求の範囲6に記載の方法。 8.変更が、第2サービス要求の命令ポインターにおいてビットをトグルするこ とを含む請求の範囲6に記載の方法。 9.データ処理システムが、データ流処理システムを具備する請求の範囲1に記 載の方法。 10.データ処理システムが、タグ付きトークン処理システムを具備する請求の 範囲9に記載の方法。 11.置換段階、提供段階と記憶段階が、完全に単一原子動作内で行われる請求 の範囲1に記載の方法。 12.a)計算糸を実行する少なくとも一つのプロセッサーと、b)少なくとも 一つのプロセッサーにより使用されるメモリと、c)計算糸によって要求される サービスと、d)サービスヘのサービス要求を管理するサービス制御とを具備し 、この場合第1サービス要求がサービスに対してすでに据置され、そして第2サ ービス要求が受信されるならば、サービス制御手段が、第1サービス要求を第2 サービス要求と置換し、第2サービス要求がサービス要求の据置リストの一部で あるという指示を設けることと、据置リストの次要素として第2サービス要求に よって指示されたメモリ位置において第1サービス要求を記憶することとを含む 動作を行うデータ処理システム。13.少なくとも一つのプロセッサーが、複数 のプロセッサーを具備する請求の範囲12に記載のデータ処理システム。 14.データ処理システムが、データ流処理システムである請求の範囲12に記 載のデータ処理システム。 15.命令のオペランドを一致させるために使用された複数の活性化フレームを 具備するデータ処理システムにおいて、各々が計算糸とメモリに関連し、リスト を生成する方法が、ポインターのリストを構成するために、他の活性化フレーム における位置へのポインターを複数の活性化フレームの各々において記憶するこ とと、メモリのメモリ位置においてリストの頭における活性化フレームヘのポイ ンターを記憶することとを含むデータ処理システム。
JP2513376A 1989-08-21 1990-08-10 サービス要求リストの分散構成 Pending JPH05503177A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US39692689A 1989-08-21 1989-08-21
US396,926 1989-08-21

Publications (1)

Publication Number Publication Date
JPH05503177A true JPH05503177A (ja) 1993-05-27

Family

ID=23569155

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2513376A Pending JPH05503177A (ja) 1989-08-21 1990-08-10 サービス要求リストの分散構成

Country Status (4)

Country Link
US (1) US5386586A (ja)
EP (1) EP0548074A1 (ja)
JP (1) JPH05503177A (ja)
WO (1) WO1991003016A2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0146551B1 (ko) * 1995-08-21 1998-09-15 양승택 임계영역을 지원하는 래치 관리방법
US6446117B1 (en) * 1998-11-09 2002-09-03 Unisys Corporation Apparatus and method for saving session variables on the server side of an on-line data base management system
WO2007123527A1 (en) * 2006-04-20 2007-11-01 Srinivasan Chitoor V Technology for integrated computation and communication; ticc
US11900156B2 (en) 2019-09-24 2024-02-13 Speedata Ltd. Inter-thread communication in multi-threaded reconfigurable coarse-grain arrays
US11354157B2 (en) 2020-04-28 2022-06-07 Speedata Ltd. Handling multiple graphs, contexts and programs in a coarse-grain reconfigurable array processor

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4387427A (en) * 1978-12-21 1983-06-07 Intel Corporation Hardware scheduler/dispatcher for data processing system
JPS59146345A (ja) * 1983-02-10 1984-08-22 Masahiro Sowa コントロ−ルフロ−並列計算機方式
US4989133A (en) * 1984-11-30 1991-01-29 Inmos Limited System for executing, scheduling, and selectively linking time dependent processes based upon scheduling time thereof
US4829467A (en) * 1984-12-21 1989-05-09 Canon Kabushiki Kaisha Memory controller including a priority order determination circuit
JPH0632056B2 (ja) * 1985-05-31 1994-04-27 松下電器産業株式会社 デ−タ処理装置
JPS61276032A (ja) * 1985-05-31 1986-12-06 Matsushita Electric Ind Co Ltd 情報処理装置
JP2580592B2 (ja) * 1987-04-17 1997-02-12 株式会社日立製作所 データ構造駆動型処理装置とその制御方法
US5263161A (en) * 1989-07-26 1993-11-16 Massachusetts Institute Of Technology Non-busy waiting resource control

Also Published As

Publication number Publication date
WO1991003016A3 (en) 1992-12-23
WO1991003016A2 (en) 1991-03-07
US5386586A (en) 1995-01-31
EP0548074A1 (en) 1993-06-30

Similar Documents

Publication Publication Date Title
JP2970553B2 (ja) マルチスレッド実行方法
US8655962B2 (en) Shared address collectives using counter mechanisms
EP1131739B1 (en) Batch-wise handling of job signals in a multiprocessing system
US6167423A (en) Concurrency control of state machines in a computer system using cliques
KR100992017B1 (ko) 병행, 논블로킹, 로크프리 큐 및 이를 구현하기 위한 방법,장치, 및 컴퓨터 프로그램 제품
US8230144B1 (en) High speed multi-threaded reduced instruction set computer (RISC) processor
US6728722B1 (en) General data structure for describing logical data spaces
US6209020B1 (en) Distributed pipeline memory architecture for a computer system with even and odd pids
US5263161A (en) Non-busy waiting resource control
US20020161926A1 (en) Method for controlling the order of datagrams
US8196145B2 (en) Determining real time stateful business application processing in an otherwise stateless service-oriented architecture
US5761506A (en) Method and apparatus for handling cache misses in a computer system
US20100153957A1 (en) System and method for managing thread use in a thread pool
JPS63201860A (ja) ネツトワーク管理システム
CA2706737A1 (en) A multi-reader, multi-writer lock-free ring buffer
US5438680A (en) Method and apparatus for enhancing concurrency in a parallel digital computer
US6865741B1 (en) Determining completion of transactions processing in a dynamically changing network
US5774739A (en) Using a lockup processor to search a table of keys whose entries contain instruction pointer values of code to execute if key is found
US5742812A (en) Parallel network communications protocol using token passing
KR20010080469A (ko) 작업-병렬 프로세서
US5848257A (en) Method and apparatus for multitasking in a computer system
JPH05503177A (ja) サービス要求リストの分散構成
US5442761A (en) Method by which packet handler inserts data load instructions in instruction sequence fetched by instruction fetch unit
US20020065954A1 (en) Method, apparatus and program storage device for enabling the reading of data from a named pipe while minimizing the use of system resources
JP2005528671A (ja) 多重プロセッサデータ処理システムにおけるデータ処理方法及び対応するデータ処理システム