JP3538833B2 - アイドル待ち時間の動的変動方法 - Google Patents

アイドル待ち時間の動的変動方法

Info

Publication number
JP3538833B2
JP3538833B2 JP07165799A JP7165799A JP3538833B2 JP 3538833 B2 JP3538833 B2 JP 3538833B2 JP 07165799 A JP07165799 A JP 07165799A JP 7165799 A JP7165799 A JP 7165799A JP 3538833 B2 JP3538833 B2 JP 3538833B2
Authority
JP
Japan
Prior art keywords
idle
time
waiting
execution
processors
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 - Fee Related
Application number
JP07165799A
Other languages
English (en)
Other versions
JP2000267870A (ja
Inventor
純 田辺
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 JP07165799A priority Critical patent/JP3538833B2/ja
Publication of JP2000267870A publication Critical patent/JP2000267870A/ja
Application granted granted Critical
Publication of JP3538833B2 publication Critical patent/JP3538833B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はアイドル待ち時間の
動的変動方法に関し、特に複数台のプロセッサが主記憶
を共有する共有メモリ型の多重プロセッサの計算機シス
テム(以下、共有メモリ型マルチプロセッサシステムと
いう)におけるアイドル待ち時間の動的変動方法に関す
る。
【0002】
【従来の技術】シングルプロセッサの計算機システムで
は、そもそもアイドル状態のプロセッサ(以下、アイド
ルプロセッサという)は高々1台しか存在しないため、
プロセッサは、実行待ちプロセスが生ずるきっかけとな
るトリガ(通常はI/O(入出力)などの割り込み処
理)が発生した段階で、アイドル状態からプロセス実行
状態へと移行するように設計されているだけであった。
【0003】これに対して、共有メモリ型マルチプロセ
ッサシステムでは、実行待ちプロセス発生のトリガを受
け付けたプロセッサが必ずしもアイドルプロセッサとは
限らないため、この情報をプロセッサ間通信で伝える
か、あるいはアイドルプロセッサが自ら実行待ちプロセ
スの検出を行う必要がある。一般に、プロセッサ間通信
は性能上、非同期通信であり、通信先のアイドルプロセ
ッサがその時点でまだアイドル状態であるかどうか、ま
た確実に実行待ちプロセスを実行したかどうかを判断す
ることができない。このため、アイドルプロセッサが独
自に実行待ちプロセスを検出する作業が最低限必要とな
る。この際、従来の共有メモリ型マルチプロセッサシス
テムでは、実行待ちプロセスの検出作業を呼び出す間隔
Iとして、ある適度の大きさの固定値が使われていた。
【0004】なお、先行技術文献としては、特開平10
−187469号公報,特許第2814956号等があ
る。特開平10−187469号公報に開示された「マ
ルチプロセッサのプロセスディスパッチ方法」では、プ
ロセッサ間通信を行いながら各プロセッサのプロセスデ
ィスパッチをプロセス実行待ち時間がしきい値を越えな
いようにそれぞれのプロセッサ割り当て待ち行列に登録
する技術であるが、この技術はプロセッサ間通信を用い
る点で本発明とは決定的に異なっている。また、特許第
2814956号に開示された「ディスパッチャ制御方
式」では、マルチプロセッサシステムにおいて実行中の
プロセスが終了していなくてもディスパッチャ起動用タ
イマによりディスパッチャを起動する技術であるが、こ
の技術もプロセッサ間通信を用いる点で本発明とは決定
的に異なっている。
【0005】
【発明が解決しようとする課題】上述した従来の共有メ
モリ型マルチプロセッサシステムでは、実行待ちプロセ
スの検出に要する時間(以下、実行待ちプロセス検出所
要時間という)TWはシステム状況に応じて変動するた
め、場合によっては共有メモリ型マルチプロセッサシス
テムを高負荷状態にしてしまうという弊害があった。
【0006】詳しくは、共有メモリ型マルチプロセッサ
システムでは、複数台のアイドルプロセッサが実行待ち
プロセスの検出作業を行うことになるが、一般に、実行
待ちプロセスの検出作業は逐次化(シリアライズ) され
て実行されなければならず、実行待ちプロセス検出所要
時間TWは共有メモリ型マルチプロセッサシステムの状
態に応じて変動する。したがって、あまり頻繁に実行待
ちプロセスの検出作業を行うと、プロセスの処理を実行
中の他のプロセッサの動作を妨げることになり、共有メ
モリ型マルチプロセッサシステムの性能低下を招くこと
になる。もし、アイドルプロセッサが実行待ちプロセス
の検出作業を呼び出す間隔Iが(実行待ちプロセス検出
所要時間TW×アイドルプロセッサ数N) よりも短くな
ると、常にどれかのプロセッサで実行待ちプロセスの検
出作業が行われることになる。この場合、実行待ちプロ
セスの検出作業の逐次化方法によっては、検出作業を全
く行えないプロセッサが生じることになり、共有メモリ
型マルチプロセッサシステムが不安定な状態になり得
る。例えば、逐次化を実現するためのロック機構とし
て、広く一般的に採用されている方法で複数のロック待
ちプロセスの内の次にロックを取得するプロセスがラン
ダムに選ばれるようなロック機構では、逐次化率が10
0%の状態が発生すると、永久にロックを取得できない
プロセスが発生し得る。逆に、実行待ちプロセスの検出
作業を行う間隔Iが長すぎると、実行待ちプロセスが実
行されるまでの待ち時間が長くなる。この場合、同期を
とって実行されることを前提としたマルチスレッドプロ
グラム等の性能が十分に得られないことになる。
【0007】既述したように、従来の共有メモリ型マル
チプロセッサシステムでは、実行待ちプロセスの検出作
業を呼び出す間隔Iとして、ある適度な大きさの固定値
が使われていたが、通常の共有メモリ型プロセッサシス
テムでは実行待ちプロセスの数は動的に変動するので、
上記固定値があまり小さいと、逐次化率100%の状況
を引き起こし、逆に大きすぎると実行待ちプロセスをタ
イムリに起動できなくなっていた。したがって、実行待
ちプロセスの検出作業を呼び出す間隔Iの値も、本来は
動的に変動することが望ましいと考えられる。
【0008】本発明の目的は、上述の点を踏まえ、アイ
ドルプロセッサが実行待ちプロセスの検出作業を呼び出
すためにアイドル状態で待つ時間(以下、アイドル待ち
時間という)Tを、実行待ちプロセス検出所要時間WT
とアイドルプロセッサ数Nとに連動して動的に変動させ
るようにしたアイドル待ち時間の動的変動方法を提供す
ることにある。なお、アイドルプロセッサが実行待ちプ
ロセスの検出作業を呼び出す間隔Iは、アイドル待ち時
間Tと、実行待ちプロセス検出所要時間WTとの和であ
り、アイドル待ち時間Tが動的に変動することにより同
様に動的に変動する。
【0009】
【0010】
【課題を解決するための手段】 本発明のアイドル待ち時
間の動的変動方法は、複数台のプロセッサが主記憶を共
有する共有メモリ型マルチプロセッサシステムにおい
て、アイドルプロセッサが、n(正整数)回目のときの
アイドル待ち時間Tn を、直前の(n−1)回目のとき
の実行待ちプロセス検出所要時間WTn-1 とn回目のと
きのアイドルプロセッサ数Nn とを使用して、Tn =a
×WTn-1 ×(Nn −1) (ただし、a≧1) に従い決
定することを特徴とする。
【0011】さらに、本発明のアイドル待ち時間の動的
変動方法は、複数台のプロセッサが主記憶を共有する共
有メモリ型マルチプロセッサシステムにおいて、アイド
ルプロセッサのアイドル処理が、アイドルプロセッサ数
Nをカウントアップするアイドルカウンタカウントアッ
プステップと、n(正整数)回目のときのアイドル待ち
時間Tn を、直前の(n−1)回目のときの実行待ちプ
ロセス検出所要時間WT n-1 とn回目のときのアイドル
プロセッサ数Nn とを使用して、Tn =a×WT n-1 ×
(Nn −1) (ただし、a≧1) に従い決定するアイド
ル待ち時間算出ステップと、アイドルプロセッサの動作
をアイドル待ち時間Tn だけ停止するアイドル待ち時間
ウェイトステップと、実行待ちプロセスを検出する実行
待ちプロセス検出ステップと、アイドルプロセッサ数N
をカウントダウンするアイドルカウンタカウントダウン
ステップとを含むことを特徴とする。
【0012】さらにまた、本発明のアイドル待ち時間の
動的変動方法は、複数台のプロセッサが主記憶を共有す
る共有メモリ型マルチプロセッサシステムにおいて、ア
イドルプロセッサのアイドル処理が、アイドルカウンタ
のアイドルプロセッサ数Nをカウントアップするアイド
ルカウンタカウントアップステップと、n(正整数)回
目のときのアイドル待ち時間Tn を、検出所要時間格納
部に格納された直前の(n−1)回目のときの実行待ち
プロセス検出所要時間WTn-1 と前記アイドルカウンタ
に格納されたn回目のときのアイドルプロセッサ数Nn
とを使用して、T n =a×WTn-1 ×(Nn −1) (た
だし、a≧1) に従い決定するアイドル待ち時間算出ス
テップと、アイドルプロセッサの動作をアイドル待ち時
間Tn だけ停止するアイドル待ち時間ウェイトステップ
と、実行待ちプロセスの検出作業を逐次化するためにロ
ックワードによりロックを掛け、実行待ちプロセスキュ
ーを探索して実行待ちプロセスを検出し、しかる後に前
記ロックワードによるロックを外し、実行待ちプロセス
の検出に要した実行待ちプロセス検出所要時間WTn
前記検出所要時間格納部に格納する実行待ちプロセス検
出ステップと、前記アイドルカウンタのアイドルプロセ
ッサ数Nをカウントダウンするアイドルカウンタカウン
トダウンステップとを含むことを特徴とする。
【0013】一方、本発明のアイドル待ち時間の動的変
動装置は、複数台のプロセッサが主記憶を共有する共有
メモリ型マルチプロセッサシステムにおいて、アイドル
プロセッサ数Nをカウントアップするアイドルカウンタ
カウントアップ手段と、n(正整数)回目のときのアイ
ドル待ち時間Tn を、直前の(n−1)回目のときの実
行待ちプロセス検出所要時間WTn-1 とn回目のときの
アイドルプロセッサ数N n とを使用して、Tn =a×W
n-1 ×(Nn −1) (ただし、a≧1) に従い決定す
るアイドル待ち時間算出手段と、アイドルプロセッサの
動作をアイドル待ち時間Tn だけ停止するアイドル待ち
時間ウェイト手段と、実行待ちプロセスを検出する実行
待ちプロセス検出手段と、アイドルプロセッサ数Nをカ
ウントダウンするアイドルカウンタカウントダウン手段
とを有することを特徴とする。
【0014】また、本発明のアイドル待ち時間の動的変
動装置は、複数台のプロセッサが主記憶を共有する共有
メモリ型マルチプロセッサシステムにおいて、アイドル
カウンタのアイドルプロセッサ数Nをカウントアップす
るアイドルカウンタカウントアップ手段と、n(正整
数)回目のときのアイドル待ち時間Tn を、検出所要時
間格納部に格納された直前の(n−1)回目のときの実
行待ちプロセス検出所要時間WTn-1 と前記アイドルカ
ウンタに格納されたn回目のときのアイドルプロセッサ
数Nn とを使用して、Tn =a×WTn-1 ×(Nn
1) (ただし、a≧1) に従い決定するアイドル待ち時
間算出手段と、アイドルプロセッサの動作をアイドル待
ち時間Tn だけ停止するアイドル待ち時間ウェイト手段
と、実行待ちプロセスの検出作業を逐次化するためにロ
ックワードによりロックを掛け、実行待ちプロセスキュ
ーを探索して実行待ちプロセスを検出し、しかる後に前
記ロックワードによるロックを外し、実行待ちプロセス
の検出に要した実行待ちプロセス検出所要時間WTn
前記検出所要時間格納部に格納する実行待ちプロセス検
出手段と、前記アイドルカウンタのアイドルプロセッサ
数Nをカウントダウンするアイドルカウンタカウントダ
ウン手段とを有することを特徴とする。
【0015】他方、本発明の記録媒体は、コンピュータ
に、アイドルプロセッサ数Nをカウントアップするアイ
ドルカウンタカウントアップ手順と、n(正整数)回目
のときのアイドル待ち時間Tn を、直前の(n−1)回
目のときの実行待ちプロセス検出所要時間WTn-1 とn
回目のときのアイドルプロセッサ数Nn とを使用して、
n =a×WTn-1 ×(Nn −1) (ただし、a≧1)
に従い決定するアイドル待ち時間算出手順と、アイドル
プロセッサの動作をアイドル待ち時間Tn だけ停止する
アイドル待ち時間ウェイト手順と、実行待ちプロセスを
検出する実行待ちプロセス検出手順と、アイドルプロセ
ッサ数Nをカウントダウンするアイドルカウンタカウン
トダウン手順とを実行させるためのプログラムを記録す
る。
【0016】また、本発明の記録媒体は、コンピュータ
に、アイドルカウンタのアイドルプロセッサ数Nをカウ
ントアップするアイドルカウンタカウントアップ手順
と、n(正整数)回目のときのアイドル待ち時間T
n を、検出所要時間格納部に格納された直前の(n−
1)回目のときの実行待ちプロセス検出所要時間WT
n-1 と前記アイドルカウンタに格納されたn回目のとき
のアイドルプロセッサ数Nn とを使用して、Tn =a×
WTn-1 ×(Nn −1) (ただし、a≧1) に従い決定
するアイドル待ち時間算出手順と、アイドルプロセッサ
の動作をアイドル待ち時間T n だけ停止するアイドル待
ち時間ウェイト手順と、実行待ちプロセスの検出作業を
逐次化するためにロックワードによりロックを掛け、実
行待ちプロセスキューを探索して実行待ちプロセスを検
出し、しかる後に前記ロックワードによるロックを外
し、実行待ちプロセスの検出に要した実行待ちプロセス
検出所要時間WT n を前記検出所要時間格納部に格納す
る実行待ちプロセス検出手順と、前記アイドルカウンタ
のアイドルプロセッサ数Nをカウントダウンするアイド
ルカウンタカウントダウン手順とを実行させるためのプ
ログラムを記録する。
【0017】本発明のアイドル待ち時間の動的変動方法
は、共有メモリ型マルチプロセッサシステムにおいて、
アイドルプロセッサが実行待ちプロセスの検出作業を呼
び出す際のアイドル待ち時間Tを、その直前の時点での
実行待ちプロセス検出所要時間WTと今回のアイドルプ
ロセッサ数Nとに連動させて動的に変動させることで、
性能を損なわずに最適なディスパッチングを実現させる
というものである。
【0018】具体的には、あるn(正整数)回目のとき
のアイドル待ち時間Tn を、直前の(n−1)回目のと
きの実行待ちプロセス検出所要時間WTn-1 とn回目の
アイドルプロセッサ数Nn とを使用して、下式に従い決
定する。
【0019】 Tn =a×WTn-1 ×(Nn −1) (ただし、a≧1)
【0020】
【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照して詳細に説明する。
【0021】図3は、本発明の第1の実施の形態に係る
アイドル待ち時間の動的変動方法が適用される共有メモ
リ型マルチプロセッサシステムのハードウェア構成を例
示するブロック図である。この共有メモリ型マルチプロ
セッサシステムは、主記憶32と、主記憶32を共有す
るM(正整数)台のプロセッサ31と、L(正整数)台
の入出力装置33とから構成されている。
【0022】図1は、本発明の第1の実施の形態に係る
アイドル待ち時間の動的変動方法(アイドル処理)の手
順を表すフローチャートである。この手順は、アイドル
カウンタ11のアイドルプロセッサ数Nをカウントアッ
プするアイドルカウンタカウントアップステップS1
と、アイドル待ち時間Tを計算するアイドル待ち時間算
出ステップS2と、アイドルプロセッサの動作をアイド
ル待ち時間だけ停止するウェイトステップS3と、実行
待ちプロセスを検出し実行待ちプロセス検出所要時間W
Tを検出所要時間格納部12に格納する実行待ちプロセ
ス検出ステップS4と、実行待ちプロセスが検出された
かどうかを判定する実行待ちプロセス検出判定ステップ
S5と、アイドルカウンタ11のアイドルプロセッサ数
Nをカウントダウンするアイドルカウンタカウントダウ
ンステップS6とからなる。なお、アイドルカウンタ1
1および検出所要時間格納部12は、共有メモリ型マル
チプロセッサシステムを稼動させるマルチプロセッサ制
御オペレーティングシステムに1つずつ設けられる。
【0023】図2は、実行待ちプロセス検出ステップS
4における実行待ちプロセスの検出作業をより詳しく説
明する図である。実行待ちプロセスの検出作業では、実
行待ちプロセスをキューイングする実行待ちプロセスキ
ュー21と、実行待ちプロセスキュー21に対する操作
を逐次化するためのロックワード22とが使用される。
【0024】図4は、a=1の場合におけるアイドル待
ち時間T,実行待ちプロセス検出所要時間WT,および
アイドルプロセッサが実行待ちプロセスの検出作業を呼
び出す間隔I(ただし、I=T+WT) の関係を例示す
る図である。
【0025】次に、このように構成された第1の実施の
形態に係るアイドル待ち時間の動的変動方法によるアイ
ドル処理について説明する。
【0026】他に実行すべきプロセスが無くなると、プ
ロセッサ31は、アイドル状態へと移行し(アイドルプ
ロセッサとなり)、アイドル処理を実行する。
【0027】アイドルプロセッサ31は、まず、アイド
ルカウンタ11のアイドルプロセッサ数Nを1つカウン
トアップする(ステップS1)。
【0028】次に、アイドルプロセッサ31は、検出所
要時間格納部12の前回の実行待ちプロセス検出所要時
間WTn-1 と、アイドルカウンタ11の今回のアイドル
プロセッサ数Nn とを使用して、式(1)に従ってアイ
ドル待ち時間Tn を算出する(ステップS2)。
【0029】(1) Tn =a×WTn-1 ×( Nn −1)
(ただし、a≧1)
【0030】ここで、式(1)について説明する。
【0031】まず、逐次化率が100%以下となるため
には、式(2)の条件を満たす必要がある。
【0032】(2) In ≧WTn ×Nn
【0033】ここで、I=T+WTの関係があるので、
式(3)のように変形できる。
【0034】(3) Tn +WTn ≧WTn ×Nn
【0035】左辺のWTn を右辺に移項して整理する
と、式(4)のようになる。
【0036】(4) Tn ≧WTn ×( Nn −1)
【0037】さらに、a≧1であるようなaを仮定し
て、アイドル待ち時間Tを表現すると、式(5)のよう
になる。
【0038】(5) Tn =a×WTn ×( Nn −1)
(ただし、a≧1)
【0039】なお、アイドル待ち時間Tn を決定する段
階では、まだ実行待ちプロセス検出所要時間WTn は未
定であるため、前回の実行待ちプロセス検出所要時間W
n-1を使用する必要がある。ここで問題となる逐次化
率100%が継続するような状態、すなわち実行待ちプ
ロセスの数が比較的一定している状態では、実行待ちプ
ロセス検出所要時間WTの変動は十分に小さいとみなせ
るため、WTn ≒WTn- 1 で近似すると、式(1)が得
られる。
【0040】a≧1の条件が発生する理由について説明
する。アイドルプロセッサ31が実行待ちプロセスを検
出する作業は、高々1台のアイドルプロセッサ31が行
っていれば十分であり、複数のアイドルプロセッサ31
が同時に行う必要はない。一般に、実行待ちプロセスの
検出作業は同時に行うことはできないため、ロックワー
ド22を用いて逐次化する。したがって、複数台のアイ
ドルプロセッサ31が同時に実行待ちプロセスの検出作
業を呼び出すと、逐次化要求待ちが発生する。もし、実
行待ちプロセスの検出作業を呼び出す間隔Iが、(実行
待ちプロセス検出所要時間WT×アイドルプロセッサ数
N)よりも短くなると、図4に示す例のように、常に逐
次化要求待ちが発生し、逐次化率が100%以上とな
る。この現象は、資源競合による性能問題となりうる典
型的な例である。したがって、a≧1の条件が必要とな
る。
【0041】続いて、アイドルプロセッサ31は、ステ
ップS2で算出したアイドル待ち時間Tだけ自プロセッ
サ31の動作を停止させる(ステップS3)。
【0042】アイドル待ち時間Tの動作停止後、アイド
ルプロセッサ31は、実行待ちプロセスの検出作業を呼
び出す(ステップS4)。詳しくは、アイドルプロセッ
サ31は、実行待ちプロセスの検出作業を保護する( 逐
次化する) ためにロックワード22によりロックを掛
け、実行待ちプロセスキュー21を探索して実行待ちプ
ロセスを検出し、しかる後にロックワード22によるロ
ックを外す。また、アイドルプロセッサ31は、実行待
ちプロセスの検出に要した実行待ちプロセス検出所要時
間WTn を検出所要時間格納部12に格納する。
【0043】ステップS4で実行待ちプロセスが検出さ
れなかった場合(ステップS5でノー)、アイドルプロ
セッサ31は、ステップS2に制御を戻し、ステップS
2以下の処理を再度繰り返す。
【0044】ステップS4で実行待ちプロセスが検出さ
れた場合(ステップS5でイエス)、アイドルプロセッ
サ31は、アイドルカウンタ11のアイドルプロセッサ
数Nを1つカウントダウンする(ステップS6)。
【0045】この後、アイドルプロセッサ31は、検出
された実行待ちプロセスの処理に制御を移行する。
【0046】このように、第1の実施の形態に係るアイ
ドル待ち時間の動的変動方法によれば、アイドルプロセ
ッサ31が、あるn(正整数)回目のときのアイドル待
ち時間Tn を、直前の(n−1)回目のときの実行待ち
プロセス検出所要時間WTn-1とn回目のときのアイド
ルプロセッサ数Nn とを使用し、Tn =a×WTn-1 ×
(Nn −1) (ただし、a≧1) に従って決定して動的
に変動させるため、実行待ちプロセスを検出する作業の
逐次化率が常に100%以下に保たれ、共有メモリ型マ
ルチプロセッサシステムの性能を損なわずに最適なディ
スパッチングが実現される。特に、同期をとって実行さ
れることを前提としたマルチスレッドプログラム等にお
いても、性能が損なわれないという利点がある。
【0047】次に、本発明の第2の実施の形態について
図面を参照して説明する。
【0048】図5を参照すると、本発明の第2の実施の
形態は、第1の実施の形態に係るアイドル待ち時間の動
的変動方法が適用される共有メモリ型マルチプロセッサ
システム(ここでは、符号100で示す)に対して、マ
ルチプロセッサ制御オペレーティングシステム200を
記録した記録媒体300を備えるようにしたものであ
る。この記録媒体300は、磁気ディスク,半導体メモ
リ,その他の記録媒体であってよい。
【0049】マルチプロセッサ制御オペレーティングシ
ステム200は、記録媒体300から共有メモリ型マル
チプロセッサシステム100に読み込まれ、共有メモリ
型マルチプロセッサシステム100の動作を制御する。
特に、各プロセッサ31(図3参照)でのアイドル処理
において、アイドルカウンタカウントアップステップS
1,アイドル待ち時間算出ステップS2,アイドル待ち
時間ウェイトステップS3,実行待ちプロセス検出ステ
ップS4,実行待ちプロセス検出判定ステップS5,お
よびアイドルカウンタカウントダウンステップS6とし
て動作を制御する。これら各ステップS1ないしS6の
処理は、第1の実施の形態に係るアイドル待ち時間の動
的変動方法の場合と全く同様になるので、その詳しい説
明を割愛する。
【0050】
【発明の効果】本発明の効果は、共有メモリ型マルチプ
ロセッサシステムにおいて、アイドルプロセッサ数Nや
実行待ちプロセスの数に依存せずに、どのようなシステ
ム状況でも、プロセスの処理を実行中のプロセッサの動
作を妨げないようにすることができ、最適なディスパッ
チングを実現することができることである。その理由
は、アイドルプロセッサが、アイドル待ち時間Tを実行
待ちプロセス検出所要時間WTとアイドルプロセッサ数
Nとに連動させて動的に変動させるからである。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係るアイドル待ち
時間の動的変動方法の手順を表すフローチャートであ
る。
【図2】図1中の実行待ちプロセス検出ステップにおけ
る実行待ちプロセスの検出作業をより詳しく説明する図
である。
【図3】本実施の形態に係るアイドル待ち時間の動的変
動方法が適用される共有メモリ型マルチプロセッサシス
テムのハードウェア構成を例示するブロック図である。
【図4】本実施の形態に係るアイドル待ち時間の動的変
動方法が適用された場合の一例を示すタイミングチャー
トである。
【図5】本発明の第2の実施の形態に係るアイドル待ち
時間の動的変動方法が適用された共有メモリ型マルチプ
ロセッサシステムを示す図である。
【符号の説明】
11 アイドルカウンタ 12 検出所要時間格納部 21 実行待ちプロセスキュー 22 ロックワード 31 プロセッサ 32 主記憶 33 入出力装置 S1 アイドルカウンタカウントアップステップ S2 アイドル待ち時間算出ステップ S3 アイドル待ち時間ウェイトステップ S4 実行待ちプロセス検出ステップ S5 実行待ちプロセス検出判定ステップ S6 アイドルカウンタカウントダウンステップ
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平10−187469(JP,A) 特開 平3−230225(JP,A) 特許2814956(JP,B2) 谷口秀夫,サービス処理時間を調整す るプロセスのスケジュール方法,電子情 報通信学会論文誌,日本,社団法人電子 情報通信学会,1998年 4月,第J81− D−I巻、第4号,第386頁乃至第392頁 (58)調査した分野(Int.Cl.7,DB名) G06F 9/46 G06F 15/177

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数台のプロセッサが主記憶を共有する
    共有メモリ型マルチプロセッサシステムにおいて、 アイドルプロセッサが、n(正整数)回目のときのアイ
    ドル待ち時間Tn を、直前の(n−1)回目のときの実
    行待ちプロセス検出所要時間WTn-1 とn回目のときの
    アイドルプロセッサ数Nn とを使用して、Tn =a×W
    n-1 ×(Nn −1) (ただし、a≧1) に従い決定す
    ることを特徴とするアイドル待ち時間の動的変動方法。
  2. 【請求項2】 複数台のプロセッサが主記憶を共有する
    共有メモリ型マルチプロセッサシステムにおいて、 アイドルプロセッサのアイドル処理が、 アイドルプロセッサ数Nをカウントアップするアイドル
    カウンタカウントアップステップと、 n(正整数)回目のときのアイドル待ち時間Tn を、直
    前の(n−1)回目のときの実行待ちプロセス検出所要
    時間WTn-1 とn回目のときのアイドルプロセッサ数N
    n とを使用して、Tn =a×WTn-1 ×(Nn −1)
    (ただし、a≧1) に従い決定するアイドル待ち時間算
    出ステップと、 アイドルプロセッサの動作をアイドル待ち時間Tn だけ
    停止するアイドル待ち時間ウェイトステップと、 実行待ちプロセスを検出する実行待ちプロセス検出ステ
    ップと、 アイドルプロセッサ数Nをカウントダウンするアイドル
    カウンタカウントダウンステップとを含むことを特徴と
    するアイドル待ち時間の動的変動方法。
  3. 【請求項3】 複数台のプロセッサが主記憶を共有する
    共有メモリ型マルチプロセッサシステムにおいて、 アイドルプロセッサのアイドル処理が、 アイドルカウンタのアイドルプロセッサ数Nをカウント
    アップするアイドルカウンタカウントアップステップ
    と、 n(正整数)回目のときのアイドル待ち時間Tn を、検
    出所要時間格納部に格納された直前の(n−1)回目の
    ときの実行待ちプロセス検出所要時間WTn-1 と前記ア
    イドルカウンタに格納されたn回目のときのアイドルプ
    ロセッサ数Nn とを使用して、Tn =a×WTn-1 ×
    (Nn −1) (ただし、a≧1) に従い決定するアイド
    ル待ち時間算出ステップと、 アイドルプロセッサの動作をアイドル待ち時間Tn だけ
    停止するアイドル待ち時間ウェイトステップと、 実行待ちプロセスの検出作業を逐次化するためにロック
    ワードによりロックを掛け、実行待ちプロセスキューを
    探索して実行待ちプロセスを検出し、しかる後に前記ロ
    ックワードによるロックを外し、実行待ちプロセスの検
    出に要した実行待ちプロセス検出所要時間WTn を前記
    検出所要時間格納部に格納する実行待ちプロセス検出ス
    テップと、 前記アイドルカウンタのアイドルプロセッサ数Nをカウ
    ントダウンするアイドルカウンタカウントダウンステッ
    プとを含むことを特徴とするアイドル待ち時間の動的変
    動方法。
  4. 【請求項4】 複数台のプロセッサが主記憶を共有する
    共有メモリ型マルチプロセッサシステムにおいて、 アイドルプロセッサ数Nをカウントアップするアイドル
    カウンタカウントアップ手段と、n(正整数)回目のと
    きのアイドル待ち時間Tn を、直前の(n−1)回目の
    ときの実行待ちプロセス検出所要時間WTn-1 とn回目
    のときのアイドルプロセッサ数Nn とを使用して、Tn
    =a×WTn-1 ×(Nn −1) (ただし、a≧1) に従
    い決定するアイドル待ち時間算出手段と、 アイドルプロセッサの動作をアイドル待ち時間Tn だけ
    停止するアイドル待ち時間ウェイト手段と、 実行待ちプロセスを検出する実行待ちプロセス検出手段
    と、 アイドルプロセッサ数Nをカウントダウンするアイドル
    カウンタカウントダウン手段とを有することを特徴とす
    るアイドル待ち時間の動的変動装置。
  5. 【請求項5】 複数台のプロセッサが主記憶を共有する
    共有メモリ型マルチプロセッサシステムにおいて、 アイドルカウンタのアイドルプロセッサ数Nをカウント
    アップするアイドルカウンタカウントアップ手段と、 n(正整数)回目のときのアイドル待ち時間Tn を、検
    出所要時間格納部に格納された直前の(n−1)回目の
    ときの実行待ちプロセス検出所要時間WTn-1 と前記ア
    イドルカウンタに格納されたn回目のときのアイドルプ
    ロセッサ数Nn とを使用して、Tn =a×WTn-1 ×
    (Nn −1) (ただし、a≧1) に従い決定するアイド
    ル待ち時間算出手段と、アイドルプロセッサの動作をア
    イドル待ち時間Tn だけ停止するアイドル待ち時間ウェ
    イト手段と、 実行待ちプロセスの検出作業を逐次化するためにロック
    ワードによりロックを掛け、実行待ちプロセスキューを
    探索して実行待ちプロセスを検出し、しかる後に前記ロ
    ックワードによるロックを外し、実行待ちプロセスの検
    出に要した実行待ちプロセス検出所要時間WTn を前記
    検出所要時間格納部に格納する実行待ちプロセス検出手
    段と、 前記アイドルカウンタのアイドルプロセッサ数Nをカウ
    ントダウンするアイドルカウンタカウントダウン手段と
    を有することを特徴とするアイドル待ち時間の動的変動
    装置。
  6. 【請求項6】 コンピュータに、アイドルプロセッサ数
    Nをカウントアップするアイドルカウンタカウントアッ
    プ手順と、n(正整数)回目のときのアイドル待ち時間
    n を、直前の(n−1)回目のときの実行待ちプロセ
    ス検出所要時間WTn-1 とn回目のときのアイドルプロ
    セッサ数Nn とを使用して、Tn =a×WTn-1 ×(N
    n −1) (ただし、a≧1) に従い決定するアイドル待
    ち時間算出手順と、アイドルプロセッサの動作をアイド
    ル待ち時間Tnだけ停止するアイドル待ち時間ウェイト
    手順と、実行待ちプロセスを検出する実行待ちプロセス
    検出手順と、アイドルプロセッサ数Nをカウントダウン
    するアイドルカウンタカウントダウン手順とを実行させ
    るためのプログラムを記録した記録媒体。
  7. 【請求項7】 コンピュータに、アイドルカウンタのア
    イドルプロセッサ数Nをカウントアップするアイドルカ
    ウンタカウントアップ手順と、n(正整数)回目のとき
    のアイドル待ち時間Tn を、検出所要時間格納部に格納
    された直前の(n−1)回目のときの実行待ちプロセス
    検出所要時間WTn-1 と前記アイドルカウンタに格納さ
    れたn回目のときのアイドルプロセッサ数Nn とを使用
    して、Tn =a×WTn-1 ×(Nn −1) (ただし、a
    ≧1) に従い決定するアイドル待ち時間算出手順と、ア
    イドルプロセッサの動作をアイドル待ち時間Tn だけ停
    止するアイドル待ち時間ウェイト手順と、実行待ちプロ
    セスの検出作業を逐次化するためにロックワードにより
    ロックを掛け、実行待ちプロセスキューを探索して実行
    待ちプロセスを検出し、しかる後に前記ロックワードに
    よるロックを外し、実行待ちプロセスの検出に要した実
    行待ちプロセス検出所要時間WTnを前記検出所要時間
    格納部に格納する実行待ちプロセス検出手順と、前記ア
    イドルカウンタのアイドルプロセッサ数Nをカウントダ
    ウンするアイドルカウンタカウントダウン手順とを実行
    させるためのプログラムを記録した記録媒体。
JP07165799A 1999-03-17 1999-03-17 アイドル待ち時間の動的変動方法 Expired - Fee Related JP3538833B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP07165799A JP3538833B2 (ja) 1999-03-17 1999-03-17 アイドル待ち時間の動的変動方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP07165799A JP3538833B2 (ja) 1999-03-17 1999-03-17 アイドル待ち時間の動的変動方法

Publications (2)

Publication Number Publication Date
JP2000267870A JP2000267870A (ja) 2000-09-29
JP3538833B2 true JP3538833B2 (ja) 2004-06-14

Family

ID=13466910

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07165799A Expired - Fee Related JP3538833B2 (ja) 1999-03-17 1999-03-17 アイドル待ち時間の動的変動方法

Country Status (1)

Country Link
JP (1) JP3538833B2 (ja)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
谷口秀夫,サービス処理時間を調整するプロセスのスケジュール方法,電子情報通信学会論文誌,日本,社団法人電子情報通信学会,1998年 4月,第J81−D−I巻、第4号,第386頁乃至第392頁

Also Published As

Publication number Publication date
JP2000267870A (ja) 2000-09-29

Similar Documents

Publication Publication Date Title
US6006247A (en) Method and system for scheduling threads and handling exceptions within a multiprocessor data processing system
US6845504B2 (en) Method and system for managing lock contention in a computer system
US7152169B2 (en) Method for providing power management on multi-threaded processor by using SMM mode to place a physical processor into lower power state
US7512950B1 (en) Barrier synchronization object for multi-threaded applications
US5390329A (en) Responding to service requests using minimal system-side context in a multiprocessor environment
JP2514299B2 (ja) プロセスレベルプログラミングのための割込み処理の直列化方法
US6029190A (en) Read lock and write lock management system based upon mutex and semaphore availability
US5666523A (en) Method and system for distributing asynchronous input from a system input queue to reduce context switches
US6308184B1 (en) Delayed unloading of a dynamically loadable file
KR970016979A (ko) 다중 처리 시스템에서 타스크의 큐잉 시스템 및 방법
US5526521A (en) Method and system for process scheduling from within a current context and switching contexts only when the next scheduled context is different
US20040117793A1 (en) Operating system architecture employing synchronous tasks
EP0363889B1 (en) Vector processor using buffer for preparing vector data
JP2001216170A (ja) 専用ポーリング処理組み込みオペレーティング方法及び専用ポーリング処理組み込みオペレーティングシステム
WO2004017196A2 (en) Timing ring mechanism
JP3538833B2 (ja) アイドル待ち時間の動的変動方法
JPH0877025A (ja) タスクの優先度制御方法、タスクの優先度制御装置
US5644772A (en) Signal dispatching for C language interrupt handling
US7360213B1 (en) Method for promotion and demotion between system calls and fast kernel calls
JPH0844575A (ja) Cpuの監視及び負荷制御方式
US10949367B2 (en) Method for handling kernel service request for interrupt routines in multi-core environment and electronic device thereof
EP0481458A2 (en) High speed synchronous processing system for executing parallel processing of programs
US11461134B2 (en) Apparatus and method for deferral scheduling of tasks for operating system on multi-core processor
JPH11353291A (ja) マルチプロセッサシステム及びタスク交換プログラムを記録した媒体
JPH09282188A (ja) 割込処理方法およびこの方法を用いたシステム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20031217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040115

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040301

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040314

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080402

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090402

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100402

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110402

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120402

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120402

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130402

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130402

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140402

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees