JP2006350622A - マルチプロセッサシステム - Google Patents
マルチプロセッサシステム Download PDFInfo
- Publication number
- JP2006350622A JP2006350622A JP2005175071A JP2005175071A JP2006350622A JP 2006350622 A JP2006350622 A JP 2006350622A JP 2005175071 A JP2005175071 A JP 2005175071A JP 2005175071 A JP2005175071 A JP 2005175071A JP 2006350622 A JP2006350622 A JP 2006350622A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- slave processor
- slave
- command
- application program
- 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.)
- Withdrawn
Links
Images
Landscapes
- Multi Processors (AREA)
Abstract
【課題】コマンド体系の異なる複数のCPUで構成されたマルチプロセッサシステムにおいて、システムの処理能力の向上を図ること。
【解決手段】コマンド体系の異なる複数のスレーブプロセッサ30と、ホストプロセッサ20と含むプロセッサシステム10である。複数のスレーブプロセッサがアクセス可能な共有メモリ40は、アプリケーション領域単位で各スレーブプロセッサに割り当て可能に構成される。ホストプロセッサ20は、スケジューリング処理部と、各スレーブプロセッサ30に割り振ったプロセスに対応したアプリケーション領域を割り当てる共有メモリ割り当て処理部とを含む。スレーブプロセッサ30は、ホストプロセッサ20に割り当てられたアプリケーション領域に格納されたアプリケーションプログラムを、自己のコマンド体系に変換するコマンド変換処理部を含む。
【選択図】 図1
【解決手段】コマンド体系の異なる複数のスレーブプロセッサ30と、ホストプロセッサ20と含むプロセッサシステム10である。複数のスレーブプロセッサがアクセス可能な共有メモリ40は、アプリケーション領域単位で各スレーブプロセッサに割り当て可能に構成される。ホストプロセッサ20は、スケジューリング処理部と、各スレーブプロセッサ30に割り振ったプロセスに対応したアプリケーション領域を割り当てる共有メモリ割り当て処理部とを含む。スレーブプロセッサ30は、ホストプロセッサ20に割り当てられたアプリケーション領域に格納されたアプリケーションプログラムを、自己のコマンド体系に変換するコマンド変換処理部を含む。
【選択図】 図1
Description
本発明は、マルチプロセッサシステムに関する。
マルチプロセッサシステムでは処理内容はいくつかの閉じたプロセスに分割され、それぞれのプロセッサに処理が分配される。
一般にマルチプロセッサシステムを構成する場合にはコマンド体系が同じプロセッサを用いていた。
本願発明者は、コマンド体系が異なるプロセッサを用いたマルチプロセッサシステムを構築することを発案し、開発を行っている。
しかしコマンド体系が異なるプロセッサを用いる場合には、そのプロセッサに対応したコマンド体系のプロセスしか分配できないため、1つのプロセッサに負担がかかりマルチプロセッサであることが生かせない場合があるという問題点があった。
本発明は以上のような問題点に鑑みてなされたものであり、その目的とするところは、コマンド体系の異なる複数のCPUで構成されたマルチプロセッサシステムにおいて、システムの処理能力の向上を図ることを目的とする。
(1)本発明は、コマンド体系の異なる複数のスレーブプロセッサと、ホストプロセッサと含み、処理内容が複数のプロセスに分割され、各スレーブプロセッサに分配されるマルチプロセッサシステムであって、
前記複数のスレーブプロセッサがアクセス可能な共有メモリを含み、
前記共有メモリは、
各プロセスに対応したアプリケーションプログラムが記憶されたアプリケーション領域が、アプリケーション領域単位で各スレーブプロセッサに割り当て可能に構成され、
前記ホストプロセッサは、
各スレーブプロセッサにプロセスを割り振るスケジューリング処理部と、
各スレーブプロセッサに割り振ったプロセスに対応したアプリケーションプログラムが記憶された共有メモリのアプリケーション領域を各スレーブプロセッサに割り当てる共有メモリ割り当て処理部とを含み、
前記スレーブプロセッサは、
ホストプロセッサに割り当てられた共有メモリのアプリケーション領域に格納されたアプリケーションプログラムを、自己のコマンド体系に変換するコマンド変換処理部を含み、コマンド変換処理部で変換されたアプリケーションプログラムを実行することを特徴とする。
前記複数のスレーブプロセッサがアクセス可能な共有メモリを含み、
前記共有メモリは、
各プロセスに対応したアプリケーションプログラムが記憶されたアプリケーション領域が、アプリケーション領域単位で各スレーブプロセッサに割り当て可能に構成され、
前記ホストプロセッサは、
各スレーブプロセッサにプロセスを割り振るスケジューリング処理部と、
各スレーブプロセッサに割り振ったプロセスに対応したアプリケーションプログラムが記憶された共有メモリのアプリケーション領域を各スレーブプロセッサに割り当てる共有メモリ割り当て処理部とを含み、
前記スレーブプロセッサは、
ホストプロセッサに割り当てられた共有メモリのアプリケーション領域に格納されたアプリケーションプログラムを、自己のコマンド体系に変換するコマンド変換処理部を含み、コマンド変換処理部で変換されたアプリケーションプログラムを実行することを特徴とする。
ここにおいてコマンド体系が異なるとは、例えば各スレーブプロセッサのアセンブラが異なることである。
またプロセスとは、たとえば閉じたプロセスである。
スケジューリング処理部は、プロセスの優先順位と各スレーブプロセッサの処理状況に基づいて各スレーブプロセッサにプロセスを割り振るようにしてもよい。
本発明によれば、各スレーブプロセッサは自己に分配されたアプリケーションプログラムを自己のコマンド体系に変換してから実行する。このためコマンド体系の異なる複数のスレーブプロセッサが接続されているマルチプロセッサシステムにおいて、ホストプロセッサは、プロセス単位に分割されたアプリケーションプログラム(閉じたアプリケーションプログラム)を各スレーブプロセッサに効率よく分配することができる。
(2)本発明のマルチプロセッサシステムは、
前記共有メモリは、前記複数のスレーブプロセッサとクロスバススイッチを介して接続され、
前記ホストプロセッサの共有メモリ割り当て処理部は、
各スレーブプロセッサに割り振ったプロセスに対応したアプリケーションプログラムが記憶された共有メモリのアプリケーション領域が各スレーブプロセッサに割り当てられるように、クロスバススイッチの切り替えの指示を行い、
各スレーブプロセッサは前記アプリケーション領域単位でクロスバススイッチを介して共有メモリの割り当てられたアプリケーション領域にアクセスして実行すべきアプリケーションプログラムを読み出すことを特徴とする。
前記共有メモリは、前記複数のスレーブプロセッサとクロスバススイッチを介して接続され、
前記ホストプロセッサの共有メモリ割り当て処理部は、
各スレーブプロセッサに割り振ったプロセスに対応したアプリケーションプログラムが記憶された共有メモリのアプリケーション領域が各スレーブプロセッサに割り当てられるように、クロスバススイッチの切り替えの指示を行い、
各スレーブプロセッサは前記アプリケーション領域単位でクロスバススイッチを介して共有メモリの割り当てられたアプリケーション領域にアクセスして実行すべきアプリケーションプログラムを読み出すことを特徴とする。
(3)本発明は、コマンド体系の異なる複数のスレーブプロセッサと、ホストプロセッサと含み、処理内容が複数のプロセスに分割され、各スレーブプロセッサに分配されるマルチプロセッサシステムであって、
前記ホストプロセッサは、
各スレーブプロセッサのコマンド体系情報を各スレーブプロセッサに関連づけて記憶するコマンド体系情報記憶部と、
各スレーブプロセッサにプロセスを割り振るスケジューリング処理部と、
各スレーブプロセッサに割り振ったプロセスに対応したアプリケーションプログラムを、各スレーブプロセッサに関連付けて記憶されているコマンド体系情報に基づき、各スレーブプロセッサのコマンド体系に変換して各スレーブプロセッサがアクセス可能なメモリに格納するコマンド変換処理部とを含み、
前記スレーブプロセッサは、
各スレーブプロセッサがアクセス可能なメモリに格納された、各スレーブプロセッサのコマンド体系に変換されたアプリケーションプログラムを実行することを特徴とする。
前記ホストプロセッサは、
各スレーブプロセッサのコマンド体系情報を各スレーブプロセッサに関連づけて記憶するコマンド体系情報記憶部と、
各スレーブプロセッサにプロセスを割り振るスケジューリング処理部と、
各スレーブプロセッサに割り振ったプロセスに対応したアプリケーションプログラムを、各スレーブプロセッサに関連付けて記憶されているコマンド体系情報に基づき、各スレーブプロセッサのコマンド体系に変換して各スレーブプロセッサがアクセス可能なメモリに格納するコマンド変換処理部とを含み、
前記スレーブプロセッサは、
各スレーブプロセッサがアクセス可能なメモリに格納された、各スレーブプロセッサのコマンド体系に変換されたアプリケーションプログラムを実行することを特徴とする。
ここにおいてコマンド体系が異なるとは、例えば各スレーブプロセッサのアセンブラが異なることである。
またプロセスとは、たとえば閉じたプロセスである。
コマンド体系情報とは、例えば複数のコマンド体系がある場合にその中のどのコマンド体系であるのかを特定するための情報でも良いし、またコマンド体系の中身(使用するコマンドと機能の対応関係を表す情報等)の情報や、所与のコマンド体系(例えばホストプロセッサが対応可能なコマンド体系)のアプリケーションプログラムを自己のコマンド体系へ変換するために必要な情報でもよい。
スケジューリング処理部は、プロセスの優先順位と各スレーブプロセッサの処理状況に基づいて各スレーブプロセッサにプロセスを割り振るようにしてもよい。
本発明によれば、ホストプロセッサは各スレーブプロセッサに割り振ったプロセスのアプリケーションプログラムを各スレーブプロセッサのコマンド体系に変換してから引き渡すのことができるで、コマンド体系の異なる複数のスレーブプロセッサが接続されているマルチプロセッサシステムにおいて、ホストプロセッサは、プロセス単位に分割されたアプリケーションプログラム(閉じたアプリケーションプログラム)を各スレーブプロセッサに効率よく分配することができる。
(4)本発明のマルチプロセッサシステムは、
前記スレーブプロセッサは、ホストプロセッサに対し自己のコマンド体系を知らせるためのコマンド体系情報をわたし、
前記ホストプロセッサは、
受け取ったコマンド体系情報をスレーブプロセッサに関連づけて記憶することを特徴とする。
前記スレーブプロセッサは、ホストプロセッサに対し自己のコマンド体系を知らせるためのコマンド体系情報をわたし、
前記ホストプロセッサは、
受け取ったコマンド体系情報をスレーブプロセッサに関連づけて記憶することを特徴とする。
(5)本発明のマルチプロセッサシステムは、
前記スレーブプロセッサがアクセス可能なローカルメモリを含み、
前記ホストプロセッサは、各スレーブプロセッサのコマンド体系に変換されたアプリケーションプログラムを、前記各スレーブプロセッサのローカルメモリに格納することを特徴とする。
前記スレーブプロセッサがアクセス可能なローカルメモリを含み、
前記ホストプロセッサは、各スレーブプロセッサのコマンド体系に変換されたアプリケーションプログラムを、前記各スレーブプロセッサのローカルメモリに格納することを特徴とする。
(6)本発明のマルチプロセッサシステムは、
前記コマンド体系情報は、所与のコマンド体系で記述された前記アプリケーションプログラムをスレーブプロセッサのコマンド体系に変換するための変換情報を含み、
前記ホストプロセッサのコマンド変換処理部は、
前記アプリケーションプログラムを、前記変換情報に基づき各スレーブプロセッサのコマンド体系に変換することを特徴とする。
前記コマンド体系情報は、所与のコマンド体系で記述された前記アプリケーションプログラムをスレーブプロセッサのコマンド体系に変換するための変換情報を含み、
前記ホストプロセッサのコマンド変換処理部は、
前記アプリケーションプログラムを、前記変換情報に基づき各スレーブプロセッサのコマンド体系に変換することを特徴とする。
(7)本発明のマルチプロセッサシステムは、
前記各アプリケーションプログラムに対応付けて処理指数が記憶されており、
前記各スレーブプロセッサは現在の処理余力を定数化する処理余力定数化処理部を含み、
前記ホストプロセッサのスケジューリング処理部は、
前記各スレーブプロセッサの処理余力とアプリケーションプログラムの処理指数とに基づき、各スレーブプロセッサにプロセスを割り振ることを特徴とする。
前記各アプリケーションプログラムに対応付けて処理指数が記憶されており、
前記各スレーブプロセッサは現在の処理余力を定数化する処理余力定数化処理部を含み、
前記ホストプロセッサのスケジューリング処理部は、
前記各スレーブプロセッサの処理余力とアプリケーションプログラムの処理指数とに基づき、各スレーブプロセッサにプロセスを割り振ることを特徴とする。
(8)本発明のマルチプロセッサシステムは、
前記アプリケーションプログラムは、オブジェクト指向プログラムとして記述され、オブジェクト単位でプロセスを構成することを特徴とする。
前記アプリケーションプログラムは、オブジェクト指向プログラムとして記述され、オブジェクト単位でプロセスを構成することを特徴とする。
処理内容をオブジェクト指向プログラムで記述すると、オブジェクトをプロセスに対応させることができるので、処理内容のプロセス化が容易になり、システムの処理能力の向上を図ることができる。
1.集積回路装置
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。
図1は、第1の実施の形態のマルチプロセッサシステムについて説明するための図である。
第1の実施の形態のマルチプロセッサシステム10は、コマンド体系の異なる(アセンブラが異なる)複数のスレーブプロセッサ30−1、30−2、・・・、30−nと、ホストプロセッサ20と含む。
前記複数のスレーブプロセッサ30−1、30−2、・・・、30−nがアクセス可能な共有メモリを含み、
前記共有メモリ40は、各プロセスに対応したアプリケーションプログラムが記憶されたアプリケーション領域AP1、AP2、・・・・が、アプリケーション領域単位で各スレーブプロセッサ30−1、30−2、・・・、30−nに割り当て可能に構成されている。
前記共有メモリ40は、各プロセスに対応したアプリケーションプログラムが記憶されたアプリケーション領域AP1、AP2、・・・・が、アプリケーション領域単位で各スレーブプロセッサ30−1、30−2、・・・、30−nに割り当て可能に構成されている。
メモリ空間は、プロセッサ固有領域(ローカルメモリ34−1、34−2、・・・)と全てのプロセッサがアクセス可能な共有領域(共有メモリ40)を有しており、アプリケーションプログラムとそのワーク領域が一体となったアプリケーション領域AP1、AP2、・・・を共有メモリに配置している。
前記ホストプロセッサ20は、各スレーブプロセッサにプロセスを割り振るスケジューリング処理部として機能する。スケジューリング処理部は、例えば各スレーブプロセッサにプロセスを割り振るスケジューリングプログラムをホストプロセッサ20が実行することにより実現することができる。
また前記ホストプロセッサ20は、各スレーブプロセッサに割り振ったプロセスに対応したアプリケーションプログラムが記憶された共有メモリのアプリケーション領域AP1、AP2、・・・を各スレーブプロセッサ30−1、30−2、・・・に割り当てる割り当て処理部として機能する。割り当て処理部は、ホストプロセッサが例えば各スレーブプロセッサに割り振ったプロセスに対応したアプリケーションプログラムが記憶された共有メモリのアプリケーション領域AP1、AP2、・・・を各スレーブプロセッサ30−1、30−2、・・・に割り当てるプログラムを実行することにより実現することができる。
前記スレーブプロセッサ30−1、30−2、・・・、30−nは、ホストプロセッサに割り当てられた共有メモリのアプリケーション領域AP1、AP2、・・・・に格納されたアプリケーションプログラムを、自己のコマンド体系に変換するコマンド変換処理部32−1、32−2、・・・、32−nを含み、コマンド変換処理部32−1、32−2、・・・、32−nで変換されたアプリケーションプログラムを実行する。
また共有メモリ40は、前記複数のスレーブプロセッサ30−1、30−2、・・・、30−nとクロスバススイッチ50を介して接続される。
前記ホストプロセッサは、各プロセッサに割り振ったプロセスに対応したアプリケーションプログラムが記憶された共有メモリのアプリケーション領域を各スレーブプロセッサに割り当てられるように、クロスバススイッチの切り替えの指示を行い、各スレーブプロセッサ30−1、30−2、・・・、30−nはアプリケーション領域単位AP1、AP2、・・・でクロスバスイッチ50を介して共有メモリ40にアクセスするようにしてもよい。
また各アプリケーションプログラムに対応付けて処理指数が記憶されており、各スレーブプロセッサは現在の処理余力を定数化する処理余力定数化処理部34−1、34−2、・・を含み、前記ホストCPUは、各スレーブプロセッサの処理余力とアプリケーションプログラムの処理指数とに基づき、各スレーブプロセッサにプロセスを割り振るようにしてもよい。
本実施の形態によれば、各スレーブプロセッサは自己に分配されたアプリケーションプログラムを自己のコマンド体系に変換してから実行する。このためコマンド体系の異なる複数のスレーブプロセッサが接続されているマルチプロセッサシステムにおいて、ホストプロセッサは、プロセス単位に分割されたアプリケーションプログラム(閉じたアプリケーションプログラム)を各スレーブプロセッサに効率よく分配することができる。
図2はプログラムの処理指数について説明するための図である。
本実施の形態では、共有メモリの各アプリケーション領域AP1、AP2、・・(202)に記憶されているアプリケーションプログラムの処理指数(処理指数値は本例では32ビットとする)204を記憶させておく。
例えば210は共有メモリのアプリケーション領域1(共有メモリ1)に記憶されているアプリケーションプログラムの処理指数204が’0000-8000H(末尾のHは数値が16表数値であることを表す旨の表記)’であることを示している。
処理指数は、例えばアプリケーションプログラムの中に含まれる所定の命令(数値演算・論理演算・データ転送処理に関する命令)の数によってあらわすようにしてもよい。
またスレーブプロセッサは、処理余力(ここでは処理負荷定数)の計測を行う。処理余力の計測は、一定時間内に、命令コードのデコード結果をカウントダウンする事で行うようにしてもよい。そして一定時間後にカウント値はステータスとして別レジスタにセットされると共にリセットされ再びカウントを行う。カウント対象命令は、数値演算・論理演算・データ転送処理としてもい。処理余力値は、本例では32ビットとする。
本実施の形態では、ホストプロセッサは、各スレーブプロセッサの処理余力とアプリケーションプログラムの処理指数とに基づき、各スレーブプロセッサにプロセスを割り振る。
次に図3〜図6を用いて本実施の形態のスケジューリングの一例について説明する。
スレーブプロセッサ数を3として、現在既に各スレーブプロセッサは共有メモリとは別な処理を行っているとする。各アプリケーションの発生順(共有メモリ番号で示す)は、図3のとおりであるとし、各プロセスの処理が優先順位がA−C−Bの順として同時に処理要求が出たとすると、ホストプロセッサのスケジューリングにより各スレーブプロセッサでは図4、図5、図6に示すような順序でアプリケーションが実行される。
各スレーブプロセッサの処理余力定数化処理部は、自己の余力を定数化し、定数化された処理指数をホストプロセッサが参照可能な状態におく。例えば実行中の数値演算・論理演算・データ転送処理をカウントし、カウント値を当該アプリケーションプログラムの処理指数から減算した値(処理負荷指数とする)を処理余力値としてもよい。ホストプロセッサは、処理負荷指数が小さいと処理余力が大きいと判断し、処理負荷指数が小さいスレーブプロセッサに優先順位の高いジョブを割り付けるようにしてもよい。
例えば図4の310の時点ではスレーブプロセッサ3の処理負荷指数が最も小さいのでホストプロセッサは、最も優先順位の高いジョブA−1をスレーブプロセッサ3に割り振る。
次に図4の320の時点ではスレーブプロセッサ2の処理負荷指数が最も小さいので、ホストプロセッサは次に優先順位の高かったジョブB−4(既にジョブA−1が実行されているので現時点では最も優先順位高いジョブ)をスレーブプロセッサ3に割り振る。
次に図4の330の時点ではスレーブプロセッサ1の処理負荷指数が最も小さいので、ホストプロセッサは次に優先順位の高かったジョブC−7(既にジョブA−1、ジョブB−4が実行されているので現時点では最も優先順位高いジョブ)をスレーブプロセッサ1に割り振る。
図7は、第2の実施の形態のマルチプロセッサシステムについて説明するための図である。
第2の実施の形態のマルチプロセッサシステム100はコマンド体系の異なる(アセンブラが異なる)複数のスレーブプロセッサ130−1、130−2、130−3と、ホストプロセッサ120と含むマルチプロセッサシステム100である。
ホストプロセッサ120は、各スレーブプロセッサ130−1、130−2、130−3のコマンド体系情報を各スレーブプロセッサに関連づけて記憶するコマンド体系情報記憶部122−1,122−2、122−3を含む。
またホストプロセッサ120は、各スレーブプロセッサにプロセスを割り振るスケジューリング処理部126を含む。
またホストプロセッサ120は、各スレーブプロセッサに割り振ったプロセスに対応したアプリケーションプログラムを、各スレーブプロセッサに関連付けて記憶されているコマンド体系情報に基づき、各スレーブプロセッサのコマンド体系に変換して各スレーブプロセッサがアクセス可能なメモリに格納するコマンド変換処理部124を含む。
スレーブプロセッサ130−1、130−2、130−3は、ホストプロセッサ120に対し自己のコマンド体系を知らせるためのコマンド体系情報をわたす。例えば各スレーブプロセッサ130−1、130−2、130−3は自己の内部に記憶されているコマンドリスト(コマンド体系情報の一例であって、所与のコマンド体系から自己のコマンド体系の変換のための対応付け可能な対応表)をマルチプロセッサシステムへの接続時に接続信号とともに、ホストプロセッサに送信するようにしてもよい。
またホストプロセッサ120は、受け取ったコマンドリスト(コマンド体系情報の一例)を各スレーブプロセッサに関連づけて記憶し(122−1、122−2、122−3参照)、各スレーブプロセッサ130−1、130−2、130−3にプロセスを割り振るようにしてもよい。
ホストプロセッサ120は、各スレーブプロセッサに割り振ったプロセスに対応したアプリケーションプログラムを、各スレーブプロセッサに関連付けて記憶されているコマンドリスト(コマンド体系情報の一例)122−1、12−2,122−3に基づき、各スレーブプロセッサのコマンド体系にしたがったコマンドに変換し、各スレーブプロセッサがアクセス可能なメモリ(ローカルメモリ132−1,132−2,132−3)に格納するようにしてもよい。
各スレーブプロセッサ130−1、130−2、130−3は、 各スレーブプロセッサがアクセス可能なメモリ(ローカルメモリ132−1,132−2,132−3)に格納された、各スレーブプロセッサのコマンド体系に変換されたアプリケーションプログラムを実行する。
本実施の形態によれば、ホストプロセッサは各スレーブプロセッサに割り振ったプロセスのアプリケーションプログラムを各スレーブプロセッサのコマンド体系に変換してから引き渡すのことができるで、コマンド体系の異なる複数のスレーブプロセッサが接続されているマルチプロセッサシステムにおいて、ホストプロセッサは、プロセス単位に分割されたアプリケーションプログラム(閉じたアプリケーションプログラム)を各スレーブプロセッサに効率よく分配することができる。
なお、本発明は本実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
例えば本実施の形態のマルチプロセッサシステムの前記アプリケーションプログラムは、オブジェクト指向プログラムとして記述し、オブジェクト単位でプロセスを構成するようにしてもよい。
処理内容をオブジェクト指向プログラムで記述すると、オブジェクトをプロセスに対応させることができるので、処理内容のプロセス化が容易になり、システムの処理能力の向上を図ることができる。
10、マルチプロセッサシステム、20 ホストプロセッサ、30 スレーブプロセッサ、32 コマンド変換処理部、34 ローカルメモリ、40 共有メモリ、50 クロスバススイッチ、AP1,AP2、・・・AP8 アプリケーション領域、100、マルチプロセッサシステム、120 ホストプロセッサ、122 コマンドリスト、124 コマンド変換処理部、126 スケジューリング処理部、130 スレーブプロセッサ、132 ローカルメモリ、134 コマンドリスト、150 通信路
Claims (8)
- コマンド体系の異なる複数のスレーブプロセッサと、ホストプロセッサと含み、処理内容が複数のプロセスに分割され、各スレーブプロセッサに分配されるマルチプロセッサシステムであって、
前記複数のスレーブプロセッサがアクセス可能な共有メモリを含み、
前記共有メモリは、
各プロセスに対応したアプリケーションプログラムが記憶されたアプリケーション領域が、アプリケーション領域単位で各スレーブプロセッサに割り当て可能に構成され、
前記ホストプロセッサは、
各スレーブプロセッサにプロセスを割り振るスケジューリング処理部と、
各スレーブプロセッサに割り振ったプロセスに対応したアプリケーションプログラムが記憶された共有メモリのアプリケーション領域を各スレーブプロセッサに割り当てる共有メモリ割り当て処理部とを含み、
前記スレーブプロセッサは、
ホストプロセッサに割り当てられた共有メモリのアプリケーション領域に格納されたアプリケーションプログラムを、自己のコマンド体系に変換するコマンド変換処理部を含み、コマンド変換処理部で変換されたアプリケーションプログラムを実行することを特徴とするマルチプロセッサシステム。 - 請求項1において、
前記共有メモリは、前記複数のスレーブプロセッサとクロスバススイッチを介して接続され、
前記ホストプロセッサの共有メモリ割り当て処理部は、
各スレーブプロセッサに割り振ったプロセスに対応したアプリケーションプログラムが記憶された共有メモリのアプリケーション領域が各スレーブプロセッサに割り当てられるように、クロスバススイッチの切り替えの指示を行い、
各スレーブプロセッサは前記アプリケーション領域単位でクロスバススイッチを介して共有メモリの割り当てられたアプリケーション領域にアクセスして実行すべきアプリケーションプログラムを読み出すことを特徴とするマルチプロセッサシステム。 - コマンド体系の異なる複数のスレーブプロセッサと、ホストプロセッサと含み、処理内容が複数のプロセスに分割され、各スレーブプロセッサに分配されるマルチプロセッサシステムであって、
前記ホストプロセッサは、
各スレーブプロセッサのコマンド体系情報を各スレーブプロセッサに関連づけて記憶するコマンド体系情報記憶部と、
各スレーブプロセッサにプロセスを割り振るスケジューリング処理部と、
各スレーブプロセッサに割り振ったプロセスに対応したアプリケーションプログラムを、各スレーブプロセッサに関連付けて記憶されているコマンド体系情報に基づき、各スレーブプロセッサのコマンド体系に変換して各スレーブプロセッサがアクセス可能なメモリに格納するコマンド変換処理部とを含み、
前記スレーブプロセッサは、
各スレーブプロセッサがアクセス可能なメモリに格納された、各スレーブプロセッサのコマンド体系に変換されたアプリケーションプログラムを実行することを特徴とするマルチプロセッサシステム。 - 請求項3において、
前記スレーブプロセッサは、ホストプロセッサに対し自己のコマンド体系を知らせるためのコマンド体系情報をわたし、
前記ホストプロセッサは、
受け取ったコマンド体系情報をスレーブプロセッサに関連づけて記憶することを特徴とするマルチプロセッサシステム。 - 請求項3乃至4において、
前記スレーブプロセッサがアクセス可能なローカルメモリを含み、
前記ホストプロセッサは、各スレーブプロセッサのコマンド体系に変換されたアプリケーションプログラムを、前記各スレーブプロセッサのローカルメモリに格納することを特徴とするマルチプロセッサシステム。 - 請求項3乃至5のいずれかにおいて、
前記コマンド体系情報は、所与のコマンド体系で記述された前記アプリケーションプログラムをスレーブプロセッサのコマンド体系に変換するための変換情報を含み、
前記ホストプロセッサのコマンド変換処理部は、
前記アプリケーションプログラムを、前記変換情報に基づき各スレーブプロセッサのコマンド体系に変換することを特徴とするマルチプロセッサシステム。 - 請求項1乃至6のいずれかにおいて、
前記各アプリケーションプログラムに対応付けて処理指数が記憶されており、
前記各スレーブプロセッサは現在の処理余力を定数化する処理余力定数化処理部を含み、
前記ホストプロセッサのスケジューリング処理部は、
前記各スレーブプロセッサの処理余力とアプリケーションプログラムの処理指数とに基づき、各スレーブプロセッサにプロセスを割り振ることを特徴とするマルチプロセッサシステム。 - 請求項1乃至7のいずれかにおいて、
前記アプリケーションプログラムは、オブジェクト指向プログラムとして記述され、オブジェクト単位でプロセスを構成することを特徴とするマルチプロセッサシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005175071A JP2006350622A (ja) | 2005-06-15 | 2005-06-15 | マルチプロセッサシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005175071A JP2006350622A (ja) | 2005-06-15 | 2005-06-15 | マルチプロセッサシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006350622A true JP2006350622A (ja) | 2006-12-28 |
Family
ID=37646402
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005175071A Withdrawn JP2006350622A (ja) | 2005-06-15 | 2005-06-15 | マルチプロセッサシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006350622A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100874169B1 (ko) | 2007-02-02 | 2008-12-15 | 엠텍비젼 주식회사 | 프로세서간 커맨드를 직접 전달하는 듀얼 포트 메모리 및이를 수행하기 위한 방법 |
WO2012101760A1 (ja) * | 2011-01-25 | 2012-08-02 | 富士通株式会社 | メモリ制御方法、およびシステム |
WO2012133366A1 (ja) * | 2011-03-29 | 2012-10-04 | Quadrac株式会社 | 並列処理装置及び並列処理システム |
-
2005
- 2005-06-15 JP JP2005175071A patent/JP2006350622A/ja not_active Withdrawn
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100874169B1 (ko) | 2007-02-02 | 2008-12-15 | 엠텍비젼 주식회사 | 프로세서간 커맨드를 직접 전달하는 듀얼 포트 메모리 및이를 수행하기 위한 방법 |
WO2012101760A1 (ja) * | 2011-01-25 | 2012-08-02 | 富士通株式会社 | メモリ制御方法、およびシステム |
JP5621856B2 (ja) * | 2011-01-25 | 2014-11-12 | 富士通株式会社 | メモリ制御方法、およびシステム |
US9384797B2 (en) | 2011-01-25 | 2016-07-05 | Fujitsu Limited | Memory control method and system |
EP2669805A4 (en) * | 2011-01-25 | 2016-08-31 | Fujitsu Ltd | MEMORY CONTROL METHOD AND SYSTEM |
WO2012133366A1 (ja) * | 2011-03-29 | 2012-10-04 | Quadrac株式会社 | 並列処理装置及び並列処理システム |
JPWO2012133366A1 (ja) * | 2011-03-29 | 2014-07-28 | Quadrac株式会社 | 並列処理装置及び並列処理システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7987465B2 (en) | Method and apparatus for dynamic allocation of processing resources | |
US9223709B1 (en) | Thread-aware cache memory management | |
JP5770721B2 (ja) | 情報処理システム | |
JP5894496B2 (ja) | 半導体装置 | |
US10241946B2 (en) | Multi-channel DMA system with command queue structure supporting three DMA modes | |
EP1645967A1 (en) | Multi-channel DMA with shared FIFO buffer | |
CN101165655A (zh) | 多处理器计算系统及其任务分配方法 | |
JP2003216486A (ja) | メモリの部分の割り当て管理方法 | |
CN103049328A (zh) | 计算机系统中内存资源分配方法 | |
JP2004127291A (ja) | 連続したメモリ・アドレスを提供する方法、システムおよびコンピュータ・ソフトウェア | |
US10725940B2 (en) | Reallocate memory pending queue based on stall | |
CN111158868A (zh) | 计算系统及用于操作计算系统的方法 | |
JP6882398B2 (ja) | メモリプロセッサを用いた多重処理システム及びその動作方法 | |
US10073783B2 (en) | Dual mode local data store | |
JP2006350622A (ja) | マルチプロセッサシステム | |
JP2009020555A (ja) | スワップ処理装置 | |
CN105453066A (zh) | 处理器和存储器控制方法 | |
US20130332703A1 (en) | Shared Register Pool For A Multithreaded Microprocessor | |
US9678752B2 (en) | Scheduling apparatus and method of dynamically setting the size of a rotating register | |
US9760969B2 (en) | Graphic processing system and method thereof | |
JP6817827B2 (ja) | アクセラレータ処理管理装置、ホスト装置、アクセラレータ処理実行システム、方法およびプログラム | |
CN106462551A (zh) | 用于为多处理器核心装置分配装置引脚所有权的装置及方法 | |
JP2009252133A (ja) | ベクトル処理装置及びベクトル処理方法 | |
US10503557B2 (en) | Method of processing OpenCL kernel and computing device therefor | |
CN111414329A (zh) | 一种云端数据中心的fpga架构 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080626 |
|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080902 |
|
A072 | Dismissal of procedure |
Free format text: JAPANESE INTERMEDIATE CODE: A072 Effective date: 20081014 |