JPH06110857A - プログラムディスパッチ方式 - Google Patents

プログラムディスパッチ方式

Info

Publication number
JPH06110857A
JPH06110857A JP28523392A JP28523392A JPH06110857A JP H06110857 A JPH06110857 A JP H06110857A JP 28523392 A JP28523392 A JP 28523392A JP 28523392 A JP28523392 A JP 28523392A JP H06110857 A JPH06110857 A JP H06110857A
Authority
JP
Japan
Prior art keywords
program
speed
execution flag
arithmetic unit
speed arithmetic
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.)
Granted
Application number
JP28523392A
Other languages
English (en)
Other versions
JP2970262B2 (ja
Inventor
Toru Suzuki
徹 鈴木
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP28523392A priority Critical patent/JP2970262B2/ja
Publication of JPH06110857A publication Critical patent/JPH06110857A/ja
Application granted granted Critical
Publication of JP2970262B2 publication Critical patent/JP2970262B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 プログラムディスパッチ方式に於いて、高速
演算装置と低速演算装置とを組み合わせて効率の良いシ
ステム運用を行なう。 【構成】高速演算装置5と低速演算装置6とから構成さ
れるマルチプロセッサシステムに於いて、プログラム3
に必要な領域を主記憶装置1上に確保できた場合は、プ
ログラムディスパッチ手段10は高速演算装置5にプロ
グラム3を割り当て、確保できなかった場合は仮想空間
管理手段7を利用する低速演算装置6にプログラム3を
割り当てる。プログラム特性判定手段11,プログラム
特性解析手段12,プログラム特性宣言手段13,プロ
グラム使用メモリ解析手段14はプログラム3が演算中
心のものか否かを判断する。プログラム3が演算中心の
ものである場合、プログラムディスパッチ手段10はプ
ログラム3を優先的に高速演算装置5に割り当てる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は電子計算機システムに関
し、特に、スーパコンピュータ等のような高速の電子計
算機システムに於いて、仮想記憶の機能を持たない高速
演算装置と仮想記憶の機能を持つ低速演算装置とをマル
チプロセッサとして組み合わせることによって効率の良
いシステム運用を行なえるようにしたプログラムディス
パッチ方式に関する。
【0002】
【従来の技術】従来、プログラムを高速に実行すること
が要求されるスーパコンピュータ等のような高速の電子
計算機システムは、高度なパイプライン処理を行なって
おり、プログラムで発生した例外をその時点から再実行
することを保証していないものが多い。
【0003】
【発明が解決しようとする課題】このため、従来のスー
パコンピュータ等の計算機システムでは、プログラムに
主記憶装置を割り当てずにおき、主記憶装置上に存在し
ないことにより発生した例外を契機にしてプログラムに
主記憶装置を割り当て、再実行を行ない、実メモリより
多くの空間を必要とするプログラムを実行可能にする所
謂仮想記憶は実現されていない。逆に仮想記憶を実現で
きるようにすると、高速な演算を行なうことができなく
なってしまう。
【0004】本発明の目的はプログラムで発生した例外
をその時点から再実行することを保証していない高速演
算装置と、プログラムで発生した例外をその時点から再
実行することを保証している低速演算装置とを組み合わ
せて使用すことにより、システムの処理効率を向上させ
ることができるプログラムディスパッチ方式を提供する
ことにある。
【0005】
【課題を解決するための手段】本発明は上記目的を達成
するため、(A)主記憶装置と、補助記憶装置と、前記
主記憶装置上または前記補助記憶装置上に存在するプロ
グラムと、前記プログラムの論理的なアドレスを前記主
記憶装置上の物理的なアドレスに変換するアドレス変換
機構と、前記プログラムの実行中、前記アドレス変換機
構によるアドレス変換に失敗した時、当該命令から再実
行を行なわないことを前提に高速化された高速演算装置
と、前記高速演算装置との間で、前記主記憶装置を共有
し、且つ前記高速演算装置と同じ命令を実行可能で、更
に、前記プログラムの実行中、前記アドレス変換機構に
よるアドレス変換が失敗した時に当該命令から再実行が
可能な低速演算装置と、前記低速演算装置で実行するプ
ログラムに対する仮想記憶を実現する仮想空間管理手段
と、前記プログラムが高速演算装置で実行されることの
可否を表示する高速実行フラグと、前記プログラムに前
記主記憶装置を割り当てる際、前記プログラムの全てを
前記主記憶装置に割り当てることができる場合、前記プ
ログラム対応の高速実行フラグを前記高速演算装置での
実行可能を表示するものにする主記憶割り当て手段と、
対応する高速実行フラグが実行可能を表示している前記
プログラムを前記高速演算装置に割り当て、実行可能を
表示していない前記プログラムを前記低速演算装置に割
り当てるプログラムディスパッチ手段とを設けたもので
ある。
【0006】また、本発明は演算中心のプログラムをな
るべく高速演算装置で実行させることにより、システム
全体の性能を向上させるため、(B)請求項1記載のプ
ログラムディスパッチ方式に於いて、高速実行フラグに
代えて、前記プログラムが高速演算装置で実行されるこ
との可否を表示すると共に、前記高速演算装置で実行さ
れる優先性を表示する高速実行フラグを設け、プログラ
ムディスパッチ手段に代えて、対応する高速実行フラグ
が実行可能を示しているプログラムを、対応する高速実
行フラグが示す優先性に従って前記高速演算装置または
低速演算装置に割り当て、対応する高速実行フラグが実
行不可能を示しているプログラムを前記低速演算装置に
割り当てるプログラムディスパッチ手段を設け、更に、
前記プログラムがシステムが所定時間以上連続して前記
高速演算装置または前記低速演算装置を使用した場合、
前記プログラム対応の高速実行フラグが示す優先性を高
くし、前記プログラムによる演算処理が途切れる場合、
前記プログラム対応の高速実行フラグの優先性を低くす
るプログラム特性判定手段を設けたものである。
【0007】また、本発明は演算中心のプログラムをな
るべく高速演算装置で実行させることにより、システム
全体の性能を向上させるため、(C)請求項2記載のプ
ログラムディスパッチ方式に於いて、プログラム特性判
定手段に代えて、前記高速演算装置または前記低速演算
装置上で実行されるプログラムをコンパイルする際、プ
ログラムを静的に解析して演算処理が途切れる箇所に演
算中心のプログラムでないことを示すコードを設定し、
演算のみの処理に入る箇所に演算中心のプログラムであ
ることを示すコードを設定するプログラム特性解析手段
を設け、更に、前記プログラム特性解析手段が設定した
コードに従い、プログラムが演算中心の処理に入る前に
対応する高速実行フラグの優先性を高くし、プログラム
が演算処理の途切れる箇所に入る前に対応する高速実行
フラグの優先性を低くするプログラム特性宣言手段を設
けたものである。
【0008】また、本発明は大きなメモリ領域を必要と
する処理は仮想記憶の機能を利用して低速演算装置で演
算を行ない、小さなメモリ領域で十分な処理は高速演算
装置で演算を行なうようにすることにより、システム全
体の性能を向上させるため、(D)請求項1記載のプロ
グラムディスパッチ方式に於いて、前記高速演算装置ま
たは前記低速演算装置上で実行されるプログラムをコン
パイルする際、前記プログラムを静的に解析してプログ
ラムの処理単位がアクセスするアドレスを宣言するコー
ドを前記処理単位の前に埋め込むプログラム使用メモリ
解析手段を設け、更に、主記憶割り当て手段に代えて、
前記プログラムに前記主記憶装置を割り当てる際、前記
プログラムの全てを前記主記憶装置に割り当てることが
できる場合及び前記コードによってアクセスするアドレ
スが宣言されているプログラムの処理単位を前記主記憶
装置に割り当てることができる場合、前記プログラム対
応の高速実行フラグを前記高速演算装置での実行可能を
表示するものにする主記憶割り当て手段を設けたもので
ある。
【0009】
【作用】(A)の構成に於いては、主記憶割り当て手段
はプログラムに主記憶装置を割り当てる際、プログラム
の全てを主記憶装置に割り当てることができる場合は、
そのプログラムに対応する高速実行フラグを、高速演算
装置での実行可能を表示するものにする。
【0010】プログラムディスパッチ手段は対応する高
速実行フラグが高速演算装置での実行可能を表示してい
る場合は、そのプログラムを高速演算装置で実行させ、
実行不可能を表示している場合は、そのプログラムを低
速演算装置で実行させる。
【0011】(B)の構成に於いては、主記憶割り当て
手段はプログラムに主記憶装置を割り当てる際、プログ
ラムの全てを主記憶装置に割り当てることができる場合
は、そのプログラムに対応する高速実行フラグを高速演
算装置での実行可能を表示するものにする。
【0012】また、プログラム特性判定手段はプログラ
ムがシステムに定められている時間以上連続して高速演
算装置または低速演算装置を使用した場合、そのプログ
ラムに対応する高速実行フラグが示す優先性を高くし、
プログラムによる演算処理が途切れる場合、そのプログ
ラムに対応する高速実行フラグが示す優先性を低くす
る。
【0013】プログラムディスパッチ手段は対応する高
速実行フラグが実行可能を示しているプログラムを、対
応する高速実行フラグが示す優先性に従って高速演算装
置または低速演算装置に割り当て、対応する高速実行フ
ラグが実行不可能を示しているプログラムを低速演算装
置に割り当てる。
【0014】(C)の構成に於いては、プログラム特性
解析手段がコンパイル時、プログラムを静的に解析して
演算処理が途切れる箇所に演算中心のプログラムでない
ことを示すコードを設定し、演算のみの処理に入る箇所
に演算中心のプログラムであることを示すコードを設定
する。
【0015】プログラム特性解析手段が設定したコード
に基づいて、プログラム特性宣言手段はプログラムが演
算中心の処理に入る前に対応する高速実行フラグの優先
性を高くし、プログラムが演算処理の途切れる箇所に入
る前に高速実行フラグの優先性を低くする。
【0016】プログラムディスパッチ手段は対応する高
速実行フラグが実行可能を示しているプログラムを、対
応する高速実行フラグが示す優先性に従って高速演算装
置または低速演算装置に割り当て、対応する高速実行フ
ラグが実行不可能を示しているプログラムを低速演算装
置に割り当てる。
【0017】(D)の構成に於いては、高速演算装置ま
たは低速演算装置上で実行されるプログラムをコンパイ
ルする際、プログラム使用メモリ解析手段がプログラム
を静的に解析してプログラムの処理単位がアクセスする
アドレスを宣言するコードを処理単位の前に埋め込んで
おく。
【0018】主記憶割り当て手段は、プログラムに主記
憶装置を割り当てる際、プログラムの全てを主記憶装置
に割り当てることができる場合及びコードによってアク
セスするアドレスが宣言されているプログラムの処理単
位を主記憶装置に割り当てることができる場合、そのプ
ログラムに対応する高速実行フラグを、高速演算装置で
の実行可能を表示するものにする。
【0019】プログラムディスパッチ手段は、プログラ
ムの実行時、対応する高速実行フラグが高速演算装置で
の実行可能を表示しているプログラムを高速演算装置に
割り当て、実行不可能を表示しているプログラムを低速
演算装置に割り当てる。
【0020】
【実施例】次に本発明の実施例について図面を参照して
詳細に説明する。
【0021】図1は本発明の実施例のブロック図であ
り、主記憶装置1と、補助記憶装置2と、主記憶装置1
上または補助記憶装置2上に存在するプログラム3と、
プログラム3上の論理的なアドレスを主記憶装置1上の
物理的なアドレスに変換するアドレス変換機構4−1,
4−2と、プログラム3の実行中にアドレス変換機構4
−1によるアドレス変換に失敗した場合、当該命令から
再実行を行なわないことを前提に高速化された高速演算
装置5と、高速演算装置5との間で主記憶装置1を共有
し、且つ高速演算装置5と同じ命令を実行可能で、更に
プログラムを実行中、アドレス変換機構4−2によるア
ドレス変換が失敗した場合、当該命令から再実行が可能
な低速演算装置6とから構成されている。
【0022】また、主記憶装置1上には仮想空間管理手
段7と、高速実行フラグ8と、主記憶割り当て手段9
と、プログラムディスパッチ手段10と、プログラム特
性判定手段11と、プログラム特性解析手段12と、プ
ログラム特性宣言手段13と、プログラム使用メモリ解
析手段14とが設けられている。
【0023】仮想空間管理手段7は低速演算装置6に於
いて実行されるプログラムの一部を主記憶装置1に割り
当て、残りの部分を補助記憶装置2に保持させておき、
アドレス変換機構4−2によるアドレス変換が失敗した
場合、主記憶装置1に領域を確保し、更に、補助記憶装
置2に保持されている内容を確保した領域に書き込み、
その後、当該命令から再実行を行なうことにより、実際
に利用可能な主記憶装置1の容量より大きな空間を利用
するプログラムの実行を可能にする機能を有する。
【0024】高速実行フラグ8はプログラム3に対応し
て設けられているものであり、プログラム3が高速演算
装置5で実行可能か否かを表示すると共に、対応するプ
ログラム3が高速演算装置5で実行される際の優先性を
表示する。尚、図1ではプログラム3しか示していない
ので、高速実行フラグもプログラム3に対応するものし
か示していないが、実行する全てのプログラムに対応し
て高速実行フラグは設けられる。
【0025】プログラム使用メモリ解析手段14は高速
演算装置5または低速演算装置6上で実行されるプログ
ラムをコンパイルする際、プログラムを静的に解析し、
プログラムの或る処理単位がアクセスするアドレスを宣
言するコードを、その処理単位に入る前に埋め込む機能
を有する。
【0026】主記憶割り当て手段9は主記憶装置1にプ
ログラム3の実行に必要な空きが存在する場合はプログ
ラム3を主記憶装置1に割り当てると共に、プログラム
3対応の高速実行フラグ8を高速演算装置5での実行可
能を表示するものにする機能と、主記憶装置1にプログ
ラム3の実行に必要な空きが存在しない場合はプログラ
ム使用メモリ解析手段14によってプログラム3に埋め
込まれている或る処理単位がアクセスするアドレス示す
コードを読み込み、コードが示すプログラム部分を割り
当てる空きが主記憶装置1上に存在するか否かを判断す
る機能と、コードが示すプログラム部分を割り当てる空
きが主記憶装置1に存在すると判断した場合は主記憶装
置1にプログラム3の上記或る処理単位(コードが示す
プログラム部分)を割り当て、プログラム3対応の高速
実行フラグ8を高速演算装置5での実行可能を表示する
ものにする機能と、コードが示すプログラム部分を割り
当てる空きが主記憶装置1に存在しないと判断した場合
はプログラム3対応の高速実行フラグ8を高速演算装置
5での実行不可能を表示するものにする機能とを有す
る。
【0027】プログラムディスパッチ手段10は対応す
る高速実行フラグが高速演算装置5での実行が可能であ
ることを表示しているプログラムを、対応する高速実行
フラグが示す優先性に従って高速演算装置5または低速
演算装置6に割り当て、対応する高速実行フラグが高速
演算装置5での実行が不可能であることを表示している
プログラムを低速演算装置6に割り当てる機能を有す
る。
【0028】プログラム特性判定手段11は対応する高
速実行フラグが高速演算装置5での実行可能を表示して
いるプログラムがシステムで定められている時間以上連
続して高速演算装置5または低速演算装置6を使用した
場合、そのプログラムを演算中心の処理を実行中のプロ
グラムと判定し、そのプログラムに対応する高速実行フ
ラグの優先性を高くし、プログラムのシステム呼び出し
等により演算の処理が途切れる場合、演算中心の処理を
実行中のプログラムでないと判定し、そのプログラムに
対応する高速実行フラグの優先性を低くする機能を有す
る。
【0029】プログラム特性解析手段12は高速演算装
置5または低速演算装置6上で実行されるプログラムを
コンパイルする際、プログラムを静的に解析し、システ
ム呼び出し等により処理が途切れる箇所に入る前の部分
に、演算中心の処理を実行中のプログラムでないことを
示すコードを設定し、演算のみの処理に入る前の部分
に、演算中心の処理を実行中のプログラムであることを
示すコードを設定する機能を有する。
【0030】プログラム特性宣言手段13はプログラム
特性解析手段12が設定したコードに従い、演算のみの
処理に入る前に高速実行フラグの優先性を高くし、逆に
システム呼び出し等により処理が途切れる箇所の入る前
に、高速実行フラグの優先性を低くする機能を有する。
【0031】図2は主記憶割り当て手段9の処理例を示
す流れ図である。
【0032】主記憶割り当て手段9はプログラム3を実
行させる場合、先ず、主記憶装置1上にプログラム3を
実行させるために必要となる空きが存在するか否かを判
断する (ステップS21)。
【0033】そして、空きが存在すると判断した場合
(ステップS21がyes)は、主記憶割り当て手段9
はプログラム3に主記憶装置1を割り当てる (ステップ
S23)。このプログラム3は高速演算装置5上で実行
可能となるので、主記憶割り当て手段9はプログラム3
対応の高速実行フラグ8を、高速演算装置5での実行可
能を表示するものにする (ステップS23)。
【0034】また、主記憶装置1上にプログラム3の実
行に必要な空きが存在しない場合 (ステップS21がn
o)は、プログラム使用メモリ解析手段14によってプ
ログラム3に埋め込まれているプログラム3の或る処理
単位がアクセスするアドレスを示すコードを読み込み、
そのコードが示すプログラム部分を割り当てることがで
きる空きが主記憶装置1上に存在するか否かを判断する
(ステップS24)。
【0035】そして、存在すると判断した場合 (ステッ
プS24がyes)はプログラム3の上記或る処理単位
を主記憶装置1上に割り当てる (ステップS25)。こ
のプログラム3も高速演算装置5上で実行可能となるの
で、主記憶割り当て手段9はプログラム3対応の高速実
行フラグ8を、高速演算装置5での実行可能を示すもの
にする (ステップS26)。
【0036】また、コードが示すプログラム部分を割り
当てることができる空きが主記憶装置1上に存在しない
と判断した場合 (ステップS24がno)は、主記憶割
り当て手段9はそのプログラム3は高速演算装置5では
実行不可能と判定し、プログラム3対応の高速実行フラ
グ8を、高速演算装置5での実行不可能を表示するもの
にする (ステップS27)。尚、高速実行フラグ8が高
速演算装置5での実行不可能を示すものにされた場合、
プログラム3は低速演算装置6上で実行され、必要なメ
モリは仮想空間管理手段7によって実際に必要になった
時に割り当てられる。
【0037】図3はプログラムディスパッチ手段10の
処理例を示す流れ図である。
【0038】プログラムディスパッチ手段10はプログ
ラム割り当ての対象としてい演算装置が高速演算装置5
である場合(ステップS31がyes)、高速演算装置
5での実行が優先されているプログラム、即ち対応する
高速実行フラグが高速演算装置5での実行可能を表示
し、且つ優先性が高くなっているプログラムが存在する
か否かを判断する (ステップS32)。
【0039】そして、存在すると判断した場合 (ステッ
プS32がyes)は、プログラムディスパッチ手段1
0は高速実行フラグが高速演算装置5での実行可能を示
し、且つ優先性が高くなっているプログラムの内の1つ
を選択し、高速演算装置5で実行させる (ステップS3
5)。
【0040】また、存在しないと判断した場合 (ステッ
プS32がno)は、プログラムディスパッチ手段10
は主記憶装置1上に高速演算装置5で実行可能なプログ
ラム、即ち対応する高速実行フラグが高速演算装置5で
の実行可能を表示し、且つ優先性が低くなっているプロ
グラムが存在するか否かを判断する (ステップS3
3)。
【0041】そして、存在すると判断した場合 (ステッ
プS33がyes)は、プログラムディスパッチ手段1
0は高速実行フラグが高速演算装置5での実行可能を表
示し、且つ優先性が低くなっているプログラムの内の1
つを選択し、高速演算装置5で実行させる (ステップS
35)。
【0042】また、存在しないと判断した場合 (ステッ
プS33がno)は、割り当てるプログラムがないので
アイドル状態になる (ステップS34)
【0043】また、プログラムの割り当ての対象にして
いる演算装置が低速演算装置6の場合 (ステップS31
がno)は、プログラムディスパッチ手段10は高速演
算装置5での実行が優先されていないプログラム、即ち
高速実行フラグが高速演算装置5での実行可能を表示
し、且つ優先性が低くなっているプログラムが存在する
か否かを判断する (ステップS36)。
【0044】そして、存在すると判断した場合 (ステッ
プS36がyes)は、プログラムディスパッチ手段1
0は高速実行フラグが高速演算装置5での実行可能を表
示し、且つ優先性が低くなっているプログラムの内の1
つを選択し、低速演算装置6で実行させる (ステップS
35)。
【0045】また、存在しないと判断した場合 (ステッ
プS36がno)は、プログラムディスパッチ手段10
は実行可能なプログラム、即ち高速実行フラグが高速演
算装置5での実行不可能を表示しているプログラムが存
在するか否かを判断する (ステップS37)。
【0046】そして、存在すると判断した場合 (ステッ
プS37がyes)は、プログラムディスパッチ手段1
0は高速実行フラグが高速演算装置5での実行不可能を
表示しているプログラムの内の1つを選択し、低速演算
装置6で実行させる (ステップS35)。
【0047】また、存在しないと判断した場合(ステッ
プS37がno)は、割り当てるプログラムが存在しな
いのでアイドル状態になる (ステップS38)。
【0048】尚、ここでは、高速実行フラグに対応する
プログラムの高速演算装置5での実行の可否及び優先性
を表示させ、優先性も考慮してプログラムを高速演算装
置5または低速演算装置6に割り当てるようにしたが、
高速演算装置5での実行の可否のみを高速実行フラグに
表示させ、対応する高速実行フラグが高速演算装置5で
の実行可能を表示しているプログラムは高速演算装置5
に割り当て、実行不可能の表示しているプログラムは低
速演算装置6に割り当てるようにすることもできる。
【0049】図4は高速実行フラグの優先性を制御する
処理の内、プログラム特性判定手段11が行なう処理を
示した流れ図である。
【0050】プログラム特性判定手段11は高速演算装
置5で実行されているプログラムがスーパバイザの呼び
出しを行なうと (ステップS41)、そのプログラムは
演算中心の処理を実行中でないと判定し、そのプログラ
ム対応の高速実行フラグの優先性を低くする (ステップ
S42)。
【0051】また、プログラム特性判定手段11はステ
ップS43に示すタイムスライスによる割り込みを契機
にして、プログラムがシステムで定められている時間以
上連続して高速演算装置5,低速演算装置6を使用した
か否かをチェックする(ステップS44)。
【0052】そして、プログラムがシステムに定められ
ている時間以上連続して高速演算装置5,低速演算装置
6を使用した場合 (ステップS44がyes)は、その
プログラムは演算中心の処理を行なっていると判定し、
そのプログラムに対応する高速実行フラグの優先性を高
くする (ステップS45)。
【0053】また、プログラムがシステムに定められた
時間以上連続して高速演算装置5,低速演算装置6を使
用していないと判断した場合 (ステップS44がno)
は、そのプログラムに対応する高速実行フラグの優先性
には変化を与えない。
【0054】尚、図4に示したプログラム特性判定手段
11による処理は、プログラム特性解析手段12によっ
てコードが埋め込まれているプログラムに対しては行な
わない。
【0055】図5は高速実行フラグの優先性を制御する
処理の内、プログラム特性宣言手段13が行なう処理を
示した流れ図である。
【0056】プログラム特性宣言手段13はプログラム
3の実行時、プログラム特性解析手段12によってプロ
グラム3に埋め込まれているコードに基づいて、プログ
ラム3が演算のみの処理に入ると判定した場合、プログ
ラム3がステップS52に示す演算中心の処理を実行す
る前に、プログラム3に対応する高速実行フラグ8の優
先性を高くする (ステップS51)。
【0057】また、プログラム特性宣言手段13はプロ
グラム特性解析手段12によってプログラム3に埋め込
まれているコードに基づいて、プログラム3がシステム
呼び出し等により処理が途切れる箇所に入ると判断した
場合、プログラム3がステップS54に示す演算中心の
処理を終了する前に、プログラム3に対応する高速実行
フラグ8の優先性を低くする (ステップS53)。
【0058】
【発明の効果】以上説明したように、本発明は、プログ
ラムを全て主記憶装置に割り当てることができる場合は
そのプログラムを高速演算装置に割り当て、割り当てる
ことができない場合は仮想記憶の機能を利用する低速演
算装置に割り当てるようにしたものであるので、システ
ムの処理効率を高いものにすることができ、また、何ら
かの原因でシステムのメモリを少なく構成して利用しな
ければならない時でも全てのプログラムの実行が可能に
なる効果がある。
【0059】また、本発明は所定の時間以上連続して高
速演算装置または低速演算装置を使用したプログラム
(演算中心のプログラム)に対応する高速実行フラグの
優先性を高いものにし、そのプログラムが優先的に高速
演算装置に割り当てられるようにするプログラム特性判
定手段を備えたものであるので、プログラムの特性にあ
った演算装置の割り当てが可能になり、更にシステムの
処理効率を向上させることが可能になる効果がある。
【0060】また、本発明はプログラムのコンパイル時
に静的にプログラムを解析し、プログラムが演算中心の
処理に入る部分,演算中心でない処理に入る部分にそれ
ぞれそのことを示すコードを設定するプログラム特性解
析手段と、プログラムの実行時にプログラム特性解析手
段が設定したコードに従って対応する高速実行フラグの
優先性を変更するプログラム特性宣言手段を備えたもの
であるので、プログラムの特性にあった演算装置の割り
当てが可能になり、システムの処理効率を向上させるこ
とが可能になる効果がある。
【0061】更に、本発明はプログラムのコンパイル時
に、プログラムの処理単位がアクセスするアドレスを宣
言するコードを処理単位の前に埋め込むプログラム使用
メモリ解析手段と、処理単位を主記憶装置に割り当てる
ことができる場合はそのプログラムが高速演算装置で実
行可能なことを高速実行フラグに表示させる主記憶割り
当て手段とを備えたものであり、大きなメモリ領域を必
要とする処理は仮想記憶の機能を利用して低速演算装置
で、小さなメモリ領域で十分な処理は高速演算装置で実
行することができるので、システムの負荷が高い状況
で、プログラム全体を主記憶装置に割り当てることがで
きない場合であってもシステムの処理効率を高いものに
することができる効果がある。
【図面の簡単な説明】
【図1】本発明の実施例のブロック図である。
【図2】主記憶割り当て手段9の処理例を示す流れ図で
ある。
【図3】プログラムディスパッチ手段10の処理例を示
す流れ図である。
【図4】プログラム特性判定手段11の処理例を示す流
れ図である。
【図5】プログラム特性宣言手段13の処理例を示す流
れ図である。
【符号の説明】
1…主記憶装置 2…補助記憶装置 3…プログラム 4−1,4−2…アドレス変換機構 5…高速演算装置 6…低速演算装置 7…仮想空間管理手段 8…高速実行フラグ 9…主記憶割り当て手段 10…プログラムディスパッチ手段 11…プログラム特性判定手段 12…プログラム特性解析手段 13…プログラム特性宣言手段 14…プログラム使用メモリ解析手段

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 主記憶装置と、 補助記憶装置と、 前記主記憶装置上または前記補助記憶装置上に存在する
    プログラムと、 前記プログラムの論理的なアドレスを前記主記憶装置上
    の物理的なアドレスに変換するアドレス変換機構と、 前記プログラムの実行中、前記アドレス変換機構による
    アドレス変換に失敗した時、当該命令から再実行を行な
    わないことを前提に高速化された高速演算装置と、 前記高速演算装置との間で、前記主記憶装置を共有し、
    且つ前記高速演算装置と同じ命令を実行可能で、更に、
    前記プログラムの実行中、前記アドレス変換機構による
    アドレス変換が失敗した時に当該命令から再実行が可能
    な低速演算装置と、 前記低速演算装置で実行するプログラムに対する仮想記
    憶を実現する仮想空間管理手段と、 前記プログラムが高速演算装置で実行されることの可否
    を表示する高速実行フラグと、 前記プログラムに前記主記憶装置を割り当てる際、前記
    プログラムの全てを前記主記憶装置に割り当てることが
    できる場合、前記プログラム対応の高速実行フラグを前
    記高速演算装置での実行可能を表示するものにする主記
    憶割り当て手段と、 対応する高速実行フラグが実行可能を表示している前記
    プログラムを前記高速演算装置に割り当て、実行可能を
    表示していない前記プログラムを前記低速演算装置に割
    り当てるプログラムディスパッチ手段とを備えたことを
    特徴とするプログラムディスパッチ方式。
  2. 【請求項2】 請求項1記載のプログラムディスパッチ
    方式に於いて、 高速実行フラグに代えて、前記プログラムが高速演算装
    置で実行されることの可否を表示すると共に、前記高速
    演算装置で実行される優先性を表示する高速実行フラグ
    を備え、 プログラムディスパッチ手段に代えて、対応する高速実
    行フラグが実行可能を示しているプログラムを、対応す
    る高速実行フラグが示す優先性に従って前記高速演算装
    置または前記低速演算装置に割り当て、対応する高速実
    行フラグが実行不可能を示しているプログラムを前記低
    速演算装置に割り当てるプログラムディスパッチ手段を
    備え、 更に、前記プログラムがシステムが所定時間以上連続し
    て前記高速演算装置または前記低速演算装置を使用した
    場合、前記プログラム対応の高速実行フラグが示す優先
    性を高くし、前記プログラムによる演算処理が途切れる
    場合、前記プログラム対応の高速実行フラグの優先性を
    低くするプログラム特性判定手段を備えたことを特徴と
    するプログラムディスパッチ方式。
  3. 【請求項3】 請求項2記載のプログラムディスパッチ
    方式に於いて、 プログラム特性判定手段に代えて、前記高速演算装置ま
    たは前記低速演算装置上で実行されるプログラムをコン
    パイルする際、プログラムを静的に解析して演算処理が
    途切れる箇所に演算中心のプログラムでないことを示す
    コードを設定し、演算のみの処理に入る箇所に演算中心
    のプログラムであることを示すコードを設定するプログ
    ラム特性解析手段を備え、 更に、前記プログラム特性解析手段が設定したコードに
    従い、プログラムが演算中心の処理に入る前に対応する
    高速実行フラグの優先性を高くし、プログラムが演算処
    理の途切れる箇所に入る前に対応する高速実行フラグの
    優先性を低くするプログラム特性宣言手段を備えたこと
    を特徴とするプログラムディスパッチ方式。
  4. 【請求項4】 請求項1記載のプログラムディスパッチ
    方式に於いて、 前記高速演算装置または前記低速演算装置上で実行され
    るプログラムをコンパイルする際、前記プログラムを静
    的に解析してプログラムの処理単位がアクセスするアド
    レスを宣言するコードを前記処理単位の前に埋め込むプ
    ログラム使用メモリ解析手段を備え、 更に、主記憶割り当て手段に代えて、前記プログラムに
    前記主記憶装置を割り当てる際、前記プログラムの全て
    を前記主記憶装置に割り当てることができる場合及び前
    記コードによってアクセスするアドレスが宣言されてい
    るプログラムの処理単位を前記主記憶装置に割り当てる
    ことができる場合、前記プログラム対応の高速実行フラ
    グを前記高速演算装置での実行可能を表示するものにす
    る主記憶割り当て手段を備えたことを特徴とするプログ
    ラムディスパッチ方式。
JP28523392A 1992-09-30 1992-09-30 プログラムディスパッチ方式 Expired - Fee Related JP2970262B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28523392A JP2970262B2 (ja) 1992-09-30 1992-09-30 プログラムディスパッチ方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28523392A JP2970262B2 (ja) 1992-09-30 1992-09-30 プログラムディスパッチ方式

Publications (2)

Publication Number Publication Date
JPH06110857A true JPH06110857A (ja) 1994-04-22
JP2970262B2 JP2970262B2 (ja) 1999-11-02

Family

ID=17688840

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28523392A Expired - Fee Related JP2970262B2 (ja) 1992-09-30 1992-09-30 プログラムディスパッチ方式

Country Status (1)

Country Link
JP (1) JP2970262B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6986066B2 (en) * 2001-01-05 2006-01-10 International Business Machines Corporation Computer system having low energy consumption
KR101687664B1 (ko) * 2015-10-02 2017-01-02 대원강업주식회사 코일 스프링용 쇼트피닝장치 및 코일 스프링의 쇼트피닝방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3891273B2 (ja) * 2002-03-05 2007-03-14 日本電気株式会社 トランザクション処理の負荷分散方法およびそのシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6986066B2 (en) * 2001-01-05 2006-01-10 International Business Machines Corporation Computer system having low energy consumption
KR101687664B1 (ko) * 2015-10-02 2017-01-02 대원강업주식회사 코일 스프링용 쇼트피닝장치 및 코일 스프링의 쇼트피닝방법

Also Published As

Publication number Publication date
JP2970262B2 (ja) 1999-11-02

Similar Documents

Publication Publication Date Title
US6233599B1 (en) Apparatus and method for retrofitting multi-threaded operations on a computer by partitioning and overlapping registers
KR100885346B1 (ko) 액티비티 정보를 이용한 가상 머신 관리
US5414848A (en) Method and apparatus for sharing a common routine stored in a single virtual machine with other virtual machines operating in a preemptive muli-tasking computer system
US6711605B2 (en) Multi OS configuration method and computer system
US8429669B2 (en) Virtual machine switching control by prefetching information out of and updating a set of processor control information based on a bitmap having update status
US5386561A (en) Method of integrated system load control through dynamic time-slicing in a virtual storage environment
JP4896376B2 (ja) コプロセッサの性能を強化するシステムおよび方法
JP2004272894A (ja) グラフィックス処理ユニットのマルチスレッド式カーネル
JPH10232785A (ja) 不連続な実行時スタックを動的にサイジングするための方法及び装置
KR20130066900A (ko) 연성 실시간 운영체제의 실시간성 확보방법
KR20020088063A (ko) 정보 처리 시스템에서 병렬 처리되는 작업들간의 데이터종속성의 대략적인 결정
US20060149940A1 (en) Implementation to save and restore processor registers on a context switch
JP4026667B2 (ja) マルチos構成方法
JPH06110857A (ja) プログラムディスパッチ方式
US6240500B1 (en) Method for dynamically placing procedures of a program in a memory
JPH065515B2 (ja) キャッシュ再ロード・オーバーヘッドを減少させる方法およびコンピュータ・システム
US6772259B2 (en) Interrupt handlers used in different modes of operations
US20040168154A1 (en) Software processing method and software processing system
US20080072009A1 (en) Apparatus and method for handling interrupt disabled section and page pinning apparatus and method
JP4755232B2 (ja) コンパイラ
JPH0744401A (ja) 論理集積回路およびそのデータ処理システム
US8782675B2 (en) Method and system of accessing display window memory
JPS62125437A (ja) 付加プロセツサの制御方法
US10795813B2 (en) Implementing per-processor memory areas with non-preemptible operations using virtual aliases
JP2008243203A (ja) 仮想化されたデータ処理環境におけるワークロード管理

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees