JPH0778785B2 - プロセッサ選択方法 - Google Patents
プロセッサ選択方法Info
- Publication number
- JPH0778785B2 JPH0778785B2 JP61072110A JP7211086A JPH0778785B2 JP H0778785 B2 JPH0778785 B2 JP H0778785B2 JP 61072110 A JP61072110 A JP 61072110A JP 7211086 A JP7211086 A JP 7211086A JP H0778785 B2 JPH0778785 B2 JP H0778785B2
- Authority
- JP
- Japan
- Prior art keywords
- processing
- processor
- task
- processors
- processing request
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Multi Processors (AREA)
Description
【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は、相互に接続された複数台のプロセッサにて効
率良く情報処理を実行させることのできるプロセッサ選
択方法に関する。
率良く情報処理を実行させることのできるプロセッサ選
択方法に関する。
(従来の技術) 半導体技術の発展を背景として、複数台のプロセッサを
用いて情報処理システムを構築することが盛んに行われ
ている。そして複数台のプロセッサによる各種演算処理
の分散化のみならず、情報の入出力までも分散制御する
ことが行われるようになってきた。
用いて情報処理システムを構築することが盛んに行われ
ている。そして複数台のプロセッサによる各種演算処理
の分散化のみならず、情報の入出力までも分散制御する
ことが行われるようになってきた。
ところで従来一般的なマルチプロセッサシステムでは、
種々の仕事(タスク)を複数の処理単位に分割し、その
分割された処理単位毎に、そのタスクを実行するに適し
たプロセッサに割当てるようにしている。この際、その
タスク処理専用のプロセッサを個々に準備することも行
われている。
種々の仕事(タスク)を複数の処理単位に分割し、その
分割された処理単位毎に、そのタスクを実行するに適し
たプロセッサに割当てるようにしている。この際、その
タスク処理専用のプロセッサを個々に準備することも行
われている。
そして、一般的にどのプロセッサで処理された情報をど
のプロセッサに受渡して次の処理を行なわせるかを予め
定め、そのシーケンスに従って所定の情報処理を行なう
ものとなっている。
のプロセッサに受渡して次の処理を行なわせるかを予め
定め、そのシーケンスに従って所定の情報処理を行なう
ものとなっている。
ところが各プロセッサの処理機能が益々増大する傾向に
ある。これを受けて、同一のシステムに組込まれる複数
台のプロセッサが同じタスクを処理可能である場合が増
えつつある。例えば高品位なプリンタと高速な演算処理
機能を備えたプロセッサと、低品位なプリンタと低速な
演算処理機を備えたプロセッサが同一のシステムに組込
まれることがある。この場合、一般的には高速な演算処
理機能を備えたプロセッサにて演算処理し、その処理結
果を同じプロセッサを用いて高品位にプリントすること
が望ましい。しかしそのプロセッサが演算処理に専有さ
れている場合、低品位なプリンタを備えたプロセッサに
処理情報を受渡して、その処理結果を一早くプリント出
力する方が好ましいことがある。
ある。これを受けて、同一のシステムに組込まれる複数
台のプロセッサが同じタスクを処理可能である場合が増
えつつある。例えば高品位なプリンタと高速な演算処理
機能を備えたプロセッサと、低品位なプリンタと低速な
演算処理機を備えたプロセッサが同一のシステムに組込
まれることがある。この場合、一般的には高速な演算処
理機能を備えたプロセッサにて演算処理し、その処理結
果を同じプロセッサを用いて高品位にプリントすること
が望ましい。しかしそのプロセッサが演算処理に専有さ
れている場合、低品位なプリンタを備えたプロセッサに
処理情報を受渡して、その処理結果を一早くプリント出
力する方が好ましいことがある。
ところが上述したように従来のシステムにあっては、プ
ロセッサ間の処理情報の受渡し手順が定められている
為、例えば同じタスクを処理可能なプロセッサが別に存
在していても、それを利用することができないと云う不
具合があった。
ロセッサ間の処理情報の受渡し手順が定められている
為、例えば同じタスクを処理可能なプロセッサが別に存
在していても、それを利用することができないと云う不
具合があった。
またシステムに参加しているプロセッサに変更が生じた
場合、つまりシステムからあるプロセッサが取外された
り、また新たなプロセッサが追加されたような場合、そ
のシステム構成の変更を知らない限り、そのシステム構
成に応じた適切な処理手順を構成することができない。
場合、つまりシステムからあるプロセッサが取外された
り、また新たなプロセッサが追加されたような場合、そ
のシステム構成の変更を知らない限り、そのシステム構
成に応じた適切な処理手順を構成することができない。
このように従来システムにあっては、種々のタスクを予
め複数のプロセッサに分散させて固定的に割当て、所定
のプロセッサ管理の下で情報処理を実行させているの
で、柔軟性に非常に乏しい。しかも、空き状態にあるプ
ロセッサを有効に利用できないので、その処理効率も悪
い等の問題があった。
め複数のプロセッサに分散させて固定的に割当て、所定
のプロセッサ管理の下で情報処理を実行させているの
で、柔軟性に非常に乏しい。しかも、空き状態にあるプ
ロセッサを有効に利用できないので、その処理効率も悪
い等の問題があった。
(発明が解決しようとする問題点) 本発明はこのような事情を考慮してなされたもので、そ
の目的とするところは、複数のプロセッサがそれぞれ備
える処理機能を有効に利用して柔軟に、しかも効率良く
所定の情報処理を実行させることを可能とするプロセッ
サ選択方法を提供することにある。
の目的とするところは、複数のプロセッサがそれぞれ備
える処理機能を有効に利用して柔軟に、しかも効率良く
所定の情報処理を実行させることを可能とするプロセッ
サ選択方法を提供することにある。
[発明の構成] (問題点を解決するための手段) 本発明は、相互に接続された複数台のプロセッサのうち
いずれか1つが出力したタスクの処理要求に応じて該タ
スクを処理すべきプロセッサを選択する際、該処理要求
に対するプロセッサの応答を集めその応答状況を求めて
プロセッサに返す検出出力手段を用いるプロセッサ選択
方法であって、1つのプロセッサが、処理すべきタスク
の種類と該タスクを処理する際に要求される処理品質の
情報を含む処理要求を、他の複数のプロセッサに出力す
る第1のステップと、前記他のプロセッサの夫々が、少
なくとも前記処理要求に含まれるタスクの種類と処理品
質の情報に基づいて、その処理要求を受け入れることが
できるか否かを示す処理可能信号を前記検出出力手段に
出力する第2のステップと、前記検出出力手段が、各プ
ロセッサから夫々出力される前記処理可能信号から処理
要求のあったタスクを処理可能なプロセッサが0台か1
台かまたは複数台かを判定する第3のステップと、この
判定結果が1台の場合には、前記処理要求を受け入れる
ことができる処理可能信号を出力したプロセッサは、前
記処理要求のあったタスクを処理することを決定し、こ
の判定結果が0台の場合には、各プロセッサは、与えら
れた処理要求のタスクの処理品質を低下させて再度第2
のステップを行い、この判定結果が複数台の場合には、
各プロセッサは、与えられた処理要求のタスクの処理品
質を高めて再度第2のステップを行う。第4のステップ
とを有することを特徴とする。
いずれか1つが出力したタスクの処理要求に応じて該タ
スクを処理すべきプロセッサを選択する際、該処理要求
に対するプロセッサの応答を集めその応答状況を求めて
プロセッサに返す検出出力手段を用いるプロセッサ選択
方法であって、1つのプロセッサが、処理すべきタスク
の種類と該タスクを処理する際に要求される処理品質の
情報を含む処理要求を、他の複数のプロセッサに出力す
る第1のステップと、前記他のプロセッサの夫々が、少
なくとも前記処理要求に含まれるタスクの種類と処理品
質の情報に基づいて、その処理要求を受け入れることが
できるか否かを示す処理可能信号を前記検出出力手段に
出力する第2のステップと、前記検出出力手段が、各プ
ロセッサから夫々出力される前記処理可能信号から処理
要求のあったタスクを処理可能なプロセッサが0台か1
台かまたは複数台かを判定する第3のステップと、この
判定結果が1台の場合には、前記処理要求を受け入れる
ことができる処理可能信号を出力したプロセッサは、前
記処理要求のあったタスクを処理することを決定し、こ
の判定結果が0台の場合には、各プロセッサは、与えら
れた処理要求のタスクの処理品質を低下させて再度第2
のステップを行い、この判定結果が複数台の場合には、
各プロセッサは、与えられた処理要求のタスクの処理品
質を高めて再度第2のステップを行う。第4のステップ
とを有することを特徴とする。
(作用) 本発明では、まず、タスク処理要求に対して、各プロセ
ッサは要求されたタスクの種類および処理品質と自プロ
セッサの機能や処理状況に応じてその処理要求を受け入
れられる場合には処理可能信号を応答する。次に、検出
出力手段がその処理可能信号を集約し、処理要求を受け
入れられるプロセッサ数が0台か1台かまたは複数台か
を判定する。
ッサは要求されたタスクの種類および処理品質と自プロ
セッサの機能や処理状況に応じてその処理要求を受け入
れられる場合には処理可能信号を応答する。次に、検出
出力手段がその処理可能信号を集約し、処理要求を受け
入れられるプロセッサ数が0台か1台かまたは複数台か
を判定する。
ここで、プロセッサ数が1台であった場合は、当該処理
可能信号を出力したプロセッサが選択れる。
可能信号を出力したプロセッサが選択れる。
一方、処理要求を受け入れられるプロセッサ数が0台か
複数台であった場合は、要求すべき処理品質を変更(0
台の場合は低下させ、複数台の場合は高める)した上
で、再度、上記のようなプロセッサによる応答と検出出
力手段による応答状況の検出を繰返し行なって、使用す
べきプロセッサを1台に絞って行く。
複数台であった場合は、要求すべき処理品質を変更(0
台の場合は低下させ、複数台の場合は高める)した上
で、再度、上記のようなプロセッサによる応答と検出出
力手段による応答状況の検出を繰返し行なって、使用す
べきプロセッサを1台に絞って行く。
このようにして、上記処理要求のあったタスクを一早
く、しかもその時点で最も効率良く処理可能なプロセッ
サが効果的に選択される。
く、しかもその時点で最も効率良く処理可能なプロセッ
サが効果的に選択される。
従って、各プロセッサに対するタスク処理の割当てを予
め定める必要がなく、システムの状況(各プロセッサの
処理状況)に応じて柔軟に、しかも効率良く所望とする
処理を実行することが可能となる。
め定める必要がなく、システムの状況(各プロセッサの
処理状況)に応じて柔軟に、しかも効率良く所望とする
処理を実行することが可能となる。
(実施例) 以下、図面を参照して本発明の一実施例につき説明す
る。
る。
第1図は実施例方式を適用して構成されるマルチプロセ
ッサシステムの主要部概略構成図である。
ッサシステムの主要部概略構成図である。
複数のプロセッサ1a,1b,〜1nはバス2を介して接続さ
れ、該バスを介して相互にデータ伝送し得る如く構成さ
れてる。またこれらの各プロセッサ1a,1b,〜1nは、例え
ば第2図に示す如く構成される検出出力部3に接続され
ている。
れ、該バスを介して相互にデータ伝送し得る如く構成さ
れてる。またこれらの各プロセッサ1a,1b,〜1nは、例え
ば第2図に示す如く構成される検出出力部3に接続され
ている。
しかして各プロセッサ1a,1b,〜1nは、処理すべきタスク
が発生したとき、そのタスクの種別を示す情報(タスク
番号)、およびその処理品質の情報をヘッダとするタス
ク処理要求信号を前記バス2を介して全てのプロセッサ
1a,1b,〜1nに出力する。つまり、自らのプロセッサを含
む他の全てのプロセッサに対してタスク処理要求信号を
出力する。
が発生したとき、そのタスクの種別を示す情報(タスク
番号)、およびその処理品質の情報をヘッダとするタス
ク処理要求信号を前記バス2を介して全てのプロセッサ
1a,1b,〜1nに出力する。つまり、自らのプロセッサを含
む他の全てのプロセッサに対してタスク処理要求信号を
出力する。
プロセッサ1a,1b,〜1nには、第1図においてプロセッサ
1aに代表させて示すように、上記タスク処理要求信号の
タスク番号を格納するタスクレジスタ11、およびその処
理品質情報を格納する点数レジスタ12が設けられてい
る。またプロセッサには、そのプロセッサが備えている
タスク処理機能と、その処理品質とを格納したタスクテ
ーブル13が設けられている。このタスクテーブル13は、
例えば第3図に示すように構成される。タスク番号は、
予めシステム全体に亙ってそのタスク処理機能に対応し
て設定されるもので、該タスク番号によってそのタスク
処理機能が特定されるようになっている。また処理品質
の情報は、例えば各タスク処理の最高レベルを(10)と
して、そのプロセッサが備えた処理機能に応じてタスク
テーブル13に格納されている。
1aに代表させて示すように、上記タスク処理要求信号の
タスク番号を格納するタスクレジスタ11、およびその処
理品質情報を格納する点数レジスタ12が設けられてい
る。またプロセッサには、そのプロセッサが備えている
タスク処理機能と、その処理品質とを格納したタスクテ
ーブル13が設けられている。このタスクテーブル13は、
例えば第3図に示すように構成される。タスク番号は、
予めシステム全体に亙ってそのタスク処理機能に対応し
て設定されるもので、該タスク番号によってそのタスク
処理機能が特定されるようになっている。また処理品質
の情報は、例えば各タスク処理の最高レベルを(10)と
して、そのプロセッサが備えた処理機能に応じてタスク
テーブル13に格納されている。
フラグレジスタ14は、そのプロセッサがあるタスク処理
の実行中であるか否かを示すフラグを格納するものであ
る。
の実行中であるか否かを示すフラグを格納するものであ
る。
比較器15は、前記タスクレジスタ11に格納されたタスク
番号に従ってタスクテーブル13から読出される該当タス
ク番号の処理品質情報、および前記フラグレジスタ14に
格納されたフラグ情報を入力し、前記点数レジスタ12に
格納された要求処理品質の情報と比較するものである。
この比較器15によって、前記タスク処理要求信号によっ
て示されるタスク処理要求に対して該プロセッサが処理
可能であるか否かを示す処理可能信号Cが出力されるよ
うになっている。
番号に従ってタスクテーブル13から読出される該当タス
ク番号の処理品質情報、および前記フラグレジスタ14に
格納されたフラグ情報を入力し、前記点数レジスタ12に
格納された要求処理品質の情報と比較するものである。
この比較器15によって、前記タスク処理要求信号によっ
て示されるタスク処理要求に対して該プロセッサが処理
可能であるか否かを示す処理可能信号Cが出力されるよ
うになっている。
この処理可能信号Cが前記検出出力部3に出力される。
また点数レジスタ12に接続された加算器16は、前記検出
出力部3から与えられる制御信号S1,S2に応じて該点数
レジスタ12に格納された処理品質の情報(点数)を加減
算するものである。具体的には、制御信号S1がL、制御
信号S2がHであるとき、上記処理品質の情報(点数)
を、例えば2点づつデクリメントしている。また制御信
号S1,S2が共にLであるとき、上記処理品質の情報(点
数)を、例えば1点づつイクリメントしている。
出力部3から与えられる制御信号S1,S2に応じて該点数
レジスタ12に格納された処理品質の情報(点数)を加減
算するものである。具体的には、制御信号S1がL、制御
信号S2がHであるとき、上記処理品質の情報(点数)
を、例えば2点づつデクリメントしている。また制御信
号S1,S2が共にLであるとき、上記処理品質の情報(点
数)を、例えば1点づつイクリメントしている。
尚、制御信号S1がH、制御信号S2がLの場合には、上記
処理可能信号を送出しているプロセッサは上記タスク処
理要求を実行するプロセッサが自己である(1台決定さ
れた)と判定し、そのタスク処理を実行することにな
る。
処理可能信号を送出しているプロセッサは上記タスク処
理要求を実行するプロセッサが自己である(1台決定さ
れた)と判定し、そのタスク処理を実行することにな
る。
さて前記検出出力部3は、プロセッサ1a,1b,〜1nが4台
である場合、第2図に示す如く複数のゲート回路によっ
て構成される。そして各プロセッサ1a,1b,〜1nの1つだ
けが処理可能信号Cを出力したときに制御信号S1をHと
し、また各プロセッサ1a,1b,〜1nの全てが処理可能信号
Cを出力しないときにのみ、制御信号S2をHとする如く
構成される。
である場合、第2図に示す如く複数のゲート回路によっ
て構成される。そして各プロセッサ1a,1b,〜1nの1つだ
けが処理可能信号Cを出力したときに制御信号S1をHと
し、また各プロセッサ1a,1b,〜1nの全てが処理可能信号
Cを出力しないときにのみ、制御信号S2をHとする如く
構成される。
つまり処理可能信号を出力したプロセッサが0台のとき
(S1=L,S2=H)なる制御信号を出力し、処理可能信号
を出力したプロセッサが1台のときには(S1=H,S2=
L)なる制御信号を、更に処理可能信号を出力したプロ
セッサが複数台のときには、(S1=L,S2=L)なる制御
信号をそれぞれ出力するように構成されている。
(S1=L,S2=H)なる制御信号を出力し、処理可能信号
を出力したプロセッサが1台のときには(S1=H,S2=
L)なる制御信号を、更に処理可能信号を出力したプロ
セッサが複数台のときには、(S1=L,S2=L)なる制御
信号をそれぞれ出力するように構成されている。
かくしてこのように構成されたシステムによれば、次の
ようにしてプロセッサの選択設定が行われる。
ようにしてプロセッサの選択設定が行われる。
第4図は5台のプロセッサI,II,〜Vの各タスクテーブ
ル13の構成を模式的に示している。
ル13の構成を模式的に示している。
ここで今、例えばタスク番号が(3)でその処理品質要
求の点数が(5)のタスク処理要求Aが発生されると、
各プロセッサI,II,〜Vにおいてはそのタスクテーブル1
3に該当するタスク番号が登録されているか否かを判定
する。この場合、プロセッサI,II,IV,Vにタスク番号
(3)が登録されており、プロセッサIIIには登録され
ていないことから、これによってプロセッサIIIから処
理可能信号が出力されないようになる。
求の点数が(5)のタスク処理要求Aが発生されると、
各プロセッサI,II,〜Vにおいてはそのタスクテーブル1
3に該当するタスク番号が登録されているか否かを判定
する。この場合、プロセッサI,II,IV,Vにタスク番号
(3)が登録されており、プロセッサIIIには登録され
ていないことから、これによってプロセッサIIIから処
理可能信号が出力されないようになる。
またこのとき各プロセッサI,II,〜Vのフラグ情報が調
べられる。この結果、プロセッサI,Vがある処理を実行
中であることから、これらのプロセッサI,Vからは処理
可能信号が出力されないようになる。
べられる。この結果、プロセッサI,Vがある処理を実行
中であることから、これらのプロセッサI,Vからは処理
可能信号が出力されないようになる。
この結果、処理可能信号を出力し得るプロセッサがII,I
Vだけであることがわかる。この時点で、次に前記比較
器15にてその処理品質が要求された品質基準を満すか否
かが判定される。この判定処理によってプロセッサIIか
らだけ処理可能信号が出力される。
Vだけであることがわかる。この時点で、次に前記比較
器15にてその処理品質が要求された品質基準を満すか否
かが判定される。この判定処理によってプロセッサIIか
らだけ処理可能信号が出力される。
従って、前記検出出力部3からは(S1=H,S2=L)なる
制御信号が出力され、このとき処理要求信号を出力して
いるプロセッサIIが、その処理要求のあったタスク処理
を実行するべく決定されたことを知ることになる。この
際、処理要求信号を出力していないプロセッサは、上記
制御信号(S1=H,S2=L)から他のプロセッサが選択さ
れたことを知ることになる。
制御信号が出力され、このとき処理要求信号を出力して
いるプロセッサIIが、その処理要求のあったタスク処理
を実行するべく決定されたことを知ることになる。この
際、処理要求信号を出力していないプロセッサは、上記
制御信号(S1=H,S2=L)から他のプロセッサが選択さ
れたことを知ることになる。
一方、例えばタスク番号が(5)でその処理品質要求の
点数が(9)のタスク処理要求Bが発生されると、プロ
セッサII,III,IV,Vだけにタスク番号(5)が登録され
ていることから、これによってプロセッサIから処理可
能信号が出力されないようになる。
点数が(9)のタスク処理要求Bが発生されると、プロ
セッサII,III,IV,Vだけにタスク番号(5)が登録され
ていることから、これによってプロセッサIから処理可
能信号が出力されないようになる。
またこのとき各プロセッサI,II,〜Vのフラグ情報が調
べられる。この結果、プロセッサI,Vがある処理を実行
中であることから、これらのプロセッサI,Vからは処理
可能信号が出力されないようになる。
べられる。この結果、プロセッサI,Vがある処理を実行
中であることから、これらのプロセッサI,Vからは処理
可能信号が出力されないようになる。
この結果、処理可能信号を出力し得るプロセッサがII,I
II,IVだけであることがわかる。この時点で、次に前記
比較器15にてその処理品質が要求された品質基準を満す
か否かが判定されるが、いずれのプロセッサII,III,IV
もその処理要求基準を満さないことがわかる。この結
果、全てのプロセッサI,II,〜Vから処理可能信号が出
力されないことになる。
II,IVだけであることがわかる。この時点で、次に前記
比較器15にてその処理品質が要求された品質基準を満す
か否かが判定されるが、いずれのプロセッサII,III,IV
もその処理要求基準を満さないことがわかる。この結
果、全てのプロセッサI,II,〜Vから処理可能信号が出
力されないことになる。
従って、この場合には前記検出出力部3からは(S1=L,
S2=H)なる制御信号が出力され、各プロセッサI,II,
〜Vでは点数レジスタ12に格納した処理品質情報をそれ
ぞれ2点減算し、そのタスク処理要求をB′の如く変更
する。しかる後、処理可能信号を出力し得るプロセッサ
が同様にしてII,III,IVであることが求められ、これら
のプロセッサII,III,IVにて再度処理品質の比較処理が
行われる。この結果、今度はプロセッサII,IIIからそれ
ぞれ処理可能信号が出力される。
S2=H)なる制御信号が出力され、各プロセッサI,II,
〜Vでは点数レジスタ12に格納した処理品質情報をそれ
ぞれ2点減算し、そのタスク処理要求をB′の如く変更
する。しかる後、処理可能信号を出力し得るプロセッサ
が同様にしてII,III,IVであることが求められ、これら
のプロセッサII,III,IVにて再度処理品質の比較処理が
行われる。この結果、今度はプロセッサII,IIIからそれ
ぞれ処理可能信号が出力される。
すると検出出力部3は、2つのプロセッサからそれぞれ
処理可能信号が入力されることから、制御信号(S1=L,
S2=L)を出力する。これによって各プロセッサI,II,
〜Vでは点数レジスタ12に格納した処理品質情報をそれ
ぞれ1点づつ加算して、そのタスク処理要求をB″の如
く変更する。
処理可能信号が入力されることから、制御信号(S1=L,
S2=L)を出力する。これによって各プロセッサI,II,
〜Vでは点数レジスタ12に格納した処理品質情報をそれ
ぞれ1点づつ加算して、そのタスク処理要求をB″の如
く変更する。
そしてこのような条件下で上述した処理可能要求信号の
出力が同様して行われる。この結果、プロセッサIIIか
らだけ処理可能信号が出力され、検出出力部3からは
(S1=H,S2=L)なる制御信号が出力される。そしてこ
のとき処理要求信号を出力しているプロセッサIIIが、
その処理要求のあったタスク処理を実行するべく決定さ
れたことを知ることになる。
出力が同様して行われる。この結果、プロセッサIIIか
らだけ処理可能信号が出力され、検出出力部3からは
(S1=H,S2=L)なる制御信号が出力される。そしてこ
のとき処理要求信号を出力しているプロセッサIIIが、
その処理要求のあったタスク処理を実行するべく決定さ
れたことを知ることになる。
このように本方式によれば、タスク処理要求が発生した
とき、その時点で上記タスク処理要求に最も効果的に対
処できるプロセッサが自動的に決定される。従って従来
システムのようにタスク処理を分散処理する為の手続き
を予め定めておく必要がない。そしてシステムの処理状
況に応じて適切なプロセッサを選択しながら、その処理
を柔軟に、しかも効果率良く進めることが可能である。
とき、その時点で上記タスク処理要求に最も効果的に対
処できるプロセッサが自動的に決定される。従って従来
システムのようにタスク処理を分散処理する為の手続き
を予め定めておく必要がない。そしてシステムの処理状
況に応じて適切なプロセッサを選択しながら、その処理
を柔軟に、しかも効果率良く進めることが可能である。
またこのようなプロセッサ選択方式を採用したシステム
によれば、システムに追加されたプロセッサを知らなく
ても、また予定していたプロセッサが取外されていて
も、そのシステム構成の変更に拘らず所望とする処理を
確実に実行させることが可能となる。故に、システムに
参加している各プロセッサの処理機能を最大限に有効に
利用・活用して効率良く種々のタスク処理を実行するこ
とが可能となる。
によれば、システムに追加されたプロセッサを知らなく
ても、また予定していたプロセッサが取外されていて
も、そのシステム構成の変更に拘らず所望とする処理を
確実に実行させることが可能となる。故に、システムに
参加している各プロセッサの処理機能を最大限に有効に
利用・活用して効率良く種々のタスク処理を実行するこ
とが可能となる。
尚、本発明は上述した実施例に限定されるものではな
い。例えば選択制御するプロセッサの数も特に限定され
るものではない。更に、処理品質の情報の中に、そのタ
スク処理を実行するに必要な処理時間の情報を含ませる
ことも可能である。このようにすれば、処理速度が問題
となる場合であっても、これに対処することが可能とな
る。またここでは、処理品質の点数を最大値(10)で表
現したが、その最大値はシステムの仕様(プロセッサの
処理機能)に応じて定めれば良いものである。またその
加減算処理の点数も変形可能なことは云うまでもない。
その他、本発明はその要旨を逸脱しない範囲で種々変形
して実施することができる。
い。例えば選択制御するプロセッサの数も特に限定され
るものではない。更に、処理品質の情報の中に、そのタ
スク処理を実行するに必要な処理時間の情報を含ませる
ことも可能である。このようにすれば、処理速度が問題
となる場合であっても、これに対処することが可能とな
る。またここでは、処理品質の点数を最大値(10)で表
現したが、その最大値はシステムの仕様(プロセッサの
処理機能)に応じて定めれば良いものである。またその
加減算処理の点数も変形可能なことは云うまでもない。
その他、本発明はその要旨を逸脱しない範囲で種々変形
して実施することができる。
[発明の効果] 本発明によれば、処理要求のあったタスクを処理可能な
プロセッサからの応答(処理可能信号)に基づく判定結
果に従って、適宜その処理品質を変更し、変更された処
理品質に基づき再度プロセッサが処理可能信号にて応答
する操作を繰返し行なって、選択すべきプロセッサを1
つに絞って行くようにしたので、タスク処理要求をその
時点で最も効果的に処理できるプロセッサを非常に簡易
に、効率良く選択することが可能となる。
プロセッサからの応答(処理可能信号)に基づく判定結
果に従って、適宜その処理品質を変更し、変更された処
理品質に基づき再度プロセッサが処理可能信号にて応答
する操作を繰返し行なって、選択すべきプロセッサを1
つに絞って行くようにしたので、タスク処理要求をその
時点で最も効果的に処理できるプロセッサを非常に簡易
に、効率良く選択することが可能となる。
従って、柔軟性に富み、処理効率の高いマルチプロセッ
サシステムを構築することが可能となる。
サシステムを構築することが可能となる。
第1図は本発明の一実施例方式を適用して構成されるマ
ルチプロセッサシステムの要部概略構成図、第2図は実
施例システムにおける検出出力部の構成例を示す図、第
3図はタスクテーブルの構成例を示す図、第4図はプロ
セッサの選択処理過程を模式的に示す図である。 1a,1b,〜1n…プロセッサ、2…バス、3…検出出力部、
11…タスクレジスタ、12…点数レジスタ、13…タスクテ
ーブル、14…フラグレジスタ、15…比較器、16…加減算
器。
ルチプロセッサシステムの要部概略構成図、第2図は実
施例システムにおける検出出力部の構成例を示す図、第
3図はタスクテーブルの構成例を示す図、第4図はプロ
セッサの選択処理過程を模式的に示す図である。 1a,1b,〜1n…プロセッサ、2…バス、3…検出出力部、
11…タスクレジスタ、12…点数レジスタ、13…タスクテ
ーブル、14…フラグレジスタ、15…比較器、16…加減算
器。
Claims (1)
- 【請求項1】相互に接続された複数台のプロセッサのう
ちいずれか1つが出力したタスクの処理要求に応じて該
タスクを処理すべきプロセッサを選択する際、該処理要
求に対するプロセッサの応答を集めその応答状況を求め
てプロセッサに返す検出出力手段を用いるプロセッサ選
択方法であって、 1つのプロセッサが、処理すべきタスクの種類と該タス
クを処理する際に要求される処理品質の情報を含む処理
要求を、他の複数のプロセッサに出力する第1のステッ
プと、 前記他のプロセッサの夫々が、少なくとも前記処理要求
に含まれるタスクの種類と処理品質の情報に基づいて、
その処理要求を受け入れることができるか否かを示す処
理可能信号を前記検出出力手段に出力する第2のステッ
プと、 前記検出出力手段が、各プロセッサから夫々出力される
前記処理可能信号から、処理要求のあったタスクを処理
可能なプロセッサが0台か1台かまたは複数台かを判定
する第3のステップと、 この判定結果が1台の場合には、前記処理要求を受け入
れることができる処理可能信号を出力したプロセッサ
は、前記処理要求のあったタスクを処理することを決定
し、この判定結果が0台の場合には、各プロセッサは、
与えられた処理要求のタスクの処理品質を低下させて再
度第2のステップを行い、この判定結果が複数台の場合
には、各プロセッサは、与えられた処理要求のタスクの
処理品質を高めて再度第2のステップを行う、第4のス
テップとを有することを特徴とするプロセッサ選択方
法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61072110A JPH0778785B2 (ja) | 1986-03-29 | 1986-03-29 | プロセッサ選択方法 |
EP87301673A EP0240145A3 (en) | 1986-03-29 | 1987-02-25 | Processor-selection system |
US07/022,087 US4954945A (en) | 1986-03-29 | 1987-03-05 | Processor-selection system |
KR1019870002966A KR900002581B1 (ko) | 1986-03-29 | 1987-03-28 | 프로세서 선택 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61072110A JPH0778785B2 (ja) | 1986-03-29 | 1986-03-29 | プロセッサ選択方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS62229358A JPS62229358A (ja) | 1987-10-08 |
JPH0778785B2 true JPH0778785B2 (ja) | 1995-08-23 |
Family
ID=13479913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61072110A Expired - Lifetime JPH0778785B2 (ja) | 1986-03-29 | 1986-03-29 | プロセッサ選択方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US4954945A (ja) |
EP (1) | EP0240145A3 (ja) |
JP (1) | JPH0778785B2 (ja) |
KR (1) | KR900002581B1 (ja) |
Families Citing this family (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5136708A (en) * | 1987-06-09 | 1992-08-04 | Oce-Nederland B.V. | Distributed office automation system with specific task assignment among workstations |
US5261080A (en) * | 1987-08-21 | 1993-11-09 | Wang Laboratories, Inc. | Matchmaker for assisting and executing the providing and conversion of data between objects in a data processing system storing data in typed objects having different data formats |
JPH0210454A (ja) * | 1988-06-29 | 1990-01-16 | Canon Inc | 電子機器 |
EP0384635B1 (en) * | 1989-02-24 | 1997-08-13 | AT&T Corp. | Adaptive job scheduling for multiprocessing systems |
US5155851A (en) * | 1989-05-15 | 1992-10-13 | Bell Communications Research, Inc. | Routing an incoming data stream to parallel processing stations |
IL93239A (en) * | 1990-02-01 | 1993-03-15 | Technion Res & Dev Foundation | High flow-rate synchronizer/schedular apparatus for multiprocessors |
FR2662278B1 (fr) * | 1990-05-16 | 1992-07-24 | Cit Alcatel | Struture d'automate de traitement de donnees. |
US5404521A (en) * | 1990-07-31 | 1995-04-04 | Top Level Inc. | Opportunistic task threading in a shared-memory, multi-processor computer system |
US5325500A (en) * | 1990-12-14 | 1994-06-28 | Xerox Corporation | Parallel processing units on a substrate, each including a column of memory |
US5379438A (en) * | 1990-12-14 | 1995-01-03 | Xerox Corporation | Transferring a processing unit's data between substrates in a parallel processor |
JP2642529B2 (ja) * | 1991-04-30 | 1997-08-20 | 株式会社東芝 | 並列プロセッサーの命令分配処理装置 |
JP3201786B2 (ja) * | 1991-07-18 | 2001-08-27 | アジレント・テクノロジー株式会社 | ディジタル信号処理システムの制御方法 |
US5301321A (en) * | 1992-02-21 | 1994-04-05 | International Business Machines Corporation | Method and system for the minimization of conflicting activities with respect to an object stored within a data processing system |
US5522070A (en) * | 1992-03-19 | 1996-05-28 | Fujitsu Limited | Computer resource distributing method and system for distributing a multiplicity of processes to a plurality of computers connected in a network |
US5305442A (en) * | 1992-03-27 | 1994-04-19 | Ceridian Corporation | Generalized hierarchical architecture for bus adapters |
US5287508A (en) * | 1992-04-07 | 1994-02-15 | Sun Microsystems, Inc. | Method and apparatus for efficient scheduling in a multiprocessor system |
GB2272085A (en) * | 1992-10-30 | 1994-05-04 | Tao Systems Ltd | Data processing system and operating system. |
GB9300942D0 (en) * | 1993-01-19 | 1993-03-10 | Int Computers Ltd | Parallel computer system |
JP3310402B2 (ja) * | 1993-06-24 | 2002-08-05 | 株式会社三協精機製作所 | マルチタスク制御コントローラ |
GB2281793A (en) | 1993-09-11 | 1995-03-15 | Ibm | A data processing system for providing user load levelling in a network |
DE59310083D1 (de) * | 1993-09-24 | 2000-09-07 | Siemens Ag | Verfahren zum Lastausgleich in einem Multiprozessorsystem |
US7080051B1 (en) | 1993-11-04 | 2006-07-18 | Crawford Christopher M | Internet download systems and methods providing software to internet computer users for local execution |
US5771354A (en) | 1993-11-04 | 1998-06-23 | Crawford; Christopher M. | Internet online backup system provides remote storage for customers using IDs and passwords which were interactively established when signing up for backup services |
JPH07219913A (ja) * | 1994-01-28 | 1995-08-18 | Fujitsu Ltd | マルチプロセッサシステムの制御方法及び装置 |
US5867704A (en) * | 1995-02-24 | 1999-02-02 | Matsushita Electric Industrial Co., Ltd. | Multiprocessor system shaving processor based idle state detection and method of executing tasks in such a multiprocessor system |
US5805827A (en) * | 1996-03-04 | 1998-09-08 | 3Com Corporation | Distributed signal processing for data channels maintaining channel bandwidth |
US5892934A (en) * | 1996-04-02 | 1999-04-06 | Advanced Micro Devices, Inc. | Microprocessor configured to detect a branch to a DSP routine and to direct a DSP to execute said routine |
US6192388B1 (en) * | 1996-06-20 | 2001-02-20 | Avid Technology, Inc. | Detecting available computers to participate in computationally complex distributed processing problem |
US5999963A (en) * | 1997-11-07 | 1999-12-07 | Lucent Technologies, Inc. | Move-to-rear list scheduling |
US6330617B1 (en) | 1998-02-27 | 2001-12-11 | Sabre Inc | System, method and computer program product for data conversion in a computer network |
US6986066B2 (en) * | 2001-01-05 | 2006-01-10 | International Business Machines Corporation | Computer system having low energy consumption |
US20020099893A1 (en) * | 2001-01-24 | 2002-07-25 | Nguyen Tuyet-Huong Thi | System and method for the handling of system management interrupts in a multiprocessor computer system |
US7065641B2 (en) * | 2002-06-13 | 2006-06-20 | Intel Corporation | Weighted processor selection apparatus and method for use in multiprocessor systems |
US7069189B2 (en) * | 2002-12-31 | 2006-06-27 | Intel Corporation | Method and apparatus for controlling multiple resources using thermal related parameters |
US20040128663A1 (en) * | 2002-12-31 | 2004-07-01 | Efraim Rotem | Method and apparatus for thermally managed resource allocation |
JP4196333B2 (ja) * | 2003-05-27 | 2008-12-17 | 日本電気株式会社 | 並列処理システム及び並列処理プログラム |
US7512679B2 (en) * | 2003-08-29 | 2009-03-31 | International Business Machines Corporation | Apparatus and method to select a captain from a plurality of control nodes |
DE10357118A1 (de) * | 2003-12-06 | 2005-07-07 | Daimlerchrysler Ag | Laden von Software-Modulen |
GB0426123D0 (en) * | 2004-11-27 | 2004-12-29 | Ibm | The connection of an application to a resource manager selected from a plurality of resource managers |
US10339227B1 (en) | 2007-06-08 | 2019-07-02 | Google Llc | Data center design |
DE102007036124A1 (de) * | 2007-08-01 | 2009-02-05 | Conti Temic Microelectronic Gmbh | Fahrzeug mit dynamischen Systemen sowie Verfahren zum dynamischen Durchführen von Fahrzeugfunktionen |
DE112009001700B4 (de) * | 2008-07-22 | 2019-02-07 | Toyota Jidosha Kabushiki Kaisha | Multikernsystem, fahrzeugseitige elektronische Steuerungseinheit und Aufgabenumschaltverfahren |
US8178997B2 (en) | 2009-06-15 | 2012-05-15 | Google Inc. | Supplying grid ancillary services using controllable loads |
US9009500B1 (en) | 2012-01-18 | 2015-04-14 | Google Inc. | Method of correlating power in a data center by fitting a function to a plurality of pairs of actual power draw values and estimated power draw values determined from monitored CPU utilization of a statistical sample of computers in the data center |
US20140282578A1 (en) * | 2013-03-14 | 2014-09-18 | Justin S. Teller | Locality aware work stealing runtime scheduler |
US11347488B2 (en) * | 2020-05-18 | 2022-05-31 | Fortinet, Inc. | Compiling domain-specific language code to generate executable code targeting an appropriate type of processor of a network device |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3593300A (en) * | 1967-11-13 | 1971-07-13 | Ibm | Arrangement for automatically selecting units for task executions in data processing systems |
US4224664A (en) * | 1976-05-07 | 1980-09-23 | Honeywell Information Systems Inc. | Apparatus for detecting when the activity of one process in relation to a common piece of information interferes with any other process in a multiprogramming/multiprocessing computer system |
US4253146A (en) * | 1978-12-21 | 1981-02-24 | Burroughs Corporation | Module for coupling computer-processors |
FR2457521B1 (fr) * | 1979-05-23 | 1985-12-27 | Thomson Csf | Systeme multiprocesseur de traitement de signal |
US4495570A (en) * | 1981-01-14 | 1985-01-22 | Hitachi, Ltd. | Processing request allocator for assignment of loads in a distributed processing system |
US4543626A (en) * | 1982-12-06 | 1985-09-24 | Digital Equipment Corporation | Apparatus and method for controlling digital data processing system employing multiple processors |
US4564901A (en) * | 1983-07-21 | 1986-01-14 | Burroughs Corporation | Method of performing a sequence of related activities via multiple asynchronously intercoupled digital processors |
AU591057B2 (en) * | 1984-06-01 | 1989-11-30 | Digital Equipment Corporation | Local area network for digital data processing system |
-
1986
- 1986-03-29 JP JP61072110A patent/JPH0778785B2/ja not_active Expired - Lifetime
-
1987
- 1987-02-25 EP EP87301673A patent/EP0240145A3/en not_active Withdrawn
- 1987-03-05 US US07/022,087 patent/US4954945A/en not_active Expired - Fee Related
- 1987-03-28 KR KR1019870002966A patent/KR900002581B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR900002581B1 (ko) | 1990-04-20 |
EP0240145A3 (en) | 1989-11-02 |
JPS62229358A (ja) | 1987-10-08 |
US4954945A (en) | 1990-09-04 |
KR870009298A (ko) | 1987-10-24 |
EP0240145A2 (en) | 1987-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0778785B2 (ja) | プロセッサ選択方法 | |
GB2121995A (en) | Method of and apparatus for assigning software resources to memory devices | |
JPS61110256A (ja) | 複数の演算部を有するプロセツサ | |
US3680058A (en) | Information processing system having free field storage for nested processes | |
EP0077619B1 (en) | Data-packet driven digital computer | |
JPH05189232A (ja) | 自動化装置およびその作動方法 | |
JP3117980B2 (ja) | プリンタ制御装置 | |
JP2806771B2 (ja) | バス調停回路 | |
JP3397425B2 (ja) | 周期通信処理装置 | |
JP3008890B2 (ja) | 処理制御装置 | |
JPH08328879A (ja) | タスク管理方式 | |
JP2002337400A (ja) | 画像処理装置 | |
JPH11327681A (ja) | 仮想システム時刻管理方式、管理方法および管理プログラムを記録した記録媒体 | |
JPH0573507A (ja) | 電子計算機間メツセージ交信時の救済装置 | |
JPS61107460A (ja) | マルチプロセツサシステム | |
JPS61260345A (ja) | マルチプロセサ間のバス制御方式 | |
JPS6112591B2 (ja) | ||
JP2845737B2 (ja) | ノード演算パイプライン | |
JPH0644299B2 (ja) | デ−タフロ−プロセツサ | |
JPS6232795A (ja) | マルチプロセサ方式の交換機 | |
JPS60179865A (ja) | 割込み受付け制御方式 | |
JPH0418658A (ja) | 機能分散型計算機システム | |
JPH05158852A (ja) | コンピュータシステム装置 | |
JPH0895228A (ja) | 画像処理管理方法 | |
JPH0769840B2 (ja) | ロック管理制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EXPY | Cancellation because of completion of term |