JPH0883257A - 並列コンピュータシステムのプロセス実行最適化方法 - Google Patents
並列コンピュータシステムのプロセス実行最適化方法Info
- Publication number
- JPH0883257A JPH0883257A JP6218396A JP21839694A JPH0883257A JP H0883257 A JPH0883257 A JP H0883257A JP 6218396 A JP6218396 A JP 6218396A JP 21839694 A JP21839694 A JP 21839694A JP H0883257 A JPH0883257 A JP H0883257A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- execution
- processing
- utilization rate
- management
- 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
Links
Landscapes
- Multi Processors (AREA)
Abstract
(57)【要約】
【目的】 実行途中で動的に、利用率の高いプロセッサ
のプロセスを利用率の低いプロセッサへ移動させて、効
率良く業務を処理する。 【構成】 管理用プロセッサ11と複数の処理用プロセ
ッサ12,13,14がネットワーク15により接続さ
れている。管理用プロセッサ11のメモリ16には、プ
ロセスを移動する際の優先順位を定義した優先度管理テ
ーブル20、各処理用プロセッサの実行プロセス、実行
利用率を管理する実行プロセス管理テーブル30があ
る。管理用プロセッサ11は、実行プロセス管理テーブ
ル30により、利用率の高い処理用プロセッサと利用率
の低い処理用プロセッサが存在する場合、該利用率の高
いプロセッサで実行中の複数のプロセスの中から、優先
度管理テーブル20を参照して優先順位の一番低いプロ
セスを選択し、利用率の低いプロセッサへ移動する。
のプロセスを利用率の低いプロセッサへ移動させて、効
率良く業務を処理する。 【構成】 管理用プロセッサ11と複数の処理用プロセ
ッサ12,13,14がネットワーク15により接続さ
れている。管理用プロセッサ11のメモリ16には、プ
ロセスを移動する際の優先順位を定義した優先度管理テ
ーブル20、各処理用プロセッサの実行プロセス、実行
利用率を管理する実行プロセス管理テーブル30があ
る。管理用プロセッサ11は、実行プロセス管理テーブ
ル30により、利用率の高い処理用プロセッサと利用率
の低い処理用プロセッサが存在する場合、該利用率の高
いプロセッサで実行中の複数のプロセスの中から、優先
度管理テーブル20を参照して優先順位の一番低いプロ
セスを選択し、利用率の低いプロセッサへ移動する。
Description
【0001】
【産業上の利用分野】本発明は、複数のプロセッサが高
速ネットワークに接続され、複数業務の複数プロセスを
同時に実行する並列コンピュータシステムにおいて、複
数のプロセスを各プロセッサで効率よく分散して実行す
るプロセス最適化方法に関する。
速ネットワークに接続され、複数業務の複数プロセスを
同時に実行する並列コンピュータシステムにおいて、複
数のプロセスを各プロセッサで効率よく分散して実行す
るプロセス最適化方法に関する。
【0002】
【従来の技術】一般に並列コンピュータシステムにおい
て業務を実行している場合、利用率の高い(負荷の集中
した)プロセッサと、利用率の低い(負荷の少ない或い
はかかっていない)プロセッサが発生する。このような
場合、従来のこの種コンピュータシステムでは、オペレ
ータの操作なしに自動的に性能が足りないプロセッサで
実行中のプロセスを、他の性能的に余裕のあるプロセッ
サへ移動させて行う処理ができなかった。
て業務を実行している場合、利用率の高い(負荷の集中
した)プロセッサと、利用率の低い(負荷の少ない或い
はかかっていない)プロセッサが発生する。このような
場合、従来のこの種コンピュータシステムでは、オペレ
ータの操作なしに自動的に性能が足りないプロセッサで
実行中のプロセスを、他の性能的に余裕のあるプロセッ
サへ移動させて行う処理ができなかった。
【0003】
【発明が解決しようとする課題】従来技術においては、
並列コンピュータシステムの各プロセッサで実行するプ
ロセスの振り分けを変更する場合、一々、オペレータの
操作を必要とするため、利用率の高いプロセッサと利用
率の低いプロセッサがある場合、実行途中で、利用率の
高いプロセッサで実行中のプロセスの一部をダイナミッ
クに利用率の低いプロセッサに移動して効率よく処理を
行うことができないという問題があった。
並列コンピュータシステムの各プロセッサで実行するプ
ロセスの振り分けを変更する場合、一々、オペレータの
操作を必要とするため、利用率の高いプロセッサと利用
率の低いプロセッサがある場合、実行途中で、利用率の
高いプロセッサで実行中のプロセスの一部をダイナミッ
クに利用率の低いプロセッサに移動して効率よく処理を
行うことができないという問題があった。
【0004】本発明の目的は、並列コンピュータシステ
ムにおいて、利用率の高いプロセッサのプロセスを、利
用率の低いプロセッサへ、実行途中に、オペレータの操
作なしに自動的且つダイナミックに移動して効率よく処
理を行う、プロセス実行最適化方法を提供することにあ
る。
ムにおいて、利用率の高いプロセッサのプロセスを、利
用率の低いプロセッサへ、実行途中に、オペレータの操
作なしに自動的且つダイナミックに移動して効率よく処
理を行う、プロセス実行最適化方法を提供することにあ
る。
【0005】
【課題を解決するための手段】本発明は、複数プロセス
を並列に処理する複数の処理用プロセッサと、これら処
理用プロセッサの実行プロセスを管理する管理用プロセ
ッサを具備し、該管理用プロセッサは、各処理用プロセ
ッサで処理されるプロセスの優先順位と、各処理用プロ
セッサの実行利用率を保持し、自動的に、実行利用率の
高い処理用プロセッサで実行中の複数のプロセスの中か
ら優先順位の低いプロセスを選択して、実行利用率の低
い処理用プロセッサへ移動するようにしたことである。
を並列に処理する複数の処理用プロセッサと、これら処
理用プロセッサの実行プロセスを管理する管理用プロセ
ッサを具備し、該管理用プロセッサは、各処理用プロセ
ッサで処理されるプロセスの優先順位と、各処理用プロ
セッサの実行利用率を保持し、自動的に、実行利用率の
高い処理用プロセッサで実行中の複数のプロセスの中か
ら優先順位の低いプロセスを選択して、実行利用率の低
い処理用プロセッサへ移動するようにしたことである。
【0006】
【作用】管理用プロセッサは各処理用プロセッサから、
一定時間毎あるいは必要に応じ、その時点の実行利用率
を収集する。そして、この収集した各処理用プロセッサ
の実行利用率によって、実行利用率の高い(負荷の集中
した)プロセッサで実行中の複数プロセスの中から、優
先順位の一番低いプロセスの実行を停止し、該停止まで
の実行結果、プログラム停止ポイントを当該プロセスと
共に、実行利用率の低い(負荷の少ない)プロセッサへ
転送する。該実行利用率の低いプロセッサは、転送され
たプロセスを、その停止までの実行結果、プログラム停
止ポイントに基づいて処理を続行する。なお、管理用プ
ロセッサは、複数の処理用プロセッサの中の任意のプロ
セッサが兼ねてもよい。
一定時間毎あるいは必要に応じ、その時点の実行利用率
を収集する。そして、この収集した各処理用プロセッサ
の実行利用率によって、実行利用率の高い(負荷の集中
した)プロセッサで実行中の複数プロセスの中から、優
先順位の一番低いプロセスの実行を停止し、該停止まで
の実行結果、プログラム停止ポイントを当該プロセスと
共に、実行利用率の低い(負荷の少ない)プロセッサへ
転送する。該実行利用率の低いプロセッサは、転送され
たプロセスを、その停止までの実行結果、プログラム停
止ポイントに基づいて処理を続行する。なお、管理用プ
ロセッサは、複数の処理用プロセッサの中の任意のプロ
セッサが兼ねてもよい。
【0007】
【実施例】以下、本発明の一実施例を図面により説明す
る。
る。
【0008】図1は本発明の一実施例のシステム構成図
で、プロセッサ11〜14が高速なネットワーク15に
接続されている。本実施例では、プロセッサ11を管理
用プロセッサ、プロセッサ12〜14をプロセス実行の
処理用プロセッサとし、管理用プロセッサ11のメモリ
16に、各処理用プロセッサで実行されるプロセスの優
先度を管理する優先度管理テーブル20と、各処理用プ
ロセッサの実行プロセス、規定利用率、実行利用率を管
理する実行プロセス管理テーブル30を用意する。〜
は、処理用プロセッサ12〜14上の現実行中のプロ
セスを示している。
で、プロセッサ11〜14が高速なネットワーク15に
接続されている。本実施例では、プロセッサ11を管理
用プロセッサ、プロセッサ12〜14をプロセス実行の
処理用プロセッサとし、管理用プロセッサ11のメモリ
16に、各処理用プロセッサで実行されるプロセスの優
先度を管理する優先度管理テーブル20と、各処理用プ
ロセッサの実行プロセス、規定利用率、実行利用率を管
理する実行プロセス管理テーブル30を用意する。〜
は、処理用プロセッサ12〜14上の現実行中のプロ
セスを示している。
【0009】なお、プロセッサ11〜14を全て処理用
プロセッサとし、その任意のプロセッサが管理用プロセ
ッサを兼ねるようにしてもよい。これは管理用プロセッ
サが故障した場合に、その機能を他のプロセッサに引き
継げる利点がある。
プロセッサとし、その任意のプロセッサが管理用プロセ
ッサを兼ねるようにしてもよい。これは管理用プロセッ
サが故障した場合に、その機能を他のプロセッサに引き
継げる利点がある。
【0010】図2は、管理用プロセッサ11のメモリ1
6上にある優先度管理テーブル20の構成例を示したも
ので、21は実行業務名、22は実行業務の優先順位、
23は各実行業務に対応するプロセスID、24はプロ
セスの優先順位である。本例の場合、業務の優先順位は
A>B>Cであり、プロセスの優先順位は各々>、
>、>である。優先順位をつける基準は、業務
やプロセスの重要度でもよいし、緊急度でも構わなく、
使うシステムにより可変でもよい。
6上にある優先度管理テーブル20の構成例を示したも
ので、21は実行業務名、22は実行業務の優先順位、
23は各実行業務に対応するプロセスID、24はプロ
セスの優先順位である。本例の場合、業務の優先順位は
A>B>Cであり、プロセスの優先順位は各々>、
>、>である。優先順位をつける基準は、業務
やプロセスの重要度でもよいし、緊急度でも構わなく、
使うシステムにより可変でもよい。
【0011】図3は、管理プロセッサ11の同じくメモ
リ16上にある実行プロセス管理テーブル30の構成例
を示したもので、31はプロセッサ番号、32は各プロ
セッサでの現実行中のプロセス(実行プロセス)、33
は各プロセッサについて実行プロセスを軽減するプロセ
ッサを決める目安となる負荷の上限を定めた規定利用率
(MAX)、34は実行プロセスの移動先のプロセッサ
を決める目安となる負荷の下限を定めた規定利用率(M
IN)、35は各プロセッサの実際の負荷の利用率(実
行利用率)である。実行利用率は、例えば、一定時間当
りのメモリアクセス回数(アクセス頻度)で定義する。
リ16上にある実行プロセス管理テーブル30の構成例
を示したもので、31はプロセッサ番号、32は各プロ
セッサでの現実行中のプロセス(実行プロセス)、33
は各プロセッサについて実行プロセスを軽減するプロセ
ッサを決める目安となる負荷の上限を定めた規定利用率
(MAX)、34は実行プロセスの移動先のプロセッサ
を決める目安となる負荷の下限を定めた規定利用率(M
IN)、35は各プロセッサの実際の負荷の利用率(実
行利用率)である。実行利用率は、例えば、一定時間当
りのメモリアクセス回数(アクセス頻度)で定義する。
【0012】本実施例では、図3のプロセッサ番号1〜
3は、図1の処理用プロセッサ12,13,14に対応
するとする。図3より、プロセッサ12はプロセスと
、プロセッサ13はプロセスと、プロセッサ14
はプロセスとを実行し、その実行利用率35はそれ
ぞれ90%,10%,30%である。一方、規定利用率
33,34は、ここではプロセッサ12,13,14と
も一律に80%,20%としている。
3は、図1の処理用プロセッサ12,13,14に対応
するとする。図3より、プロセッサ12はプロセスと
、プロセッサ13はプロセスと、プロセッサ14
はプロセスとを実行し、その実行利用率35はそれ
ぞれ90%,10%,30%である。一方、規定利用率
33,34は、ここではプロセッサ12,13,14と
も一律に80%,20%としている。
【0013】管理用プロセッサ11は、実行プロセス管
理テーブル30を参照して、実行利用率80%以上(負
荷が集中している)の処理用プロセッサがあり、しか
も、実行利用率20%以下(負荷が少ない)の処理用プ
ロセッサがある場合、実行利用率80%以上の処理用プ
ロセッサで処理している複数のプロセスの中から、優先
度管理テーブル20を参照して、優先順位の一番低いプ
ロセスを選択し、その処理を実行利用率20%以下の処
理用プロセッサへ移動する。図2および図3において
は、プロセッサ番号1の処理用プロセッサ12のプロセ
スの処理が、プロセッサ番号2の処理用プロセッサ1
3に移動せしめられる。
理テーブル30を参照して、実行利用率80%以上(負
荷が集中している)の処理用プロセッサがあり、しか
も、実行利用率20%以下(負荷が少ない)の処理用プ
ロセッサがある場合、実行利用率80%以上の処理用プ
ロセッサで処理している複数のプロセスの中から、優先
度管理テーブル20を参照して、優先順位の一番低いプ
ロセスを選択し、その処理を実行利用率20%以下の処
理用プロセッサへ移動する。図2および図3において
は、プロセッサ番号1の処理用プロセッサ12のプロセ
スの処理が、プロセッサ番号2の処理用プロセッサ1
3に移動せしめられる。
【0014】図4は、各処理プロセッサへのプロセスの
配布から、プロセッサの実行利用率によってプロセスを
移動させる処理の流れを示すフローチャート、図5はそ
の際に管理用プロセッサと処理用プロセッサ間で授受さ
れるデータ形式を示す図である。以下、図4および図5
を参照して、実行利用率の高いプロセッサの実行中プロ
セスを実行利用率の低いプロセッサに、オペレータの操
作なしに自動的に移動させる処理を、具体的に説明す
る。
配布から、プロセッサの実行利用率によってプロセスを
移動させる処理の流れを示すフローチャート、図5はそ
の際に管理用プロセッサと処理用プロセッサ間で授受さ
れるデータ形式を示す図である。以下、図4および図5
を参照して、実行利用率の高いプロセッサの実行中プロ
セスを実行利用率の低いプロセッサに、オペレータの操
作なしに自動的に移動させる処理を、具体的に説明す
る。
【0015】管理用プロセッサ11は、実行業務をスケ
ーリングし、各処理用プロセッサ12,13,14へ実
行すべきプロセスを配布する(ステップ401)。図5
の501は、この実行プロセス配布時のデータ形式を示
したものである。実行プロセスの配布はプロセッサ毎、
ブロードキャストのいずれでもよいが、各プロセッサに
は、プロセス間の通信の必要性などのため、他のプロセ
ッサの実行プロセスIDも配布しておく。また、管理用
プロセッサ11は、この実行プロセス配布時、メモリ1
6上の優先度管理テーブル20に業務毎、プロセス毎の
優先度を設定し、実行プロセス管理テーブル30に各管
理用プロセッサ12,13,14が実行するプロセスを
格納しておく。実行プロセス管理テーブル30の規定利
用率33,34はあらかじめ設定しておくか、あるい
は、当該ステップ401で実行プロセスと対に設定する
ことでもよい。各プロセッサの実行利用率35は、初期
状態ではすべて零である。
ーリングし、各処理用プロセッサ12,13,14へ実
行すべきプロセスを配布する(ステップ401)。図5
の501は、この実行プロセス配布時のデータ形式を示
したものである。実行プロセスの配布はプロセッサ毎、
ブロードキャストのいずれでもよいが、各プロセッサに
は、プロセス間の通信の必要性などのため、他のプロセ
ッサの実行プロセスIDも配布しておく。また、管理用
プロセッサ11は、この実行プロセス配布時、メモリ1
6上の優先度管理テーブル20に業務毎、プロセス毎の
優先度を設定し、実行プロセス管理テーブル30に各管
理用プロセッサ12,13,14が実行するプロセスを
格納しておく。実行プロセス管理テーブル30の規定利
用率33,34はあらかじめ設定しておくか、あるい
は、当該ステップ401で実行プロセスと対に設定する
ことでもよい。各プロセッサの実行利用率35は、初期
状態ではすべて零である。
【0016】各処理用プロセッサ12,13,14は、
管理用プロセッサ11から配布されたプロセスの処理を
開始する(ステップ402)。本実施例では、プロセッ
サ番号1のプロセッサ12はプロセスと、プロセッ
サ番号2のプロセッサ13はプロセスと、プロセッ
サ番号3のプロセッサ14はプロセスとの処理を開
始する。
管理用プロセッサ11から配布されたプロセスの処理を
開始する(ステップ402)。本実施例では、プロセッ
サ番号1のプロセッサ12はプロセスと、プロセッ
サ番号2のプロセッサ13はプロセスと、プロセッ
サ番号3のプロセッサ14はプロセスとの処理を開
始する。
【0017】各処理用プロセッサ12,13,14は、
各種データ等を格納する記憶装置を具備しており、該記
憶装置をアクセスすることでプロセスを処理し、また、
必要があれば他のプロセッサのプロセスと通信して、該
他プロセッサの記憶装置をアクセスする。ここでは、こ
の記憶装置に対するアクセス頻度をプロセッサの実行利
用率(負荷の集中度)の目安とする。各処理用プロセッ
サ12,13,14では、プロセスの処理を開始する
と、時々刻々記憶装置に対する一定時間当りのアクセス
回数をカウントし、その最新の値を実行利用率として保
持しておく。なお、実行利用率は、一定時間当りの命令
処理数などを目安とすることでもよい。
各種データ等を格納する記憶装置を具備しており、該記
憶装置をアクセスすることでプロセスを処理し、また、
必要があれば他のプロセッサのプロセスと通信して、該
他プロセッサの記憶装置をアクセスする。ここでは、こ
の記憶装置に対するアクセス頻度をプロセッサの実行利
用率(負荷の集中度)の目安とする。各処理用プロセッ
サ12,13,14では、プロセスの処理を開始する
と、時々刻々記憶装置に対する一定時間当りのアクセス
回数をカウントし、その最新の値を実行利用率として保
持しておく。なお、実行利用率は、一定時間当りの命令
処理数などを目安とすることでもよい。
【0018】管理用プロセッサ11は、各処理用プロセ
ッサ12,13,14の上記実行利用率を収集し、実行
プロセス管理テーブル30の実行利用率35を更新する
(ステップ403)。実行利用率の収集は、ここでは、
管理用プロセッサ11が一定時間毎に各処理用プロセッ
サ12,13,14に要求を出し、それに応答して、各
処理用プロセッサ12,13、14がその時点の実行利
用率を管理用プロセッサ11に連絡することで行うとす
る。図5の502〜504は、各処理用プロセッサ1
2,13,14が実行利用率を管理用プロセッサ11へ
連絡する際のデータ形式を示したものである。
ッサ12,13,14の上記実行利用率を収集し、実行
プロセス管理テーブル30の実行利用率35を更新する
(ステップ403)。実行利用率の収集は、ここでは、
管理用プロセッサ11が一定時間毎に各処理用プロセッ
サ12,13,14に要求を出し、それに応答して、各
処理用プロセッサ12,13、14がその時点の実行利
用率を管理用プロセッサ11に連絡することで行うとす
る。図5の502〜504は、各処理用プロセッサ1
2,13,14が実行利用率を管理用プロセッサ11へ
連絡する際のデータ形式を示したものである。
【0019】各処理用プロセッサ12,13,14の実
行利用率を収集すると、管理用プロセッサ11は、実行
プロセス管理テーブル30内の規定利用率(MAX)3
3と実行利用率35を比較して、実行利用率が80%以
上のプロセッサがあるか調べる(ステップ404)。こ
こで、実行利用率が80%以上のプロセッサがない場
合、各処理用プロセッサ12,13,14はいずれも負
荷の集中がないと見なし、この場合は何もしない。即
ち、各処理用プロセッサ12,13,14は、そのまま
処理を続行する。
行利用率を収集すると、管理用プロセッサ11は、実行
プロセス管理テーブル30内の規定利用率(MAX)3
3と実行利用率35を比較して、実行利用率が80%以
上のプロセッサがあるか調べる(ステップ404)。こ
こで、実行利用率が80%以上のプロセッサがない場
合、各処理用プロセッサ12,13,14はいずれも負
荷の集中がないと見なし、この場合は何もしない。即
ち、各処理用プロセッサ12,13,14は、そのまま
処理を続行する。
【0020】一方、実行利用率が80%以上のプロセッ
サがある場合、該プロセッサに負荷が集中していると見
なす。この場合、管理用プロセッサ11は、実行プロセ
ス管理テーブル30内の規定利用率(MIN)34と実
行利用率35を比較して、実行利用率が20%以下のプ
ロセッサがあるか調べる(ステップ405)。即ち、負
荷が集中しているプロセッサのプロセスを移動させる先
の、負荷の少ないプロセッサを探す。ここでも、実行利
用率が20%以下(負荷が少ない)のプロセッサがない
場合、何もしない。この場合、各処理用プロセッサ1
2,13,14はそのまま処理を続行するため、負荷の
集中しているプロセッサは、該負荷集中の状態でプロセ
ス処理を続けることとなる。即ち、実行利用率80%以
上(負荷集中)のプロセッサはあるが、利用率20%以
下(負荷が少ない)のプロセッサがない場合、プロセス
を移動させても、移動先プロセッサで実行利用率が80
%以上になる可能性が高く、結局、処理効率は悪くなる
ため、プロセスを移動させずにそのまま処理を続行させ
るのである。
サがある場合、該プロセッサに負荷が集中していると見
なす。この場合、管理用プロセッサ11は、実行プロセ
ス管理テーブル30内の規定利用率(MIN)34と実
行利用率35を比較して、実行利用率が20%以下のプ
ロセッサがあるか調べる(ステップ405)。即ち、負
荷が集中しているプロセッサのプロセスを移動させる先
の、負荷の少ないプロセッサを探す。ここでも、実行利
用率が20%以下(負荷が少ない)のプロセッサがない
場合、何もしない。この場合、各処理用プロセッサ1
2,13,14はそのまま処理を続行するため、負荷の
集中しているプロセッサは、該負荷集中の状態でプロセ
ス処理を続けることとなる。即ち、実行利用率80%以
上(負荷集中)のプロセッサはあるが、利用率20%以
下(負荷が少ない)のプロセッサがない場合、プロセス
を移動させても、移動先プロセッサで実行利用率が80
%以上になる可能性が高く、結局、処理効率は悪くなる
ため、プロセスを移動させずにそのまま処理を続行させ
るのである。
【0021】実行利用率80%以上(負荷集中)のプロ
セッサが存在し、かつ、実行利用率20%以下(負荷が
少ない)のプロセッサも存在する場合、管理用プロセッ
サ11は、まず、実行利用率80%以上のプロセッサの
実行プロセスの中から、優先度管理テーブル20を参照
して、優先順位の一番低いプロセスを選択し、該実行利
用率80%以上のプロセッサに当該プロセスの処理を停
止させ、該停止した時点までの実行結果、プログラム停
止ポイントの収集を行う(ステップ406)。次に、管
理用プロセッサ11は、実行利用率20%以下のプロセ
ッサに対して、上記実行利用率80%以上のプロセッサ
で処理を停止させたプロセス内容、及び、それまでの実
行結果、プログラム停止ポイントを転送する(ステップ
407)。
セッサが存在し、かつ、実行利用率20%以下(負荷が
少ない)のプロセッサも存在する場合、管理用プロセッ
サ11は、まず、実行利用率80%以上のプロセッサの
実行プロセスの中から、優先度管理テーブル20を参照
して、優先順位の一番低いプロセスを選択し、該実行利
用率80%以上のプロセッサに当該プロセスの処理を停
止させ、該停止した時点までの実行結果、プログラム停
止ポイントの収集を行う(ステップ406)。次に、管
理用プロセッサ11は、実行利用率20%以下のプロセ
ッサに対して、上記実行利用率80%以上のプロセッサ
で処理を停止させたプロセス内容、及び、それまでの実
行結果、プログラム停止ポイントを転送する(ステップ
407)。
【0022】図2、図3において、プロセッサ番号1の
処理用プロセッサ12の実行利用率は90%、プロセッ
サ番号2の処理用プロセッサ13の実行利用率は10%
であり、さらに、処理用プロセッサ12で実行中のプロ
セス,の優先順位は>である。そこで、管理用
プロセッサ11は、実行利用率90%の処理用プロセッ
サ12に対して、プロセスの実行を停止させて、該停
止した時点までの実行結果、プログラム停止ポイントの
収集を行い、それが完了すると、実行利用率10%の処
理用プロセッサ13に対して、プロセス、及び、その
停止した時点までのデータ(実行結果、プログラム停止
ポイント)を転送する。図5の505は、処理用プロセ
ッサ12にプロセス停止を連絡する際のデータ形式、5
06は処理用プロセッサ12から停止させたプロセスの
データを収集する際のデータ形式、507はプロセス移
動先の処理用プロセッサ13へ所望データを転送する際
のデータ形式を示したものである。
処理用プロセッサ12の実行利用率は90%、プロセッ
サ番号2の処理用プロセッサ13の実行利用率は10%
であり、さらに、処理用プロセッサ12で実行中のプロ
セス,の優先順位は>である。そこで、管理用
プロセッサ11は、実行利用率90%の処理用プロセッ
サ12に対して、プロセスの実行を停止させて、該停
止した時点までの実行結果、プログラム停止ポイントの
収集を行い、それが完了すると、実行利用率10%の処
理用プロセッサ13に対して、プロセス、及び、その
停止した時点までのデータ(実行結果、プログラム停止
ポイント)を転送する。図5の505は、処理用プロセ
ッサ12にプロセス停止を連絡する際のデータ形式、5
06は処理用プロセッサ12から停止させたプロセスの
データを収集する際のデータ形式、507はプロセス移
動先の処理用プロセッサ13へ所望データを転送する際
のデータ形式を示したものである。
【0023】実行利用率20%(負荷が少ない)の処理
用プロセッサへプロセス及び所望データを転送した後、
管理用プロセッサ11は、実行プロセス管理テーブル3
0の実行プロセス欄32の書き替え、各処理用プロセッ
サ12,13,14に対するプロセスの移動先プロセッ
サの通知(アドレス変更通知)、及び、プロセス移動先
の処理用プロセッサに対するプロセス開始指示を行う
(ステップ408)。ここでは、図3の実行プロセス管
理テーブル30において、プロセッサ番号1(プロセッ
サ12)の実行プロセスからプロセスを削除し、プロ
セッサ番号2(プロセッサ13)の実行プロセスに該プ
ロセスを追加する。また、プロセスの処理用プロセ
ッサがプロセッサ番号2(プロセッサ13)に変更され
たことを各処理用プロセッサに通知し、プロセッサ番号
2のプロセッサ13にプロセスの処理開始を指示す
る。図5の508は、管理用プロセッサ11がプロセス
の処理用プロセッサの変更(アドレス変更)を各処理用
プロセッサ12,13,14に対してブロードキャスト
などで連絡する際のデータ形式、509は管理用プロセ
ッサ11が処理用プロセッサ13に対してプロセスの
開始指示を行う際のデータ形式を示したものである。
用プロセッサへプロセス及び所望データを転送した後、
管理用プロセッサ11は、実行プロセス管理テーブル3
0の実行プロセス欄32の書き替え、各処理用プロセッ
サ12,13,14に対するプロセスの移動先プロセッ
サの通知(アドレス変更通知)、及び、プロセス移動先
の処理用プロセッサに対するプロセス開始指示を行う
(ステップ408)。ここでは、図3の実行プロセス管
理テーブル30において、プロセッサ番号1(プロセッ
サ12)の実行プロセスからプロセスを削除し、プロ
セッサ番号2(プロセッサ13)の実行プロセスに該プ
ロセスを追加する。また、プロセスの処理用プロセ
ッサがプロセッサ番号2(プロセッサ13)に変更され
たことを各処理用プロセッサに通知し、プロセッサ番号
2のプロセッサ13にプロセスの処理開始を指示す
る。図5の508は、管理用プロセッサ11がプロセス
の処理用プロセッサの変更(アドレス変更)を各処理用
プロセッサ12,13,14に対してブロードキャスト
などで連絡する際のデータ形式、509は管理用プロセ
ッサ11が処理用プロセッサ13に対してプロセスの
開始指示を行う際のデータ形式を示したものである。
【0024】プロセスの開始指示を受け取った処理用プ
ロセッサは、該プロセスの処理を再開する(ステップ4
09)。ここでは、プロセッサ番号2の処理用プロセッ
サ13が、プロセスについて、転送されたプログラム
停止ポイントから処理を再開することとなる。
ロセッサは、該プロセスの処理を再開する(ステップ4
09)。ここでは、プロセッサ番号2の処理用プロセッ
サ13が、プロセスについて、転送されたプログラム
停止ポイントから処理を再開することとなる。
【0025】一般に、実行利用率80%以上の高負荷プ
ロセッサの数をM、実行利用率20%以下の低負荷プロ
セッサの数をNとした場合、M≦Nの場合は、高負荷プ
ロセッサは実行利用率の高いものから順に、低負荷プロ
セッサは実行利用率の低いものから順に、それぞれプロ
セスの移動元/移動先プロセッサを対応づけて、対象と
する優先順位の低いプロセスを移動すればよい。また、
M>Nの場合は、M個の高負荷プロセッサのうち、実行
利用率の高い順にN個のプロセッサを選択し、それらを
上記M≦Nの場合と同様にして、N個の低負荷プロセッ
サと対応づけて、対象とするプロセスを移動すればよ
い。
ロセッサの数をM、実行利用率20%以下の低負荷プロ
セッサの数をNとした場合、M≦Nの場合は、高負荷プ
ロセッサは実行利用率の高いものから順に、低負荷プロ
セッサは実行利用率の低いものから順に、それぞれプロ
セスの移動元/移動先プロセッサを対応づけて、対象と
する優先順位の低いプロセスを移動すればよい。また、
M>Nの場合は、M個の高負荷プロセッサのうち、実行
利用率の高い順にN個のプロセッサを選択し、それらを
上記M≦Nの場合と同様にして、N個の低負荷プロセッ
サと対応づけて、対象とするプロセスを移動すればよ
い。
【0026】図4のステップ404〜409の処理は、
各処理用プロセッサ12,13,14の実行利用率を収
集する度に繰り返される。これにより、実行利用率の高
い(負荷の集中している)プロセッサのプロセスを、実
行利用率の低い(負荷の少ない)プロセッサへ動的(ダ
イナミック)に振り分け、処理を続行することが可能に
なる。この振り分けの際、移動対象プロセスの処理の一
時停止が伴うが、該プロセスは、実行利用率の高いプロ
セッサで実行中のマルチプロセスの中から優先順位の一
番低いプロセスが選択されるため、影響を最小限に抑え
ることができる。
各処理用プロセッサ12,13,14の実行利用率を収
集する度に繰り返される。これにより、実行利用率の高
い(負荷の集中している)プロセッサのプロセスを、実
行利用率の低い(負荷の少ない)プロセッサへ動的(ダ
イナミック)に振り分け、処理を続行することが可能に
なる。この振り分けの際、移動対象プロセスの処理の一
時停止が伴うが、該プロセスは、実行利用率の高いプロ
セッサで実行中のマルチプロセスの中から優先順位の一
番低いプロセスが選択されるため、影響を最小限に抑え
ることができる。
【0027】以上、実施例の説明では実行利用率の収集
を、管理用プロセッサが一定時間毎に各処理用プロセッ
サに要求を出し、それに応答して、各処理用プロセッサ
が実行利用率を管理プロセッサに連絡することで行うと
したが(図5の502,503,504)、各処理用プ
ロセッサがそれぞれ不定期(任意)に実行利用率を送信
し、それを管理用プロセッサが受取って、その都度、実
行プロセス管理テーブルの該当プロセッサ番号に対応す
る実行利用率35を更新することでもよい。この場合、
管理用プロセッサから各処理用プロセッサへ実行利用率
の送信要求を発行するシーケンスを省略である。なお、
この場合の図4のステップ404〜409の処理は、あ
る処理用プロセッサから実行利用率を収集する度に行っ
てもよいし、あるいは、それとは無関係に一定時間ごと
に行うことでもよい。
を、管理用プロセッサが一定時間毎に各処理用プロセッ
サに要求を出し、それに応答して、各処理用プロセッサ
が実行利用率を管理プロセッサに連絡することで行うと
したが(図5の502,503,504)、各処理用プ
ロセッサがそれぞれ不定期(任意)に実行利用率を送信
し、それを管理用プロセッサが受取って、その都度、実
行プロセス管理テーブルの該当プロセッサ番号に対応す
る実行利用率35を更新することでもよい。この場合、
管理用プロセッサから各処理用プロセッサへ実行利用率
の送信要求を発行するシーケンスを省略である。なお、
この場合の図4のステップ404〜409の処理は、あ
る処理用プロセッサから実行利用率を収集する度に行っ
てもよいし、あるいは、それとは無関係に一定時間ごと
に行うことでもよい。
【0028】
【発明の効果】本発明による並列コンピュータシステム
のプロセス実行最適化方法によれば、次のような効果が
得られる。
のプロセス実行最適化方法によれば、次のような効果が
得られる。
【0029】(1)処理用プロセッサの実行利用率によっ
て、実行中のプロセスが自動的かつダインミックに、利
用率の高い(負荷の集中した)プロセッサから利用率の
低い(負荷の少ない)プロセッサへ移動させることで、
プロセッサを効率良く使って、プロセスを効率よく処理
させることが可能となり、実行業務の処理時間の短縮が
できる。
て、実行中のプロセスが自動的かつダインミックに、利
用率の高い(負荷の集中した)プロセッサから利用率の
低い(負荷の少ない)プロセッサへ移動させることで、
プロセッサを効率良く使って、プロセスを効率よく処理
させることが可能となり、実行業務の処理時間の短縮が
できる。
【0030】(2) 利用率の高いプロセッサから利用率の
低いプロセッサへの移動させるプロセスは、あらかじめ
定めた業務の優先度等に依存したプロセスの優先順位に
基づいて、実行中の複数のプロセスの中から優先順位の
一番低いプロセスが対象となるため、実行する業務への
影響を最小限に抑えることができる。
低いプロセッサへの移動させるプロセスは、あらかじめ
定めた業務の優先度等に依存したプロセスの優先順位に
基づいて、実行中の複数のプロセスの中から優先順位の
一番低いプロセスが対象となるため、実行する業務への
影響を最小限に抑えることができる。
【0031】(3) 管理用プロセッサは、利用率の高いプ
ロセスから利用率の低いプロセッサへプロセスを移動し
た場合、該プロセスと共にプロセス移動先プロセッサを
全処理用プロセッサへ連絡することにより、以後の処理
でプロセス間通信の必要が生じた際、処理用プロセッサ
は管理用プロセッサの仲介なしに該プロセス間通信を行
うことができる。
ロセスから利用率の低いプロセッサへプロセスを移動し
た場合、該プロセスと共にプロセス移動先プロセッサを
全処理用プロセッサへ連絡することにより、以後の処理
でプロセス間通信の必要が生じた際、処理用プロセッサ
は管理用プロセッサの仲介なしに該プロセス間通信を行
うことができる。
【0032】(4) 複数の処理用プロセッサの中の任意の
プロセッサが管理用プロセッサを兼用する構成とするこ
とにより、管理用プロセッサが故障した場合、その管理
情報を他のプロセッサに転送することで、該プロセッサ
を管理用プロセッサとしてシステムを継続して移動する
ことが可能になる。
プロセッサが管理用プロセッサを兼用する構成とするこ
とにより、管理用プロセッサが故障した場合、その管理
情報を他のプロセッサに転送することで、該プロセッサ
を管理用プロセッサとしてシステムを継続して移動する
ことが可能になる。
【図1】本発明による並列コンピュータシステムの一実
施例のブロック図である。
施例のブロック図である。
【図2】管理用プロセッサ上の優先度管理テーブルの構
成例を示す図である。
成例を示す図である。
【図3】管理用プロセッサ上の実行プロセス管理テーブ
ルの構成例を示す図である。
ルの構成例を示す図である。
【図4】本発明によるプロセス実行最適化方法の一実施
例の処理フロー図である。
例の処理フロー図である。
【図5】管理用プロセッサと処理用プロセッサとの間で
授受されるデータ形式の一例を示す図である。
授受されるデータ形式の一例を示す図である。
11 管理用プロセッサ 12〜14 処理用プロセッサ 15 ネットワーク 16 管理用プロセッサのメモリ 20 優先度管理テーブル 30 実行プロセス管理テーブル
Claims (3)
- 【請求項1】 複数のプロセスを並列に処理する複数の
処理用プロセッサと、各処理用プロセッサの実行プロセ
スを管理する管理用プロセッサと、各プロセッサを接続
するネットワークからなる並列コンピュータシステムに
おけるプロセス実行最適化方法であって、 前記管理用プロセッサは、各処理用プロセッサで処理さ
れるプロセスの優先順位と、各処理用プロセッサの実行
利用率を保持し、実行利用率の高い処理用プロセッサで
実行中の複数のプロセスの中から優先順位の低いプロセ
スを選択して、実行利用率の低い処理用プロセッサへ移
動せしめることを特徴とする並列コンピュータシステム
のプロセス実行最適化方法。 - 【請求項2】 請求項1記載の並列コンピュータシステ
ムのプロセス実行最適化方法において、前記管理用プロ
セッサは、プロセスの移動先プロセッサを各処理用プロ
セッサに連絡することを特徴とする並列コンピュータシ
ステムのプロセス実行最適化方法。 - 【請求項3】 請求項1あるいは2記載の並列コンピュ
ータシステムのプロセス実行最適化方法において、前記
複数の処理用プロセッサの中の任意のプロセッサが前記
管理用プロセッサを兼用することを特徴とする並列コン
ピュータシステムのプロセス実行最適化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6218396A JPH0883257A (ja) | 1994-09-13 | 1994-09-13 | 並列コンピュータシステムのプロセス実行最適化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6218396A JPH0883257A (ja) | 1994-09-13 | 1994-09-13 | 並列コンピュータシステムのプロセス実行最適化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0883257A true JPH0883257A (ja) | 1996-03-26 |
Family
ID=16719259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6218396A Pending JPH0883257A (ja) | 1994-09-13 | 1994-09-13 | 並列コンピュータシステムのプロセス実行最適化方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0883257A (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10207849A (ja) * | 1997-01-17 | 1998-08-07 | Nippon Telegr & Teleph Corp <Ntt> | 分散システムにおける高信頼化と負荷分散方法 |
JP2005167870A (ja) * | 2003-12-05 | 2005-06-23 | Sony Corp | データ処理方法およびデータ処理装置 |
JP2005235019A (ja) * | 2004-02-20 | 2005-09-02 | Sony Corp | ネットワークシステム、分散処理方法、情報処理装置 |
JP2007207072A (ja) * | 2006-02-03 | 2007-08-16 | Hewlett-Packard Development Co Lp | 処理制御装置およびその方法 |
JP2007310791A (ja) * | 2006-05-22 | 2007-11-29 | Hitachi Ltd | 計算機システムの消費電力低減方法、及びそのプログラム |
US7904910B2 (en) | 2004-07-19 | 2011-03-08 | Hewlett-Packard Development Company, L.P. | Cluster system and method for operating cluster nodes |
JP2014096024A (ja) * | 2012-11-09 | 2014-05-22 | Esol Co Ltd | マルチコアプロセッサの制御プログラム、電子機器及び制御方法 |
JP2015164052A (ja) * | 2015-04-15 | 2015-09-10 | イーソル株式会社 | マルチコアプロセッサの制御プログラム、電子機器及び制御方法 |
US9183051B2 (en) | 2004-03-29 | 2015-11-10 | Sony Computer Entertainment Inc. | Methods and apparatus for achieving thermal management using processing task scheduling |
-
1994
- 1994-09-13 JP JP6218396A patent/JPH0883257A/ja active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10207849A (ja) * | 1997-01-17 | 1998-08-07 | Nippon Telegr & Teleph Corp <Ntt> | 分散システムにおける高信頼化と負荷分散方法 |
JP2005167870A (ja) * | 2003-12-05 | 2005-06-23 | Sony Corp | データ処理方法およびデータ処理装置 |
JP2005235019A (ja) * | 2004-02-20 | 2005-09-02 | Sony Corp | ネットワークシステム、分散処理方法、情報処理装置 |
US9183051B2 (en) | 2004-03-29 | 2015-11-10 | Sony Computer Entertainment Inc. | Methods and apparatus for achieving thermal management using processing task scheduling |
US7904910B2 (en) | 2004-07-19 | 2011-03-08 | Hewlett-Packard Development Company, L.P. | Cluster system and method for operating cluster nodes |
JP2007207072A (ja) * | 2006-02-03 | 2007-08-16 | Hewlett-Packard Development Co Lp | 処理制御装置およびその方法 |
JP2007310791A (ja) * | 2006-05-22 | 2007-11-29 | Hitachi Ltd | 計算機システムの消費電力低減方法、及びそのプログラム |
JP2014096024A (ja) * | 2012-11-09 | 2014-05-22 | Esol Co Ltd | マルチコアプロセッサの制御プログラム、電子機器及び制御方法 |
JP2015164052A (ja) * | 2015-04-15 | 2015-09-10 | イーソル株式会社 | マルチコアプロセッサの制御プログラム、電子機器及び制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6324620B1 (en) | Dynamic DASD data management and partitioning based on access frequency utilization and capacity | |
US6826753B1 (en) | Managing parallel execution of work granules according to their affinity | |
CA2785398C (en) | Managing queries | |
US6430594B1 (en) | Real-time operating system and a task management system therefor | |
EP0568002B1 (en) | Distribution of communications connections over multiple service access points in a communications network | |
JP2005196602A (ja) | 無共有型データベース管理システムにおけるシステム構成変更方法 | |
US20040158831A1 (en) | Process scheduling appratus, process scheduling method, program for process scheduling, and storage medium recording a program for process scheduling | |
CN107291544A (zh) | 任务调度的方法及装置、分布式任务执行*** | |
JPH0883257A (ja) | 並列コンピュータシステムのプロセス実行最適化方法 | |
CN110209693A (zh) | 高并发数据查询方法、装置、***、设备及可读存储介质 | |
JPH05216842A (ja) | 資源管理装置 | |
JP2007328413A (ja) | 負荷分散方法 | |
JP3429582B2 (ja) | マルチプロセッサシステム | |
JP3487515B2 (ja) | 分散処理システムおよび分散処理方法 | |
JPH11120147A (ja) | 負荷分散制御方法 | |
JP2848762B2 (ja) | データ授受システムおよびその方法 | |
JPH1124949A (ja) | 並列処理制御装置 | |
JP3227069B2 (ja) | 入出力処理システム | |
CN115981825B (zh) | 基于混合式共享状态视图架构的集群并行调度*** | |
JPH09319708A (ja) | オンライン制御プロセス代行方式 | |
JPH0769845B2 (ja) | 多重ホストシステムのジヨブ多重度管理方式 | |
JP3022829B2 (ja) | 記憶装置の自動割り当て装置 | |
JP2675026B2 (ja) | 計算機システムにおけるファイルの実行方法 | |
JP3064880B2 (ja) | データ蓄積装置及びそれを用いたデータ処理システム | |
JPH07160649A (ja) | 分散制御システム |