JP4133068B2 - 計算機システム - Google Patents
計算機システム Download PDFInfo
- Publication number
- JP4133068B2 JP4133068B2 JP2002213341A JP2002213341A JP4133068B2 JP 4133068 B2 JP4133068 B2 JP 4133068B2 JP 2002213341 A JP2002213341 A JP 2002213341A JP 2002213341 A JP2002213341 A JP 2002213341A JP 4133068 B2 JP4133068 B2 JP 4133068B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- job
- reception
- data
- time
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Description
【発明の属する技術分野】
本発明は、複数のノードで構築される並列型又はグリッド型の計算機システムにおけるジョブスケジューリングに関し、システム全体の効率を向上するジョブ間の優先度の決定方法、及びその決定方法を実現するための通信方式に関する。
【0002】
【従来の技術】
1つもしくは複数のCPUと主記憶とからなるノードを単位とし、このノードをネットワークを経由して結合し、ノード間でジョブやデータを移動したり、複数ノードを連動させて大きな計算を実行するシステムを、並列型又はグリッド型の計算機システムと呼ぶ。並列型、グリッド型の計算機システムには、1000個を超えるCPUを使う大規模システム構築に必須の構成である。グリッド型の計算機システムと、並列型計算機との呼称の差異は、システムの物理的な広がりや接続するネットワークの性能や仕様により発生するが、本発明では両者の区別は行わない。
【0003】
この並列型又はグリッド型の計算機システムで複数のノードを同時に使用する大きな計算(以下、「マルチノード計算」と呼ぶ)を実行する時には、各ノードをいかに効率よくマッピングするかが重要である。このマッピングは、各ノードを1つのジョブで占有することが基本である。ここで言うジョブとは、マルチノード計算を各ノードに分割したもの、つまりマルチノード計算の一部を表す。各ノードを1つのジョブで占有することは高い処理性能を必要とするためで、1ノードが複数のジョブを同時に実行すること、つまり複数のマルチノード計算に同じノードが同時に関わることはシステムの計算効率を落とすだけでメリットは無い。
【0004】
しかし、各ノードが所有するデータが均質でなく、あるノードだけが持っているデータを複数のマルチノード計算が必要とする場合には、データを所有するノードが複数のマルチノード計算に関わることでシステム全体の効率が上がる場合がある。例えば、あるノード(以下、「ノードA」と呼ぶ)だけが計算に必要な元データ(以下、「データL」と呼ぶ)を主記憶やディスク上に持っており、そのデータLを計算の途中で何度も参照するようなマルチノード計算を2つ同時に実行する場合には、次の2つの実行方法が考えられる。
【0005】
(実行方法1)ノードAの持つデータLを別のノードにコピーすることでデータLを持つノードを2つに増やし、各マルチノード計算それぞれに1ノードずつ加わる。
【0006】
(実行方法2)データLを所有するノードAを2つのマルチノード計算両方で使う。ノードAは2つのジョブをスイッチしながら実行する。
【0007】
一般的な計算処理では、元データは巨大であるが計算で使用するデータは元データのうち一部である。しかし計算開始時には元データのうちどのデータを使用するかは不明で、計算実行途中で初めてどのデータを使用するかを決定することが多い。そのため、実行方法1の方法ではデータLのうちどのデータを使用するか分からないためデータLの全てをコピーすることとなり無駄が多い。そのため、多くの場合には実行方法2を用いる方が現実的である。つまり、ノードAは2つのマルチノード計算両方に関わることになる。
【0008】
このように、ノードAが2つのマルチノード計算に関わる場合は、ノードAにおける2つのジョブの実行方法がシステム全体の効率を左右する。つまり、ノードAにおいて2つのジョブをどのようなスケジュールに基づいて実行するか(例えば、両方のジョブを1秒ずつ切り替えながら実行することで両者のジョブを均等に実行する、片方のジョブを0.5秒実行した後にもう一つのジョブを1秒実行することを繰り返すことで後者のジョブを優先実行する)がシステム全体の効率向上の重要な要素となる。システム全体の効率を改善するようにスケジューリングを決定することを、ここでは「ジョブスケジューリングの最適化」と呼ぶ。
【0009】
このジョブスケジューリングの最適化の問題に関し、特開平8−137910に記載の発明では、計算開始時に最適化を図る手段が開示されている。具体的には、計算開始時に各ノードの終了予定時刻を計算し、最も遅いノード、つまりマルチノード計算の速度を決定するノードについてはそのマルチノード計算に関わるジョブを最優先で実行し、他のノードについては終了予定時刻を越えない範囲で他ジョブの実行を許すことで、ジョブスケジューリングの最適化を図る。
【0010】
【発明が解決しようとする課題】
特開平8−137910に記載の発明では、ジョブ開始時に終了予定時刻が決定できる処理に対しては有効であるが、計算途中結果によりその先の処理量が決定される計算、例えば収束計算(計算結果が収束するまで繰り返し計算する)のような処理では有効に利用できない。
【0011】
また、特開平8−137910に記載の発明では、各ノードの計算状態を一元管理するテーブルを持つ処理方法が開示されているが、数百ノードを使用するような大規模なマルチノード計算にも対応できるスケーラブルなジョブスケジューリングの最適化を実現するためには、このような形態はテーブルアクセスのぶつかりの発生を招くことから適切ではなく、各ノードが自律的にジョブスケジューリングの最適化を図ることが必要である。
【0012】
【課題を解決するための手段】
本発明は、データの送信及び受信を行い当該送受信されたデータを元にマルチノード計算を実行する複数のノードと、前記ノード間のデータ通信を行う通信経路と、を備え、前記マルチノード計算を構成する複数のジョブのうち一のジョブを所定のスケジューリングにより前記複数のノードに占有させて実行し、当該実行させるジョブを順次切り換えることにより前記マルチノード計算を実行する並列型又はグリッド型の計算機システムにおいて、前記ノードは、データを送信する送信側のノードと、送信されるデータに依存するジョブを処理する受信側のノードとを備え、前記受信側のノードが前記一のジョブの処理に必要なデータを必要としてから、当該必要なデータを受信するまでの間に要した時間値を計測する待ち時間計測手段と、前記時間値を前記複数のジョブ毎に集計して前記一のジョブに対して各ノードが要した前記時間値の累計値を計算する負荷バランス集計手段と、前記一のジョブの処理に前記ノードを占有させる時間である持ち時間を前記計算された累計値に応じて計算し、当該累計値が大きいジョブは前記持ち時間を大きくし、当該累計値か小さいジョブは前記持ち時間を小さくすることにより前記複数のジョブの優先度を制御するジョブスケジューリング手段と、を備えた。
【0013】
【発明の作用と効果】
本発明は、データの送信及び受信を行い当該送受信されたデータを元にマルチノード計算を実行する複数のノードと、前記ノード間のデータ通信を行う通信経路と、を備え、前記マルチノード計算を構成する複数のジョブのうち一のジョブを所定のスケジューリングにより前記複数のノードに占有させて実行し、当該実行させるジョブを順次切り換えることにより前記マルチノード計算を実行する並列型又はグリッド型の計算機システムにおいて、前記ノードは、データを送信する送信側のノードと、送信されるデータに依存するジョブを処理する受信側のノードとを備え、前記受信側のノードが前記一のジョブの処理に必要なデータを必要としてから、当該必要なデータを受信するまでの間に要した時間値を計測する待ち時間計測手段と、前記時間値を前記複数のジョブ毎に集計して前記一のジョブに対して各ノードが要した前記時間値の累計値を計算する負荷バランス集計手段と、前記一のジョブの処理に前記ノードを占有させる時間である持ち時間を前記計算された累計値に応じて計算し、当該累計値が大きいジョブは前記持ち時間を大きくし、当該累計値か小さいジョブは前記持ち時間を小さくすることにより前記複数のジョブの優先度を制御するジョブスケジューリング手段と、を備えたので、終了予定時刻の不明なマルチノード計算においても、動的にジョブスケジューリングを行うことでスケジューリングの最適化が実現できる。また、各送信ノードが自律的にジョブスケジューリングを行うことで、システム全体のジョブ実行状態を一元管理する必要がなくなり、一元管理に伴う処理のぶつかりを回避することで、ノード数に対してスケーラブルなジョブスケジューリング最適化が実現できる。
【0014】
【発明の実施の形態】
以下に、本発明の第1の実施の形態の計算機システムについて図面を用いて詳細を説明する。
【0015】
図1は本発明の第1の実施の形態の計算機システムの概念図を示す。
【0016】
ノードA10、B20、C30、D40、E50の5つのノードが計算に関わる。これらの各ノードによって行われるマルチノード計算はマルチノード計算200とマルチノード計算300との2つである。ノードAはマルチノード計算200のジョブ(以下「ジョブP」と呼ぶ)とマルチノード計算300のジョブ(以下「ジョブQ」と呼ぶ)とを実行する。なお、ノードBとノードCとはジョブPのみを実行し、ノードDとノードEとはジョブQのみを実行する。
【0017】
各マルチノード計算においてはノード間のデータ通信が繰り返し実行される。つまり、ノードA10からノードB20、C30、D40、E50に対してデータが繰り返し送信される。ノードB20、C30、D40、E50は計算途中でノードA10から送られるデータを使用するため、ノードA10でジョブPの実行が遅れるとノードB20とノードC30とはノードA10からのデータ待ち時間が増え、ノードA10でジョブQの実行が遅れるとノードD40とノードE50とはノードA10からの待ち時間が増える。すなわち、ノードA10におけるジョブPとジョブQとのスケジューリング方法がシステム全体の効率を決定することになる。
【0018】
このジョブスケジューリング方法の最適化についはいくつかの方法が考えられるが、例えば、ノードA10においてジョブPを大幅に優先した場合(例えばジョブPを10秒実行した後にジョブQを1秒実行することを繰り返す場合)は、一般にはノードD40とノードE50との待ち時間が大きくなりシステム全体の効率が低下する。しかし、ジョブPがジョブQに対して大幅に処理時間を必要とするものであり、ジョブPを大幅に優先しているにも関わらずノードB20とノードC30とは待ち時間が多くノードD40とノードE50とには待ち時間が発生していないケースでは、ジョブPをさらに優先させる方がシステム全体の効率を上げることになる。
【0019】
第1の実施の形態の計算機システムでは、実際に受信側ノードB20、C30、D40、E50で発生した待ち時間量を送信側であるノードA10に返信して(図1の処理120〜150)、この待ち時間量を送信側ノードA10においてジョブ毎に集計し、ジョブスケジューリングの決定を行う。
【0020】
なお、第1の実施の形態においては、各ノードが何れかのノードと送受信する関係にあり各ノードの通信ポートが何れのジョブに使用されているかについては、情報スーパバイザ役であるSノード100が把握し各ノードに配信する。また、各ノードの処理が不均質な場合、Sノード100からは各ノードの処理の差に応じた重み付け情報も配信する。この重み付け情報は、例えばノードB20は他ノードに比べて高速で、ノードB20を1秒待たせることが他のノードを1秒待たせることよりもシステム全体の効率の上で問題であるような場合には、ノードB20を他のノードより大きな重み付けとし待ち時間量集計時に考慮する(具体的な方法については後述する)。なおノードの重み付け情報は、システム構築時に1回、マルチノード計算開始時に1回、それぞれ各ノードに配信すればよいので、Sノード100の処理量は少ない。そのため、図1のように独立したSノード100を用意するのではなく、計算を実行するノードのいずれかのノードがSノードを兼ねる構成にしても良い。
【0021】
以下に、第1の実施の形態の計算機システムについて、データの送受信の手順を説明し、その後に、ジョブスケジューリング方法を説明する。
【0022】
まず、データの送受信方法について説明する。
【0023】
図2は第1の実施の形態の計算機システムの構成を表すブロック図である。
【0024】
ノードA10はデータを送信し、ノードB20、C30、D40、E50はデータを受信する。ノードA10には送信側のリソース(送信バッファ520、送信制御回路525、重み付け情報テーブル560、ノードグループ情報テーブル570、負荷バランス計算回路580)のみ、ノードB20、C30、D40、E50には受信側のリソース(受信バッファ620、720、820、920、受信待ち計測回路625、725、825、925)のみを示す。なお、第1の実施の形態では送信を行うノードと受信を行うノードが分かれているが、各ノードが送信受信双方を実行する構成にしても良い。各ノードが送受信を行う場合には、各ノードが送信側のリソース、および受信側のリソースを持つ必要があるが、本実施の形態の説明には不要なので省略する。
【0025】
ノードA10は送信ポートを4ポート持ち、4つのノードに対して送信できる。具体的には送信バッファ520〜550の4つである。なお、マルチノード計算の分割数が多く、ノードA10がさらに多くのジョブへとデータを送信する必要がある場合にはこのポート数をさらに増やす必要がある。
【0026】
第1の実施の形態では、各ポートの通信先が全て別のノードと接続しているが、ポートはノードに対して1つ用意するのではなく、送信先のジョブの数により決定される。例えばノードB20において2つのジョブが実行されておりノードA10から各ジョブへと送信するケースにおいては、2つのポートをノードB20に対して使用することになる。なお、ポート数をさらに増やしても本発明の本質は変わらず、その実施方法は容易に類推することができることから、ここでは4ポートの構成で説明する。
【0027】
次に、ノードA10からノードB20に対するデータ送信方法を説明する。
【0028】
データ送信は、送信バッファ520と受信バッファ620とを使って行われるが、この場合、「送信バッファ520に空きがないのに送信データを書き込むこと」、「受信バッファ620に空きがないのに送信バッファ520から受信バッファ620にデータが書き込まれること」、「受信バッファ620にまだ送信データが書き込まれていないのに受信バッファ620を読み出すこと」、を防ぐ必要がある。そのため、データの送信ではCPU500、CPU600、送信制御回路525、受信待ち計測回路625を各種フラグを用いて制御する。
【0029】
このデータ送信の制御の手順を図3を用いて説明する。
【0030】
図3は、図2に示すノードA10の送信制御回路525の詳細な構成を示す。
【0031】
この送信制御回路525は、送信要求生成回路1010、送信要求フラグ1020、受信バッファ開放フラグ1030を備える。
【0032】
CPU500は信号線1000を経由して送信要求フラグ1020をチェックする。この送信要求フラグ1020は、データの送信要求があるかどうかを表すフラグである。この送信要求フラグ1020が“0”である場合(すなわち送信要求が出ていない、もしくは送信が終了している)には、送信データを主記憶505(図2)から送信バッファ520にコピーする。送信要求フラグ1020が“1”の場合(すなわち送信途中)には、CPU500は、送信要求フラグ1020が“0”になるまで待ってから送信データを送信バッファ520にコピーする。送信要求フラグ1020を“1”から“0”にセットするのは送信要求生成回路1010であるが、この動作については後述する。
【0033】
送信要求フラグ1020が“0”であった場合、CPU500は、送信データを送信バッファ520にコピーした後、信号線1000を経由して送信要求フラグ1020に“1”をセットする。この送信要求フラグ1020がセットされたことは信号線1050を経由して送信要求生成回路1010へと通知される。
【0034】
この通知を受けて、送信要求生成回路1010は信号線1060を経由して通知される受信バッファ開放フラグ1030の値を調べる。受信バッファ開放フラグ1030は、受信側の受信バッファが空いているかどうかを表すフラグである。受信バッファ開放フラグ1030の初期値は“1”であり、これは受信バッファが空いていることを示す。受信バッファが使用中であれば“0”となる。送信要求生成回路1010が受信バッファ開放フラグ1030を調べたときに“1”であれば受信バッファは開いているので、信号線510を経由して送信バッファ520にデータの送信を要求すると共に、信号線1065を経由して受信バッファ開放フラグ1030を“0”にセットする。
【0035】
また、送信要求生成回路1010が受信バッファ開放フラグ1030を調べたときに“0”であれば受信バッファは使用中なので、受信バッファ開放フラグ1030が“1”にセットされるまで送信せずに待つ。受信バッファ開放フラグ1030が“0”から“1”にセットされるには、信号線120を経由して受信側ノードB20からバッファの開放が通知される必要があるが、これは後述する。
【0036】
送信バッファ520は信号線510を経由してデータの送信要求を受け取ると、信号線110を経由して受信側のノードB20の受信バッファ620にデータを送る。データの送信が終了すると、信号線515を経由して送信要求生成回路1010にデータ送信の終了を通知する。通知を受けた送信要求生成回路1010は、信号線1055を経由して送信要求フラグ1020を“1”から“0”にセットする。この送信要求フラグ1020によって、CPU500はデータの送信が完了したことを信号線1000を経由して知ることができる。
【0037】
図4は、図2に示すノードB20の受信待ち計測回路625の詳細な構成を示す。この受信待ち計測回路625は、受信完了フラグ1100、カウント1120、受信確認フラグ1130、受信通知回路1140を備える。
【0038】
受信バッファ620にデータが書き込まれると、受信バッファ620は信号線610を経由して受信完了フラグ1100を“0”から“1”にセットする。この受信完了フラグ1100は初期値“0”のフラグであり、データが到着してからCPU600により読み出されるまで“1”となる。受信完了フラグが“1”から“0”にセットされる動作は後述する。
【0039】
受信完了フラグ1100が“1”となったことは信号線1150を経由して受信通知回路1140に通知される。この通知を受けて、受信通知回路1140は信号線1160を経由して受信確認フラグ1130の値をチェックする。受信通知回路1140は、受信確認フラグ1130の値が“0”のである場合は何もせず、フラグが“1”となった場合は信号線1190を経由してCPU600に対して割り込み(受信データ到着通知)を通知する。受信確認フラグ1130は、初期値“0”のフラグであり、受信側であるノードB20のCPU600が受信バッファ620に到着する予定の受信データを待つ状態になったときにCPU600が信号線1180を経由して受信確認フラグ1130を“1”にセットする。
【0040】
なお、この受信確認フラグ1130をCPU600が“1”にするタイミングは、「他の処理もあるが受信データを使った処理も開始できるタイミング」とするか、「受信データを使った処理以外の処理が無くなり、受信データの着信を待つだけとなったタイミング」とするか、どちらが適当かはアプリケーションに依存する。本実施の形態では、受信確認フラグ1130の設定を、後述するカウンタによる待ち時間のカウント測定にも使用するため、「受信データを使った処理以外の処理が無くなり、受信データの着信を待つだけとなったタイミング」とする。
【0041】
信号線1190を経由して割り込みを通知されたCPU600は、受信バッファ620から主記憶605(図2)にデータをコピーする。コピーが完了すると、CPU600は信号線1180を経由して受信確認フラグ1130を“1”から“0”にセットする。
【0042】
受信通知回路1140は、受信確認フラグ1130が“1”から“0”となったことを信号線1160を経由して通知されると、受信完了フラグ1100を“1”から“0”にセットする。同時に受信通知回路1140は受信の完了すなわち受信バッファ620が空きであることを信号線120を経由してノードA10の送信制御回路525に通知する。この通知によって受信バッファ開放フラグ1030(図3)が“1”から“0”にセットされ、新たなデータの送信が可能になる。
【0043】
以上の動作によってノードA10からノードB20へのデータ送信が行われ、一連の動作によって各フラグはそれぞれ初期値に戻る。
【0044】
なお、本実施の形態では、図2に示すように、ノードA10とノードB20、C30、D40、E50の各ノードとの間に双方向の別々の信号線110〜150を用意しているが、LANなどを用いることでノードA10のデータ送信の物理的な信号線が1つの場合や、制御信号とデータ送受信の物理的な信号線が1つの場合でも、本質的な動作は変わらない。
【0045】
以下に、本実施の形態の、データ送受信での待ち時間を利用したジョブスケジューリング方法について説明する。
【0046】
まず、待ち時間量計測のためのカウンタとそれを制御するフラグの動作について説明する。
【0047】
受信側のノードB20内の受信待ち計測回路625についての動作を上記に説明したが、このうち受信確認フラグ1130を図5に、受信完了フラグ1100の状態を図6に示す。
【0048】
図5では、受信確認フラグ1130は、初期値は“0”であり、CPU600が受信データ待ちを開始すると“1”にセットされ、CPU600が受信データの読み込みを終了すると“0”にセットされる。
【0049】
図6では、受信確認フラグ1100は、初期値は“0”であり、受信バッファ620にデータが到着すると“1”にセットされ、CPU600が受信データの読み込みを終了すると“0”にセットされる。
【0050】
ここで、図5及び図6において、受信確認フラグ1130が“1”であり、受信完了フラグ1100が“0”である場合は、受信側のノードB20はデータ到着待ちで処理が止まっていることを示す。
【0051】
カウンタ1120(図4)は、受信確認フラグ1130が“1”で受信完了フラグ1100が“0”であること(すなわち受信側ノードB20がデータ待ちであり、かつ受信データがまだバッファに到着していないためデータを待っている状態)を信号線1150および信号線1160から検知すると、カウント動作を開始する。受信完了フラグ1100が“1”となるとカウント動作を止め、受信確認フラグ1130が“1”から“0”となるとカウント値をリセットする。なお、CPU600がデータの受信待ちとなる前に受信データが受信バッファ620に到着する場合、すなわち受信確認フラグが“1”となる前に受信完了フラグが“1”となる場合もあるが、この場合にはカウント動作の条件である「受信確認フラグ1130が“1”であり、受信完了フラグ1100が“0”であること」が一度も成立しないので、カウンタ1120はカウント動作を開始しない。
【0052】
このカウンタ1120によってカウントされた待ち時間値は信号線1170を経由して受信通知回路1140に伝わる。受信通知回路1140は、前述した受信バッファ620の空きを通知する際にこの待ち時間値を信号線120を経由してノードA10に通知する。
【0053】
次に、ジョブ毎の待ち時間の累積量を集計する負荷バランス計算回路580(図2)の動作を説明する。
【0054】
図7は、ノードA10の負荷バランス計算回路580の詳細な構成を表すブロック図である。
【0055】
負荷バランス計算回路580は、受信待ち時間レジスタ1200〜1240、積算器1250〜1280、加算機1300〜1330、積分レジスタ1350〜1380、スイッチ1400〜1440、加算機1450〜1460、レジスタP1460、レジスタQ1480、タイマ1340、を備えている。
【0056】
ノードA10に通知された待ち時間量は、信号線120を経由して受信待ち時間レジスタ1200に書き込まれる。
【0057】
受信待ち時間レジスタ1200は、書き込まれた待ち時間を積算器1250に通知すると共に、信号線1510を経由して積分レジスタ1350に待ち時間の加算を要求する。積算器1250では、受信待ち時間レジスタ1200から伝わった待ち時間量と重み付けテーブル560(図2)に記録されている対応ポートの重み付けとの積が演算される。
【0058】
この重み付けテーブル560の例を図8に示す。ポートXは送信バッファ520を、ポートYは送信バッファ530を、ポートZは送信バッファ540を、ポートUは送信バッファ550を表すポートIDである。積算器1250が演算するのは送信バッファ520、つまりポートXの重み付けであるので、ポートXに対応する値「0.5」が信号線1550を経由して積算器1250に伝達される。積算器1250では受信待ち時間レジスタ1200と「0.5」との積を演算し加算器1300に通知する。重み付けテーブル560の値は、後述するノードグループ情報テーブル570(図2)の値とともに、Sノード100(図2)から信号線180を経由してノードA10に通知される。
【0059】
なお、図2ではこの信号線180を専用の信号線として表しているが、LAN等を用いてデータの送受信と物理的に同じ信号線を使う場合にも本発明は適用できる。また本実施例では重み付け情報をデータ送信側ノード、すなわち受信待ち時間情報を受ける側のノードで演算しているが、データ受信側ノード、すなわち受信待ち時間情報を送る側のノードで演算してもよい。この場合、重み付けテーブルの情報はそれぞれのノードが自ノード(もしくは自ノードの各受信ポート)について持つことになる。
【0060】
加算器1300は、積算器1250から通知される値と既に積分レジスタ1350に入っている値との和を演算し積分レジスタ1350に通知する。ここで積分レジスタ1350は、信号線1510を経由して受信待ち時間レジスタ1200から新たに待ち時間量情報の書き込みがされたことを検知すると、値の更新、すなわち既に積分レジスタ1350に登録されていた値と受信待ち時間レジスタ1200から積算器1250を経由して加算器1300に新たに届いた値との和を演算し、積分レジスタ1350の値として設定する。
【0061】
各レジスタに入る値を整理すると、受信待ち時間レジスタ1200は、対応するポートを使った通信(この場合は送信バッファ520を使用する通信)における受信側ノードの待ち時間量を記録し、積分レジスタ1350は複数回の通信での待ち時間量の累計を記録する。この待ち時間の累計は、タイマ1340が信号線1500を経由して通知するインターバル信号(例えば1分毎に発生する信号)によってリセットされる。これは、適宜積分値のリセットを行うことで各ジョブの最新のスケジューリングに従った待ち時間量を積分レジスタ1350に反映するためである。
【0062】
なお、他の各ポートについても同様の動作が行われる。積分レジスタ1350にはポートX、すなわち送信バッファ520から送られるデータの待ち時間累計、積分レジスタ1360にはポートY、すなわち送信バッファ530から送られるデータの待ち時間累計、積分レジスタ1370にはポートZ、すなわち送信バッファ540から送られるデータの待ち時間累計、積分レジスタ1380にはポートU、すなわち送信バッファ550から送られるデータの待ち時間累計が、それぞれ記録される。なお、タイマ1340のリセット信号をトリガとして、信号線1500によって全積分レジスタ1350〜1380が同時にリセットされる。
【0063】
各積分レジスタ1350〜1380に記録された待ち時間累計は、スイッチ1400〜1430を経由して、加算器1450、1470によってジョブ毎の総和が演算される。加算器1450にて演算された値はレジスタP1460に、加算器1470にて演算された値はレジスタQ1480に記録される。
【0064】
待ち時間の累計がいずれのジョブの総和であるかは、ノードグループ情報テーブル570(図2)から信号線1600〜1630を経由して伝達される情報に従って、スイッチ1400〜1430にて加算器1450に出力するか加算器1470に出力するかを切り換えることで、各レジスタに分けられる。
【0065】
このノードグループ情報テーブル570の内容の例を図9に示す。ポートX〜UのIDは、重み付け情報テーブル560と同様に各送信バッファ520〜550に対応する。例えば積分レジスタ1350に記録された待ち時間累計はポートXの情報に従ってジョブP=1、ジョブQ=0となり、この情報が信号線1600を経由してスイッチ1400に通達される。スイッチ1400は積分レジスタ1350の値を加算器1450に出力し、結果としてレジスタP1460に加算されることとなる。
【0066】
なお、総和をレジスタP1460とレジスタQ1480との2つのレジスタに保存するのは、本実施の形態ではノードA10が同時実行するジョブ数が2つ(ジョブPとジョブQ)であることによるものであり、同時実行するジョブの数に従って、加算器、レジスタをそれぞれ用意する必要がある。
【0067】
上記の処理によりレジスタP1460、レジスタQ1480に記録される値は、レジスタP1460はジョブPに関して各ノードが待たされている時間のそれぞれの累計の総和、レジスタQ1480はジョブQに関して各ノードが待たされている時間のそれぞれの累計の総和、となる。
【0068】
ノードA10のCPU500は、信号線1650及び信号線1660(図7)を経由してレジスタP及びQを読み出すことができる。レジスタはタイマ1340によりリセットされるので、CPU500はレジスタP1460とレジスタQ1480とを同時に読み出す必要がある。
【0069】
次に、CPU500が上記レジスタP1460、レジスタQ1480の情報を読み出し、ジョブスケジューリングに利用する際の動作を説明する。
【0070】
まず、CPU500はジョブスケジューリングを変更するタイミング(例えば30秒毎)でレジスタP1460の値及びレジスタQ1480の値を読み出す。この結果、例えばレジスタP1460の値が10、レジスタQ1480の値が20であったとする。これは、ジョブPの進捗によって他のノードが受ける待ち時間よりも、ジョブQの進捗によって他のノードが受ける待ち時間の方が深刻であることを表す。この場合、ジョブQの優先度をジョブPよりも大きくすることでシステム全体の効率を向上することができる。
【0071】
次に、ジョブの優先度の制御方法について説明する。
【0072】
ジョブの優先度の制御は、各ジョブの持ち時間初期値を決定することで行う。持ち時間初期値の使用方法は、例えばジョブPの持ち時間初期値が3秒、ジョブQの持ち時間初期値が2秒だった場合には、ジョブPを3秒実行しジョブPの持ち時間が0になった後に、ジョブQを2秒実行し、その後に再びジョブPを3秒実行するということになる。
【0073】
各ジョブの持ち時間初期値の決定は、本実施形態では、次の数式1及び数式2を用いて決定する。
【0074】
【数1】
【0075】
【数2】
数式1及び数式2において、レジスタP値はレジスタP1460を読み出した時の値、レジスタQ値はレジスタQ1480を読み出した時の値、平均レジスタ値はレジスタP値とレジスタQ値との平均値である。
【0076】
Tdは時間変量を決めるパラメータで、各持ち時間初期値に比べて小さい値とする。例えば前記の「ジョブPの持ち時間初期値が3秒、ジョブQの持ち時間初期値が2秒」のように各持ち時間初期値が数秒のオーダであれば、Tdは1秒以下、具体的には0.2〜0.5秒程度の値とする。上記式は例えばジョブPの優先度を高めたいときは、一度に変化する量はTd以下となるようにジョブPの持ち時間初期値を増やし、同じ量だけジョブQの持ち時間初期値を減らすことを表す。
【0077】
ここで、例えばジョブの数3つとなり、さらにジョブRを扱う必要がある場合(レジスタRも用意し、レジスタR値も読み出せるとする)には、以下の式を用いれば良い。
【0078】
【数3】
【0079】
【数4】
【0080】
【数5】
ジョブRを含めた場合の平均レジスタ値は、レジスタP値、レジスタQ値、レジスタR値の平均値を意味する。更にレジスタの数が増加した場合にも同様に平均値を用いる。
【0081】
次に、上記数式1から2又は3から5によって各ジョブの持ち時間初期値を決定した後ジョブスイッチ動作を行う処理について、ジョブを管理するOSに関する操作を説明する。
【0082】
図10は、ジョブをスイッチするOSの処理をフローチャートで表したものである。この処理は、各ジョブ(P及びQ)において発生した待ち時間値に対して、ジョブPの処理はジョブPの待ち時間値と同じだけ実行し、ジョブをスイッチして、ジョブQはジョブQの待ち時間値と同じ時間だけ実行する、といった処理を繰り返すことでジョブスケジューリングを行うものである。
【0083】
まず初期状態として、カレントジョブを「ジョブP」に、待ち時間を「P初期値」に設定する(処理2000)。
【0084】
次に、システムモードからユーザモードに処理を移行し、OSからカレントジョブに処理をスイッチし、ジョブを実行する(処理2010)。
【0085】
ここで、処理をシステムモードに移行しOSに処理をスイッチし、P初期値(待ち時間値)からタイムスライス割込値(一般に10m秒間隔)を減ずる(処理2020)。
【0086】
次に、この減算された待ち時間値の値を調べる(処理2030)。待ち時間値が0以上であれば処理2010に移行し、カレントジョブを実行し、待ち時間値からさらにタイムスライス値を減ずる(処理2020)処理を繰り返す。時間値0以下になれば、処理2040に移行しジョブのスイッチを行う。
【0087】
処理2040では、ジョブをPからQ、又はQからPに切り替え、処理2010に移行し、この新たなジョブに対して処理を実行する。
【0088】
上記の操作によってジョブのスイッチ動作が実行される。
【0089】
第1の実施の形態の計算機システムは、以上の一連の処理によって、受信側ノードが送信側ノードに対してデータを待っている時間を計測し、各ジョブ毎に集計し、その集計された待ち時間蓄積値に応じて各々のジョブをスイッチしながら実行することで、ジョブスケジューリングの最適化を行うものである。
【0090】
以上のように構成された第1の実施の形態の計算機システムでは、データの送信及び受信を行う複数のノードと、前記ノード間のデータ通信を行う通信経路と、を備えた並列型又はグリッド型の計算機システムにおいて、前記ノードは、データを送信する送信側のノードと、送信されるデータに依存するジョブを処理する受信側のノードとを備え、ジョブがデータを必要としてから前記送信側のノードから前記受信側のノードにデータ送信されるまでの間の時間を受信側のノードで計測し、各ノードにおいて計測された待ち時間値をジョブ毎に集計し、集計された待ち時間量に応じてジョブの優先度を決定しジョブのスケジューリングを行うことを特徴とするので、終了予定時刻の不明なマルチノード計算においても、動的にジョブスケジューリングを行うことでスケジューリングの最適化が実現できる。また、各送信ノードが自律的にジョブスケジューリングを行うことで、システム全体のジョブ実行状態を一元管理する必要がなくなり、一元管理に伴う処理のぶつかりを回避することで、ノード数に対してスケーラブルなジョブスケジューリング最適化が実現できる。
【0091】
次に、第2の実施の形態の計算機システムについて図面を用いて詳細を説明する。
【0092】
前記第1の実施の形態では、各ノードがデータ受信の度に受信待ち情報を送信側ノードに送り返すという動作を行う。しかし送信側のジョブスケジューリングの頻度は例えば30秒毎であり、データ受信の度に受信待ち情報を送り返すことは、受信側ノードの負荷を増やすだけでなく余分な情報がネットワークに混在する原因となる。
【0093】
第2の実施の形態の計算機システムでは、受信側ノードにおいて待ち時間を一定時間集計して、これをジョブスケジューリングに活用する。なお、第1の実施の形態と同一の動作をする構成には同一の処理を付して、その詳細な説明は省略する。
【0094】
図11は第2の実施の形態の受信待ち計測回路625の構成を表すブロック図である。
【0095】
基本的な構成は図4に示す第1の実施の形態の受信待ち計測回路625と同じであるが、タイマ3000、加算機3010、積分レジスタ3020を備えること、カウンタ1120の出力を積分レジスタ3020に集計すること、集計した結果をタイマ3000が発生するインターバル信号を受けたタイミングで送信側ノードA10へ返送すること、が異なる。なお本実施の形態のタイマ3000のインターバルは10秒とする。
【0096】
以下に、この第2の実施の形態の受信待ち計測回路625の動作を説明する。
【0097】
第1の実施の形態では、受信確認フラグ1130がCPU600により“0”にセットされること、すなわち受信データを必要とする処理以外の処理が無くなり、受信データの着信を待つだけとなったタイミング、をトリガとしてノードA10に対して待ち時間情報を返送していたが、本実施の形態では、後述する通りタイマ3000からの一定間隔の同期信号(インターバル信号)をトリガにして待ち時間情報を返送する。
【0098】
また、カウンタ1120はカウントを終了した時点、すなわち受信確認フラグ1130が“1”であり受信完了フラグ1100が“0”から“1”にセットされたこと、を信号線1150及び信号線1160を経由して検知すると、カウントした待ち時間情報を信号線1170を通じて加算器3010に出力すると共に、信号線3070を通じて積分レジスタ3020に対してトリガ信号を出力する。積分レジスタ3020はこのトリガ信号を受けて値を更新する。すなわち現在の積分レジスタ3020の値とカウンタ1120の出力との和を加算器3010にて演算した値を新たに積分レジスタ3020の値とする。
【0099】
受信通知回路1140は、積分レジスタ3020に蓄積された待ち時間情報、すなわち待ち時間累計情報を、タイマ3000から信号線3080を経由して送られるインターバル信号をトリガとして信号線120を通じて送信側のノードA10に送る。このトリガによって同時に積分レジスタ3020はリセットされる。
【0100】
この際、各ノードによってタイマ3000のインターバルが異なることを考慮して、ノードA10に送る待ち時間累計情報は積分レジスタ3020の値をタイマ3000のインターバルの値で除算した値、すなわち経過した時間のうち受信を待っていた時間の割合とする。
【0101】
まず、本実施の形態の負荷バランス計算回路580の動作について説明する。
【0102】
図12は、本実施の形態の負荷バランス計測回路580の構成を表すブロック図である。
【0103】
基本的な構成は図7に示す第1の実施の形態の負荷バランス計測回路580と同じであるが、タイマ1340のリセット信号の動作が異なる。すなわち、受信待ち計測回路625から送られてきた待ち時間情報を扱う負荷バランス計算回路580は、原理的には第1の実施の形態の動作と完全に同一としても動作はするが、待ち時間情報が前述した第1の実施の形態の受信待ち計測回路625(図4)の例である10秒毎にのみ送られてくるとすると、レジスタP1460とレジスタQ1480とをCPU500が読み出すタイミングによっては待ち時間累積情報が到着した直後のノードと待ち時間累積情報が到着した直前のノードとが存在する場合があり、レジスタ値に大幅な差が発生し適切なジョブスケジューリングが行えないという問題が発生する。
【0104】
各ノードからの待ち時間累積情報が到着するタイミングが完全に一致する場合は問題にはならないが、一般にネットワーク経由ではタイミングは完全に制御できないため、本実施の形態では次のような手段を用いる。
【0105】
本実施の形態の負荷バランス計算回路580では、積分レジスタ1350〜1380の値更新のタイミングを受信待ち時間レジスタ1200〜1230の更新タイミングではなく、タイマ1340が生成し信号線1590を経由して通知されるインターバル信号を用いる。このインターバル信号は、信号線1500を通して通知されるリセット信号のインターバル及びタイマ3000(図11)のインターバル信号よりも充分に短いインターバルとすることを前提としている。例えば、信号線1500のインターバルが1分、タイマ3000のインターバルが10秒だった場合には、信号線1590のインターバルは0.1秒という値に設定する。
【0106】
各積分レジスタ1350〜1380は、0.1秒毎に、受信待ち時間レジスタ1200〜1230に記録されている値に積算器1250によって重み付けした値を積算する。これによって、受信待ち時間レジスタ1200〜1230が各ノードの受信待ち計測回路によって10秒毎にしか更新されない場合でも、積分レジスタ1350〜1380の値は0.1秒毎に更新されることになり、レジスタP1460やレジスタQ1480の値が10秒毎に大きく変更すること、すなわちレジスタP1460及びレジスタQ1480を読み出すタイミングによっては、待ち時間累積情報が到着した直後のノードと待ち時間累積情報が到着した直前のノードとが存在しレジスタ値に大幅な差が発生すること、は無くなる。
【0107】
ただし、各ノードの受信待ち計測回路から通知される待ち時間累積値そのものは受信待ちレジスタ1200〜1230の更新時、すなわち10秒毎にしか変更されないので、第1の実施の形態と比較するとジョブスケジューリングの精度は落ちるが、受信待ち時間情報については各ノードのデータ受信毎ではなく一律に10秒毎に更新するので、各ノードやノード間通信に用いるネットワークの負荷を軽減することができる。
【0108】
上記のように構成された第2の実施の形態の計算機システムは、第1の実施の形態の効果に加え、各ノードにおいて待ち時間累積値を演算し、受信側ノードに備えられたタイマのインターバル信号のタイミングによって待ち時間累積値を送信ノードに通知するので、各ノードの負荷やデータの送受信に用いるネットワークの負荷を低減することができる。
【0109】
次に、第3の実施の形態の計算機システムについて図面を用いて詳細を説明する。
【0110】
前記第1及び第2の実施の形態の計算機システムでは、ノード間のデータの送受信及びジョブスケジューリングの最適化をハードウェア動作によって実現するものであるが、第3の実施の形態の計算機システムは、それらをソフトウェアによって実現するものである。なお、第1の及び第2の実施の形態と同一の動作をする構成には同一の処理を付して、その詳細な説明は省略する。
【0111】
まず、送信側のノードにおけるデータ送信動作を説明する。
【0112】
図13は、第3の実施の形態の計算機システムのブロック図を示す。
【0113】
ノードA10はデータ送信側のノード、ノードB20、C30、D40、E50は受信側のノードである。なお、ノードB20、C30、D40、E50の内部は同一の構成とする。
【0114】
送信バッファ520はノードB20の受信バッファ620に、送信バッファ530はノードC30の受信バッファ720に、送信バッファ540はノードD40の受信バッファ820に、送信バッファ550はノードE50の受信バッファ920にそれぞれ対応する。
【0115】
図14は、送信側のノードから受信側のノードにデータを送信する動作を表すフローチャートである。ここではノードA10からノードB20にデータを送信する動作を説明する。
【0116】
ユーザジョブは、受信側のノードB20に対してデータ送信が必要になると、まず送信側のノードA10の主記憶505(図13)中の送信要求フラグが“0”である、もしくは“0”にセットされるまで待ってから、送信バッファ520にデータを書き込み、システムコールを発行してユーザモードからシステムモードへと移行しOSに処理を渡す。これを受けてOSが送信要求処理を行う(処理5000)。
【0117】
まず、OSは送信要求フラグを“0”から“1”に変更する(処理5010)。この送信要求フラグは主記憶505内に存在する初期値は“0”のフラグで、OSが管理している。フラグが“0”であれば送信バッファ520が空いていることを表し、“1”であれば送信バッファ520には未送信のデータが残っていることを表す。
【0118】
次に、受信側のノードB20の受信バッファ620が空いているかどうかを示す受信バッファ開放フラグが“1”であるかどうかを確認する(処理5040)。受信バッファ開放フラグは主記憶505内に存在する初期値は“1”のフラグで、OSが管理している。“0”であれば受信側ノードの受信バッファ620が空いていることを表し、“1”であれば受信側ノードの受信バッファ620内に送信済みだがまだ受信側ノードのユーザジョブにより読み出されていないデータが残っていることを表す。
【0119】
受信バッファ開放フラグが“1”である場合は直ちにデータの送信が可能であることを示すので、まず受信バッファ開放フラグを“0”にセットしてから(処理5050)、信号線4010を経由して受信バッファ620にデータを送る(処理5060)。データが受信バッファ620に送られると送信バッファ520は開放され空きとなるので、送信要求フラグを“1”から“0”にリセットしてから(処理5070)、OS処理からユーザジョブに復帰する(処理5080)。
【0120】
また、処理5040において受信バッファ開放フラグが“0”である場合には、受信側ノードB20から受信バッファ620の開放の通知を受けてからでないとデータを送信できないので、一旦ユーザモードに処理を切り換えユーザジョブの処理を実行する(処理5080)。
【0121】
次に受信側であるノードB20の動作を説明する。
【0122】
まず、送信側のノードA10からデータが送られてきたときの処理(図15)を説明する。
【0123】
送信側のノードA10からデータが送られてくると、CPU600(図13)に割り込みが通知される。この割り込みを受けてユーザモードからシステムモードに切り替わり、OSに処理を移行しデータを受信する(処理5350)。
【0124】
受信が完了すると、OSは受信完了フラグを“0”から“1”にセットする(処理5360)。この受信完了フラグは主記憶605内に存在する初期値“0”のフラグで、OSが管理している。フラグが“0”の場合は受信バッファが開いていることを表し、フラグが“1”の場合は受信が完了したがまだ読み出していないデータが受信バッファに残っていることを表す。
【0125】
次に、受信確認フラグを調べる(処理5370)。受信確認フラグは主記憶605内に存在する初期値“0”のフラグで、OSが管理している。フラグが“1”の場合は、受信側のノードB20のユーザジョブがデータを受信する準備ができたがまだデータを受信していないことを表す。フラグが“0”の場合は、まだユーザジョブ側の処理が済んでおらずデータを受信可能でないことを表す。この場合はシステムモードからユーザモードに処理を切り換え、ユーザジョブにスイッチする(処理5420)。
【0126】
受信確認フラグが“1”の場合には、受信バッファ読み出し処理5500に移行する。
【0127】
次に、受信側ノードB20のユーザジョブがデータを受信する準備ができ、送信側ノードA10に対しデータ受信要求を発行する場合の処理(図16)を説明する。
【0128】
ユーザジョブは、データを受信する準備ができるとシステムコールを発行し、ユーザモードからシステムモードへと移行しOSに処理を渡す。OSは受信データを受ける処理を開始する(処理5300)。
【0129】
次に、OSは受信確認フラグを“1”に変更する(処理5310)。
【0130】
次に、カウンタ4050(図13)を起動し、カウントを開始する(処理5320)。このカウンタ4050は、データ受信の準備ができてから実際にデータが送られてくるまでの時間をカウントする。
【0131】
次に、受信完了フラグを調べる(処理5330)。まだ受信データが到着していない場合(受信完了フラグが“0”の場合)には、システムモードからユーザモードに処理を切り換えユーザジョブにスイッチする(処理5340)。この場合、送信側ノードからのデータを必要とするユーザジョブに復帰したとしても、一般的には受信データ待ちである場合が多く事実上実行できる処理がないため、通信を行わない別のジョブがあればそちらにスイッチした方が効率的である。
【0132】
既に受信データが到着している場合(受信完了フラグが“1”の場合)には、受信バッファ読み出し処理5500を行う。
【0133】
次に、受信バッファ読み出す処理(図17)を説明する。
【0134】
この処理は、送信データが到着して受信が完了したときに受信確認フラグを調べたときにフラグが“1”だった場合(図15の処理5370)及び、ユーザジョブからデータ受信要求を受けて受信完了フラグを調べたときにフラグが“1”だった場合(図16の処理5330)、すなわち、必要な受信データが受信バッファ620に存在し、更にユーザジョブもデータを受信可能な状態になっているため、受信バッファからデータを読み出す処理である。
【0135】
まず、カウンタ4050のカウントを止めてカウントされた値を読み出す(処理5510)。
【0136】
この値は「ユーザジョブがデータを受信できるようになってから実際に受信できるまでの値」を表す。ユーザジョブが受信の準備ができる前に送信側ノードA10からデータが到着していた場合には、カウンタは図15の処理5320から処理5510までの間をカウントするので、極めて小さい値(すなわち待ち時間は殆ど0)となる。しかし、ユーザジョブが受信の準備ができた後に送信側ノードA10からデータが到着した場合(図16)には、カウンタを起動する図16の処理5320の後、処理5330でNO側に分岐し別のジョブを実行している時に送信側ノードからデータが到着し、これにより図15の処理5350に移行する。この後、受信確認フラグが“1”であるので図15の処理5370でYES側に分岐し、処理5510でカウンタを止めるので、「ユーザジョブがデータを受信できるようになってから実際に受信できるまでの間」をカウントする。
【0137】
次に、受信バッファを読み出し、読み出したデータをユーザジョブに渡す(処理5520)。
【0138】
受信バッファからデータが読み出されると受信バッファは空きとなるので、受信完了フラグを“0”にセットする。また、ユーザジョブの受信待ちも解消するので、受信確認フラグを“0”にセットする。この時同時にカウンタ値もリセットする(処理5530)。
【0139】
以上により、受信処理は完了するので、送信側のノードA10に受信バッファの開放を信号線4010を通じて通知すると共に、カウンタでカウントした待ち時間情報も送信側のノードA10に通知する(処理5540)。
【0140】
最後に、システムモードからユーザモードに処理を切り換え、ユーザジョブにスイッチする(処理5550)。
【0141】
次に、送信側のノードA10が受信側のノードB20から受信完了の通知を受けた場合の処理(図18)について説明する。
【0142】
まず、受信完了の通知を受けると、ユーザモードからシステムモードの処理を切り換え、ユーザジョブからOSに処理をスイッチする(処理5100)。
【0143】
次に、受信完了の通知によって受信バッファは開放されたことを示すので、受信バッファ開放フラグを“1”にセットする(処理5110)。
【0144】
次に、受信完了の通知と共に送られてきた待ち時間情報を蓄積するために、まず重み付け情報テーブル560を読み出し、該当する受信側ノードの重み付けを把握する(処理5120)。
【0145】
次に、送られてきた待ち時間情報と処理5120で把握した重み付けとの積を演算し、この値と対応する送信バッファの待ち時間蓄積値との和を新たな待ち時間蓄積値とする(処理5130)。待ち時間蓄積値は主記憶505内に存在する初期値は“0”のデータで、OSが管理する。この待ち時間蓄積値は後述するジョブのスイッチ手段に使用する。
【0146】
次に、送信要求フラグを調べる(処理5140)。この時、送信要求フラグが“0”であれば、受信側ノードB20の受信バッファ620は開放されたが、次に送るべきデータはまだ送信側バッファ520に無いことを示すので、ユーザジョブへ復帰する(処理5180)。送信要求フラグが“1”であれば、受信側ノードB20の受信バッファ620にデータを送出し、送信側ノードA10の送信バッファ520が空いた後、受信側ノード20のユーザジョブがデータ受信要求を発行し受信バッファ620からデータを読み出して受信バッファ620が空くまでの間に、送信側ノードA10のユーザジョブから次のデータ送信要求が発行され再び送信バッファ520に送信データが準備されたことを示すので、直ちにデータの送信が可能である。
【0147】
そこで、受信バッファ開放フラグを“0”にセットしてから(処理5150)、信号線4010を経由して受信バッファ620にデータを送る(処理5160)。データが受信バッファ620に送られると送信バッファ520は開放され空きとなるので、送信要求フラグを“1”から“0”にリセットしてから(処理5170)、OS処理からユーザジョブに復帰する(処理5180)。
【0148】
また、処理5140において受信バッファ開放フラグが“0”である場合には、受信側ノードB20から受信バッファ620の開放の通知を受けてからでないとデータを送信できないので、一旦ユーザモードに処理を切り換えユーザジョブの処理を実行する(処理5180)。
【0149】
上記の処理によって、OSがフラグを操作し、送信側のノードから送信バッファ、受信バッファを用いて受信側ノードにデータを送信することができる。
【0150】
次に、送信側ノードA10が演算し記録している待ち時間蓄積値を用いて、ユーザジョブを適切にスイッチする処理(図19)を説明する。
【0151】
ジョブスイッチはタイマ4000(図13)がCPU500に対して発生する割り込みにより開始する(処理5200)。
【0152】
ジョブスイッチの処理が開始されると、まずOSは各ポートの待ち時間蓄積値を読み出す(処理5210)、次に、各ポートの待ち時間蓄積値をリセットする(処理5220)。
【0153】
読み出した待ち時間蓄積値からジョブスイッチの設定値を計算するために、まず、ノードグループ情報テーブル570(図13)を読み出す(処理5230)。このノードグループ情報テーブル570によって、各ポートがいずれのユーザジョブに属するかを把握し、それぞれで待ち時間累計を出すため、各ポートの待ち時間蓄積値のジョブ毎の和を演算する(処理5240)。本実施の形態では、第1の実施の形態と同様にジョブP及びジョブQのいずれかに属するとする。
【0154】
この待ち時間累積値の和は、第1の実施の形態と同じくジョブの優先度に使用するため、計算によりジョブPとジョブQとのジョブスイッチの初期値を算出し、第1の実施の形態と同じくタイムスライス毎に図10で示す処理を行い、ユーザジョブのスイッチを適切な割合で行う。
【0155】
最後に、システムモードからユーザモードに処理を切り換え、ユーザジョブにスイッチする(処理5250)。
【0156】
以上のように構成された第3の実施の形態では、第1及び第2のの実施の形態と同一の作用及び効果、すなわち、送信側ノードから受信側ノードに対するデータの送信、各ノードの待ち時間情報の集計、待ち時間情報によってユーザジョブをスイッチするジョブスケジューリングの最適化、をOSの動作(ソフトウェア)によって実現することができる。
【図面の簡単な説明】
【図1】第1の実施の形態の計算機システムの概念図。
【図2】第1の実施の形態の計算機システムの構成を表すブロック図。
【図3】第1の実施の形態の送信制御回路525の詳細な構成を表すブロック図。
【図4】第1の実施の形態の受信待ち計測回路625の詳細な構成を表すブロック図。
【図5】第1の実施の形態の受信確認フラグ1130の状態を表す表。
【図6】第1の実施の形態の受信完了フラグ1100の状態を表す表。
【図7】第1の実施の形態の負荷バランス計算回路580の詳細な構成を表すブロック図。
【図8】第1の実施の形態の重み付けテーブル560の例を表す表。
【図9】第1の実施の形態のノードグループ情報570の例を示す表。
【図10】第1の実施の形態のジョブをスイッチするOSの処理を表したフローチャート。
【図11】第2の実施の形態の受信待ち計測回路625の構成を表すブロック図。
【図12】第2の実施の形態の負荷バランス計測回路580の構成を表すブロック図。
【図13】第3の実施の形態の計算機システムのブロック図。
【図14】第3の実施の形態の、送信側のノードから受信側のノードにデータを送信する動作を表すフローチャート。
【図15】第3の実施の形態の、送信側のノードからデータが送られてきたときの処理を表すフローチャート。
【図16】受信側ノードのユーザジョブがデータを受信する準備ができ、送信側ノードに対しデータ受信要求を発行する場合の処理を表すフローチャート。
【図17】第3の実施の形態の受信バッファ読み出す処理を表すフローチャート。
【図18】第3の実施の形態の、送信側のノードが受信側のノードから受信完了の通知を受けた場合の処理を表すフローチャート。
【図19】第3の実施の形態の、送信側ノードAが演算し記録している待ち時間蓄積値を用いてユーザジョブをスイッチする処理を表すフローチャート。
【符号の説明】
10 ノードA
20 ノードB
30 ノードC
40 ノードD
50 ノードE
100 Sノード
200、300 マルチノード計算
500、600 CPU
505、605 主記憶
520、530、540、550 送信バッファ
525、535、545、555 送信制御回路
560 重み付け情報テーブル
570 ノードグループ情報テーブル
580 負荷バランス計算回路
620、720、820、920 受信バッファ
625、725、825、925 受信待ち計測回路
1100 受信完了フラグ
1120 カウンタ
1130 受信確認フラグ
1140 受信通知回路
1200〜1230 受信待ち時間レジスタ
1250〜1280 積算器
1300〜1330 加算器
1340 タイマ
1350〜1380 積分レジスタ
1400〜1430 スイッチ
1450、1470 加算器
1460 レジスタP
1480 レジスタQ
2000〜2040 処理
3000 タイマ
3010 加算器
3020 積分レジスタ
4000 タイマ
4010〜4040 信号線
4050 カウンタ
110〜180、510、515、610、1000、1050〜1065、1150〜1190、1500〜1650、3050〜3080 信号線
Claims (5)
- データの送信及び受信を行い当該送受信されたデータを元にマルチノード計算を実行する複数のノードと、前記ノード間のデータ通信を行う通信経路と、を備え、前記マルチノード計算を構成する複数のジョブのうち一のジョブを所定のスケジューリングにより前記複数のノードに占有させて実行し、当該実行させるジョブを順次切り換えることにより前記マルチノード計算を実行する並列型又はグリッド型の計算機システムにおいて、
前記ノードは、データを送信する送信側のノードと、送信されるデータに依存するジョブを処理する受信側のノードとを備え、
前記受信側のノードが前記一のジョブの処理に必要なデータを必要としてから、当該必要なデータを受信するまでの間に要した時間値を計測する待ち時間計測手段と、
前記時間値を前記複数のジョブ毎に集計して前記一のジョブに対して各ノードが要した前記時間値の累計値を計算する負荷バランス集計手段と、
前記一のジョブの処理に前記ノードを占有させる時間である持ち時間を前記計算された累計値に応じて計算し、当該累計値が大きいジョブは前記持ち時間を大きくし、当該累計値か小さいジョブは前記持ち時間を小さくすることにより前記複数のジョブの優先度を制御するジョブスケジューリング手段と、
を備えたことを特徴とする計算機システム。 - 前記待ち時間計測手段は、前記時間値を送信側ノードにデータ要求と共に通知し、前記負荷バランス集計手段にて単位時間あたりの時間値の積算値の演算を行うことを特徴とする請求項1に記載の計算機システム。
- 前記待ち時間計測手段は、前記時間値を受信側ノードにて単位時間あたりの時間値の積算値の演算を行い、
演算された前記単位時間あたりの時間値の積算値を前記負荷バランス集計手段に通知することを特徴とする請求項1に記載の計算機システム。 - 前記演算された前記単位時間あたりの時間値の積算値を、前記待ち時間計測手段が発生する一定間隔の信号に同期して、前記負荷バランス集計手段に通知することを特徴とする請求項3に記載の計算機システム。
- 前記負荷バランス集計手段は、各ノードにおいて実行されているジョブ処理の負荷に応じた重み付け情報を備え、
前記時間値と重み付け情報との積を演算し、演算された値の積算値を演算することを特徴とする請求項2ないし4の何れか一つに記載の計算機システム。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002213341A JP4133068B2 (ja) | 2002-07-23 | 2002-07-23 | 計算機システム |
| US10/341,505 US7293092B2 (en) | 2002-07-23 | 2003-01-14 | Computing system and control method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002213341A JP4133068B2 (ja) | 2002-07-23 | 2002-07-23 | 計算機システム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2004054727A JP2004054727A (ja) | 2004-02-19 |
| JP4133068B2 true JP4133068B2 (ja) | 2008-08-13 |
Family
ID=30767837
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002213341A Expired - Fee Related JP4133068B2 (ja) | 2002-07-23 | 2002-07-23 | 計算機システム |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US7293092B2 (ja) |
| JP (1) | JP4133068B2 (ja) |
Families Citing this family (241)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2004073657A2 (en) * | 2003-02-19 | 2004-09-02 | Protein Design Labs, Inc. | Methods of diagnosis of cancer and other diseases, composition and methods of screening for modulators of cancer and other diseases |
| US7644408B2 (en) * | 2003-04-25 | 2010-01-05 | Spotware Technologies, Inc. | System for assigning and monitoring grid jobs on a computing grid |
| US7287179B2 (en) * | 2003-05-15 | 2007-10-23 | International Business Machines Corporation | Autonomic failover of grid-based services |
| US7073932B2 (en) * | 2003-07-31 | 2006-07-11 | Harry Lee Wainwright | Optical fiber decorative assembly |
| US9081620B1 (en) * | 2003-09-11 | 2015-07-14 | Oracle America, Inc. | Multi-grid mechanism using peer-to-peer protocols |
| US20050132270A1 (en) * | 2003-12-11 | 2005-06-16 | International Business Machines Corporation | Method, system, and computer program product for automatic code generation in an object oriented environment |
| US7562143B2 (en) | 2004-01-13 | 2009-07-14 | International Business Machines Corporation | Managing escalating resource needs within a grid environment |
| US7406691B2 (en) | 2004-01-13 | 2008-07-29 | International Business Machines Corporation | Minimizing complex decisions to allocate additional resources to a job submitted to a grid environment |
| US7552437B2 (en) | 2004-01-14 | 2009-06-23 | International Business Machines Corporation | Maintaining application operations within a suboptimal grid environment |
| US7464159B2 (en) * | 2004-01-14 | 2008-12-09 | International Business Machines Corporation | Managing analysis of a degraded service in a grid environment |
| US20050165912A1 (en) * | 2004-01-23 | 2005-07-28 | Colbeck Scott J. | GUI-based grid computing data management apparatus method and system |
| US9558042B2 (en) | 2004-03-13 | 2017-01-31 | Iii Holdings 12, Llc | System and method providing object messages in a compute environment |
| US8782654B2 (en) | 2004-03-13 | 2014-07-15 | Adaptive Computing Enterprises, Inc. | Co-allocating a reservation spanning different compute resources types |
| US7441241B2 (en) * | 2004-05-20 | 2008-10-21 | International Business Machines Corporation | Grid non-deterministic job scheduling |
| US7266547B2 (en) | 2004-06-10 | 2007-09-04 | International Business Machines Corporation | Query meaning determination through a grid service |
| US7861246B2 (en) * | 2004-06-17 | 2010-12-28 | Platform Computing Corporation | Job-centric scheduling in a grid environment |
| US7340654B2 (en) * | 2004-06-17 | 2008-03-04 | Platform Computing Corporation | Autonomic monitoring in a grid environment |
| US7844969B2 (en) * | 2004-06-17 | 2010-11-30 | Platform Computing Corporation | Goal-oriented predictive scheduling in a grid environment |
| US20070266388A1 (en) | 2004-06-18 | 2007-11-15 | Cluster Resources, Inc. | System and method for providing advanced reservations in a compute environment |
| US8521687B2 (en) * | 2004-08-03 | 2013-08-27 | International Business Machines Corporation | Apparatus, system, and method for selecting optimal replica sources in a grid computing environment |
| US8176490B1 (en) | 2004-08-20 | 2012-05-08 | Adaptive Computing Enterprises, Inc. | System and method of interfacing a workload manager and scheduler with an identity manager |
| US7712100B2 (en) * | 2004-09-14 | 2010-05-04 | International Business Machines Corporation | Determining a capacity of a grid environment to handle a required workload for a virtual grid job request |
| JP4168281B2 (ja) * | 2004-09-16 | 2008-10-22 | 日本電気株式会社 | 並列処理システム、インタコネクションネットワーク、ノード及びネットワーク制御プログラム |
| US8271980B2 (en) | 2004-11-08 | 2012-09-18 | Adaptive Computing Enterprises, Inc. | System and method of providing system jobs within a compute environment |
| JP2006142898A (ja) * | 2004-11-17 | 2006-06-08 | Auto Network Gijutsu Kenkyusho:Kk | 車載電子制御システム |
| US20060167966A1 (en) * | 2004-12-09 | 2006-07-27 | Rajendra Kumar | Grid computing system having node scheduler |
| US7730122B2 (en) * | 2004-12-09 | 2010-06-01 | International Business Machines Corporation | Authenticating a node requesting another node to perform work on behalf of yet another node |
| US7461102B2 (en) * | 2004-12-09 | 2008-12-02 | International Business Machines Corporation | Method for performing scheduled backups of a backup node associated with a plurality of agent nodes |
| US7761557B2 (en) | 2005-01-06 | 2010-07-20 | International Business Machines Corporation | Facilitating overall grid environment management by monitoring and distributing grid activity |
| US7502850B2 (en) * | 2005-01-06 | 2009-03-10 | International Business Machines Corporation | Verifying resource functionality before use by a grid job submitted to a grid environment |
| US7590623B2 (en) | 2005-01-06 | 2009-09-15 | International Business Machines Corporation | Automated management of software images for efficient resource node building within a grid environment |
| US7793308B2 (en) * | 2005-01-06 | 2010-09-07 | International Business Machines Corporation | Setting operation based resource utilization thresholds for resource use by a process |
| US7533170B2 (en) * | 2005-01-06 | 2009-05-12 | International Business Machines Corporation | Coordinating the monitoring, management, and prediction of unintended changes within a grid environment |
| US7707288B2 (en) * | 2005-01-06 | 2010-04-27 | International Business Machines Corporation | Automatically building a locally managed virtual node grouping to handle a grid job requiring a degree of resource parallelism within a grid environment |
| US7562035B2 (en) | 2005-01-12 | 2009-07-14 | International Business Machines Corporation | Automating responses by grid providers to bid requests indicating criteria for a grid job |
| US7571120B2 (en) | 2005-01-12 | 2009-08-04 | International Business Machines Corporation | Computer implemented method for estimating future grid job costs by classifying grid jobs and storing results of processing grid job microcosms |
| US7472079B2 (en) * | 2005-01-12 | 2008-12-30 | International Business Machines Corporation | Computer implemented method for automatically controlling selection of a grid provider for a grid job |
| US8863143B2 (en) | 2006-03-16 | 2014-10-14 | Adaptive Computing Enterprises, Inc. | System and method for managing a hybrid compute environment |
| US8631130B2 (en) * | 2005-03-16 | 2014-01-14 | Adaptive Computing Enterprises, Inc. | Reserving resources in an on-demand compute environment from a local compute environment |
| US9015324B2 (en) | 2005-03-16 | 2015-04-21 | Adaptive Computing Enterprises, Inc. | System and method of brokering cloud computing resources |
| US9231886B2 (en) | 2005-03-16 | 2016-01-05 | Adaptive Computing Enterprises, Inc. | Simple integration of an on-demand compute environment |
| CA2603577A1 (en) | 2005-04-07 | 2006-10-12 | Cluster Resources, Inc. | On-demand access to compute resources |
| US8782120B2 (en) | 2005-04-07 | 2014-07-15 | Adaptive Computing Enterprises, Inc. | Elastic management of compute resources between a web server and an on-demand compute environment |
| US7707579B2 (en) * | 2005-07-14 | 2010-04-27 | International Business Machines Corporation | Method and system for application profiling for purposes of defining resource requirements |
| US7995474B2 (en) * | 2005-09-13 | 2011-08-09 | International Business Machines Corporation | Grid network throttle and load collector |
| US20070118839A1 (en) * | 2005-10-24 | 2007-05-24 | Viktors Berstis | Method and apparatus for grid project modeling language |
| US7853948B2 (en) * | 2005-10-24 | 2010-12-14 | International Business Machines Corporation | Method and apparatus for scheduling grid jobs |
| US7831971B2 (en) * | 2005-10-24 | 2010-11-09 | International Business Machines Corporation | Method and apparatus for presenting a visualization of processor capacity and network availability based on a grid computing system simulation |
| US7831972B2 (en) * | 2005-11-03 | 2010-11-09 | International Business Machines Corporation | Method and apparatus for scheduling jobs on a network |
| US20080049254A1 (en) * | 2006-08-24 | 2008-02-28 | Thomas Phan | Method and means for co-scheduling job assignments and data replication in wide-area distributed systems |
| US7979858B2 (en) * | 2006-10-03 | 2011-07-12 | Sas Institute Inc. | Systems and methods for executing a computer program that executes multiple processes in a multi-processor environment |
| US8959516B2 (en) * | 2007-07-30 | 2015-02-17 | International Business Machines Corporation | Methods and systems for coordinated financial transactions in distributed and parallel environments |
| US8041773B2 (en) | 2007-09-24 | 2011-10-18 | The Research Foundation Of State University Of New York | Automatic clustering for self-organizing grids |
| US8230439B2 (en) * | 2008-08-22 | 2012-07-24 | International Business Machines Corporation | Green computing interchange switching function |
| WO2011039762A2 (en) * | 2009-09-07 | 2011-04-07 | Tata Consultancy Services Ltd. | System for real-time radio / physical layer simulation |
| US10877695B2 (en) | 2009-10-30 | 2020-12-29 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
| US11720290B2 (en) | 2009-10-30 | 2023-08-08 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
| WO2013070152A2 (en) * | 2011-11-07 | 2013-05-16 | Binary Bio Ab | Dynamic dataflow network |
| US9891669B2 (en) | 2014-08-21 | 2018-02-13 | Energous Corporation | Systems and methods for a configuration web service to provide configuration of a wireless power transmitter within a wireless power transmission system |
| US9838083B2 (en) | 2014-07-21 | 2017-12-05 | Energous Corporation | Systems and methods for communication with remote management systems |
| US10263432B1 (en) | 2013-06-25 | 2019-04-16 | Energous Corporation | Multi-mode transmitter with an antenna array for delivering wireless power and providing Wi-Fi access |
| US9887739B2 (en) | 2012-07-06 | 2018-02-06 | Energous Corporation | Systems and methods for wireless power transmission by comparing voltage levels associated with power waves transmitted by antennas of a plurality of antennas of a transmitter to determine appropriate phase adjustments for the power waves |
| US9882430B1 (en) | 2014-05-07 | 2018-01-30 | Energous Corporation | Cluster management of transmitters in a wireless power transmission system |
| US9966765B1 (en) | 2013-06-25 | 2018-05-08 | Energous Corporation | Multi-mode transmitter |
| US9143000B2 (en) | 2012-07-06 | 2015-09-22 | Energous Corporation | Portable wireless charging pad |
| US9887584B1 (en) | 2014-08-21 | 2018-02-06 | Energous Corporation | Systems and methods for a configuration web service to provide configuration of a wireless power transmitter within a wireless power transmission system |
| US10038337B1 (en) | 2013-09-16 | 2018-07-31 | Energous Corporation | Wireless power supply for rescue devices |
| US9876394B1 (en) | 2014-05-07 | 2018-01-23 | Energous Corporation | Boost-charger-boost system for enhanced power delivery |
| US9847679B2 (en) | 2014-05-07 | 2017-12-19 | Energous Corporation | System and method for controlling communication between wireless power transmitter managers |
| US10291066B1 (en) | 2014-05-07 | 2019-05-14 | Energous Corporation | Power transmission control systems and methods |
| US9906065B2 (en) | 2012-07-06 | 2018-02-27 | Energous Corporation | Systems and methods of transmitting power transmission waves based on signals received at first and second subsets of a transmitter's antenna array |
| US10193396B1 (en) | 2014-05-07 | 2019-01-29 | Energous Corporation | Cluster management of transmitters in a wireless power transmission system |
| US9973021B2 (en) | 2012-07-06 | 2018-05-15 | Energous Corporation | Receivers for wireless power transmission |
| US10223717B1 (en) | 2014-05-23 | 2019-03-05 | Energous Corporation | Systems and methods for payment-based authorization of wireless power transmission service |
| US9859757B1 (en) | 2013-07-25 | 2018-01-02 | Energous Corporation | Antenna tile arrangements in electronic device enclosures |
| US9876648B2 (en) | 2014-08-21 | 2018-01-23 | Energous Corporation | System and method to control a wireless power transmission system by configuration of wireless power transmission control parameters |
| US9806564B2 (en) | 2014-05-07 | 2017-10-31 | Energous Corporation | Integrated rectifier and boost converter for wireless power transmission |
| US10243414B1 (en) | 2014-05-07 | 2019-03-26 | Energous Corporation | Wearable device with wireless power and payload receiver |
| US9812890B1 (en) | 2013-07-11 | 2017-11-07 | Energous Corporation | Portable wireless charging pad |
| US10063106B2 (en) | 2014-05-23 | 2018-08-28 | Energous Corporation | System and method for a self-system analysis in a wireless power transmission network |
| US10050462B1 (en) | 2013-08-06 | 2018-08-14 | Energous Corporation | Social power sharing for mobile devices based on pocket-forming |
| US10205239B1 (en) | 2014-05-07 | 2019-02-12 | Energous Corporation | Compact PIFA antenna |
| US10224982B1 (en) | 2013-07-11 | 2019-03-05 | Energous Corporation | Wireless power transmitters for transmitting wireless power and tracking whether wireless power receivers are within authorized locations |
| US9843213B2 (en) | 2013-08-06 | 2017-12-12 | Energous Corporation | Social power sharing for mobile devices based on pocket-forming |
| US9853692B1 (en) | 2014-05-23 | 2017-12-26 | Energous Corporation | Systems and methods for wireless power transmission |
| US9954374B1 (en) | 2014-05-23 | 2018-04-24 | Energous Corporation | System and method for self-system analysis for detecting a fault in a wireless power transmission Network |
| US10124754B1 (en) | 2013-07-19 | 2018-11-13 | Energous Corporation | Wireless charging and powering of electronic sensors in a vehicle |
| US20140008993A1 (en) | 2012-07-06 | 2014-01-09 | DvineWave Inc. | Methodology for pocket-forming |
| US10992187B2 (en) | 2012-07-06 | 2021-04-27 | Energous Corporation | System and methods of using electromagnetic waves to wirelessly deliver power to electronic devices |
| US10291055B1 (en) | 2014-12-29 | 2019-05-14 | Energous Corporation | Systems and methods for controlling far-field wireless power transmission based on battery power levels of a receiving device |
| US10224758B2 (en) | 2013-05-10 | 2019-03-05 | Energous Corporation | Wireless powering of electronic devices with selective delivery range |
| US10128693B2 (en) | 2014-07-14 | 2018-11-13 | Energous Corporation | System and method for providing health safety in a wireless power transmission system |
| US10256657B2 (en) | 2015-12-24 | 2019-04-09 | Energous Corporation | Antenna having coaxial structure for near field wireless power charging |
| US12057715B2 (en) | 2012-07-06 | 2024-08-06 | Energous Corporation | Systems and methods of wirelessly delivering power to a wireless-power receiver device in response to a change of orientation of the wireless-power receiver device |
| US10128699B2 (en) | 2014-07-14 | 2018-11-13 | Energous Corporation | Systems and methods of providing wireless power using receiver device sensor inputs |
| US10965164B2 (en) | 2012-07-06 | 2021-03-30 | Energous Corporation | Systems and methods of wirelessly delivering power to a receiver device |
| US10008889B2 (en) | 2014-08-21 | 2018-06-26 | Energous Corporation | Method for automatically testing the operational status of a wireless power receiver in a wireless power transmission system |
| US9252628B2 (en) | 2013-05-10 | 2016-02-02 | Energous Corporation | Laptop computer as a transmitter for wireless charging |
| US9893768B2 (en) | 2012-07-06 | 2018-02-13 | Energous Corporation | Methodology for multiple pocket-forming |
| US10199849B1 (en) | 2014-08-21 | 2019-02-05 | Energous Corporation | Method for automatically testing the operational status of a wireless power receiver in a wireless power transmission system |
| US10211674B1 (en) | 2013-06-12 | 2019-02-19 | Energous Corporation | Wireless charging using selected reflectors |
| US10141791B2 (en) | 2014-05-07 | 2018-11-27 | Energous Corporation | Systems and methods for controlling communications during wireless transmission of power using application programming interfaces |
| US10090886B1 (en) | 2014-07-14 | 2018-10-02 | Energous Corporation | System and method for enabling automatic charging schedules in a wireless power network to one or more devices |
| US9825674B1 (en) | 2014-05-23 | 2017-11-21 | Energous Corporation | Enhanced transmitter that selects configurations of antenna elements for performing wireless power transmission and receiving functions |
| US9899861B1 (en) | 2013-10-10 | 2018-02-20 | Energous Corporation | Wireless charging methods and systems for game controllers, based on pocket-forming |
| US9899873B2 (en) | 2014-05-23 | 2018-02-20 | Energous Corporation | System and method for generating a power receiver identifier in a wireless power network |
| US9941707B1 (en) | 2013-07-19 | 2018-04-10 | Energous Corporation | Home base station for multiple room coverage with multiple transmitters |
| US9831718B2 (en) | 2013-07-25 | 2017-11-28 | Energous Corporation | TV with integrated wireless power transmitter |
| US9824815B2 (en) | 2013-05-10 | 2017-11-21 | Energous Corporation | Wireless charging and powering of healthcare gadgets and sensors |
| US9368020B1 (en) | 2013-05-10 | 2016-06-14 | Energous Corporation | Off-premises alert system and method for wireless power receivers in a wireless power network |
| US10218227B2 (en) | 2014-05-07 | 2019-02-26 | Energous Corporation | Compact PIFA antenna |
| US10141768B2 (en) | 2013-06-03 | 2018-11-27 | Energous Corporation | Systems and methods for maximizing wireless power transfer efficiency by instructing a user to change a receiver device's position |
| US10075008B1 (en) | 2014-07-14 | 2018-09-11 | Energous Corporation | Systems and methods for manually adjusting when receiving electronic devices are scheduled to receive wirelessly delivered power from a wireless power transmitter in a wireless power network |
| US9859797B1 (en) | 2014-05-07 | 2018-01-02 | Energous Corporation | Synchronous rectifier design for wireless power receiver |
| US10992185B2 (en) | 2012-07-06 | 2021-04-27 | Energous Corporation | Systems and methods of using electromagnetic waves to wirelessly deliver power to game controllers |
| US10381880B2 (en) | 2014-07-21 | 2019-08-13 | Energous Corporation | Integrated antenna structure arrays for wireless power transmission |
| US9124125B2 (en) | 2013-05-10 | 2015-09-01 | Energous Corporation | Wireless power transmission with selective range |
| US9882427B2 (en) | 2013-05-10 | 2018-01-30 | Energous Corporation | Wireless power delivery using a base station to control operations of a plurality of wireless power transmitters |
| US10186913B2 (en) | 2012-07-06 | 2019-01-22 | Energous Corporation | System and methods for pocket-forming based on constructive and destructive interferences to power one or more wireless power receivers using a wireless power transmitter including a plurality of antennas |
| US9939864B1 (en) | 2014-08-21 | 2018-04-10 | Energous Corporation | System and method to control a wireless power transmission system by configuration of wireless power transmission control parameters |
| US9859756B2 (en) | 2012-07-06 | 2018-01-02 | Energous Corporation | Transmittersand methods for adjusting wireless power transmission based on information from receivers |
| US11502551B2 (en) | 2012-07-06 | 2022-11-15 | Energous Corporation | Wirelessly charging multiple wireless-power receivers using different subsets of an antenna array to focus energy at different locations |
| US9843201B1 (en) | 2012-07-06 | 2017-12-12 | Energous Corporation | Wireless power transmitter that selects antenna sets for transmitting wireless power to a receiver based on location of the receiver, and methods of use thereof |
| US10206185B2 (en) | 2013-05-10 | 2019-02-12 | Energous Corporation | System and methods for wireless power transmission to an electronic device in accordance with user-defined restrictions |
| US9787103B1 (en) | 2013-08-06 | 2017-10-10 | Energous Corporation | Systems and methods for wirelessly delivering power to electronic devices that are unable to communicate with a transmitter |
| US10211682B2 (en) | 2014-05-07 | 2019-02-19 | Energous Corporation | Systems and methods for controlling operation of a transmitter of a wireless power network based on user instructions received from an authenticated computing device powered or charged by a receiver of the wireless power network |
| US10090699B1 (en) | 2013-11-01 | 2018-10-02 | Energous Corporation | Wireless powered house |
| US9941754B2 (en) | 2012-07-06 | 2018-04-10 | Energous Corporation | Wireless power transmission with selective range |
| US9948135B2 (en) | 2015-09-22 | 2018-04-17 | Energous Corporation | Systems and methods for identifying sensitive objects in a wireless charging transmission field |
| US10270261B2 (en) | 2015-09-16 | 2019-04-23 | Energous Corporation | Systems and methods of object detection in wireless power charging systems |
| US9847677B1 (en) | 2013-10-10 | 2017-12-19 | Energous Corporation | Wireless charging and powering of healthcare gadgets and sensors |
| US10439448B2 (en) | 2014-08-21 | 2019-10-08 | Energous Corporation | Systems and methods for automatically testing the communication between wireless power transmitter and wireless power receiver |
| US9793758B2 (en) | 2014-05-23 | 2017-10-17 | Energous Corporation | Enhanced transmitter using frequency control for wireless power transmission |
| US9893554B2 (en) | 2014-07-14 | 2018-02-13 | Energous Corporation | System and method for providing health safety in a wireless power transmission system |
| US10230266B1 (en) | 2014-02-06 | 2019-03-12 | Energous Corporation | Wireless power receivers that communicate status data indicating wireless power transmission effectiveness with a transmitter using a built-in communications component of a mobile device, and methods of use thereof |
| US9941747B2 (en) | 2014-07-14 | 2018-04-10 | Energous Corporation | System and method for manually selecting and deselecting devices to charge in a wireless power network |
| US10312715B2 (en) | 2015-09-16 | 2019-06-04 | Energous Corporation | Systems and methods for wireless power charging |
| US9867062B1 (en) | 2014-07-21 | 2018-01-09 | Energous Corporation | System and methods for using a remote server to authorize a receiving device that has requested wireless power and to determine whether another receiving device should request wireless power in a wireless power transmission system |
| US10103582B2 (en) | 2012-07-06 | 2018-10-16 | Energous Corporation | Transmitters for wireless power transmission |
| US9912199B2 (en) | 2012-07-06 | 2018-03-06 | Energous Corporation | Receivers for wireless power transmission |
| US10063064B1 (en) | 2014-05-23 | 2018-08-28 | Energous Corporation | System and method for generating a power receiver identifier in a wireless power network |
| US20150326070A1 (en) | 2014-05-07 | 2015-11-12 | Energous Corporation | Methods and Systems for Maximum Power Point Transfer in Receivers |
| US10148097B1 (en) | 2013-11-08 | 2018-12-04 | Energous Corporation | Systems and methods for using a predetermined number of communication channels of a wireless power transmitter to communicate with different wireless power receivers |
| US9871398B1 (en) | 2013-07-01 | 2018-01-16 | Energous Corporation | Hybrid charging method for wireless power transmission based on pocket-forming |
| US10211680B2 (en) | 2013-07-19 | 2019-02-19 | Energous Corporation | Method for 3 dimensional pocket-forming |
| US10063105B2 (en) | 2013-07-11 | 2018-08-28 | Energous Corporation | Proximity transmitters for wireless power charging systems |
| US9438045B1 (en) | 2013-05-10 | 2016-09-06 | Energous Corporation | Methods and systems for maximum power point transfer in receivers |
| US9923386B1 (en) | 2012-07-06 | 2018-03-20 | Energous Corporation | Systems and methods for wireless power transmission by modifying a number of antenna elements used to transmit power waves to a receiver |
| US9900057B2 (en) | 2012-07-06 | 2018-02-20 | Energous Corporation | Systems and methods for assigning groups of antenas of a wireless power transmitter to different wireless power receivers, and determining effective phases to use for wirelessly transmitting power using the assigned groups of antennas |
| US9876379B1 (en) | 2013-07-11 | 2018-01-23 | Energous Corporation | Wireless charging and powering of electronic devices in a vehicle |
| US9853458B1 (en) | 2014-05-07 | 2017-12-26 | Energous Corporation | Systems and methods for device and power receiver pairing |
| US9991741B1 (en) | 2014-07-14 | 2018-06-05 | Energous Corporation | System for tracking and reporting status and usage information in a wireless power management system |
| US9893555B1 (en) | 2013-10-10 | 2018-02-13 | Energous Corporation | Wireless charging of tools using a toolbox transmitter |
| US10199835B2 (en) | 2015-12-29 | 2019-02-05 | Energous Corporation | Radar motion detection using stepped frequency in wireless power transmission system |
| US9373074B2 (en) * | 2012-10-09 | 2016-06-21 | Qualcomm Incorporated | Method and apparatus for time management and scheduling for sychronous processing on a cluster of processing nodes |
| US9537357B2 (en) | 2013-05-10 | 2017-01-03 | Energous Corporation | Wireless sound charging methods and systems for game controllers, based on pocket-forming |
| US9819230B2 (en) | 2014-05-07 | 2017-11-14 | Energous Corporation | Enhanced receiver for wireless power transmission |
| US9419443B2 (en) | 2013-05-10 | 2016-08-16 | Energous Corporation | Transducer sound arrangement for pocket-forming |
| US9538382B2 (en) | 2013-05-10 | 2017-01-03 | Energous Corporation | System and method for smart registration of wireless power receivers in a wireless power network |
| US9866279B2 (en) | 2013-05-10 | 2018-01-09 | Energous Corporation | Systems and methods for selecting which power transmitter should deliver wireless power to a receiving device in a wireless power delivery network |
| US10103552B1 (en) | 2013-06-03 | 2018-10-16 | Energous Corporation | Protocols for authenticated wireless power transmission |
| US10003211B1 (en) | 2013-06-17 | 2018-06-19 | Energous Corporation | Battery life of portable electronic devices |
| US10021523B2 (en) | 2013-07-11 | 2018-07-10 | Energous Corporation | Proximity transmitters for wireless power charging systems |
| US9979440B1 (en) | 2013-07-25 | 2018-05-22 | Energous Corporation | Antenna tile arrangements configured to operate as one functional unit |
| US10075017B2 (en) | 2014-02-06 | 2018-09-11 | Energous Corporation | External or internal wireless power receiver with spaced-apart antenna elements for charging or powering mobile devices using wirelessly delivered power |
| US9935482B1 (en) | 2014-02-06 | 2018-04-03 | Energous Corporation | Wireless power transmitters that transmit at determined times based on power availability and consumption at a receiving mobile device |
| US9966784B2 (en) | 2014-06-03 | 2018-05-08 | Energous Corporation | Systems and methods for extending battery life of portable electronic devices charged by sound |
| US10158257B2 (en) | 2014-05-01 | 2018-12-18 | Energous Corporation | System and methods for using sound waves to wirelessly deliver power to electronic devices |
| US10153645B1 (en) | 2014-05-07 | 2018-12-11 | Energous Corporation | Systems and methods for designating a master power transmitter in a cluster of wireless power transmitters |
| US10170917B1 (en) | 2014-05-07 | 2019-01-01 | Energous Corporation | Systems and methods for managing and controlling a wireless power network by establishing time intervals during which receivers communicate with a transmitter |
| US9800172B1 (en) | 2014-05-07 | 2017-10-24 | Energous Corporation | Integrated rectifier and boost converter for boosting voltage received from wireless power transmission waves |
| US10153653B1 (en) | 2014-05-07 | 2018-12-11 | Energous Corporation | Systems and methods for using application programming interfaces to control communications between a transmitter and a receiver |
| US9973008B1 (en) | 2014-05-07 | 2018-05-15 | Energous Corporation | Wireless power receiver with boost converters directly coupled to a storage element |
| US9876536B1 (en) | 2014-05-23 | 2018-01-23 | Energous Corporation | Systems and methods for assigning groups of antennas to transmit wireless power to different wireless power receivers |
| US9465645B1 (en) * | 2014-06-25 | 2016-10-11 | Amazon Technologies, Inc. | Managing backlogged tasks |
| US9871301B2 (en) | 2014-07-21 | 2018-01-16 | Energous Corporation | Integrated miniature PIFA with artificial magnetic conductor metamaterials |
| US10116143B1 (en) | 2014-07-21 | 2018-10-30 | Energous Corporation | Integrated antenna arrays for wireless power transmission |
| US10068703B1 (en) | 2014-07-21 | 2018-09-04 | Energous Corporation | Integrated miniature PIFA with artificial magnetic conductor metamaterials |
| US9917477B1 (en) | 2014-08-21 | 2018-03-13 | Energous Corporation | Systems and methods for automatically testing the communication between power transmitter and wireless receiver |
| US9965009B1 (en) | 2014-08-21 | 2018-05-08 | Energous Corporation | Systems and methods for assigning a power receiver to individual power transmitters based on location of the power receiver |
| US10366358B1 (en) | 2014-12-19 | 2019-07-30 | Amazon Technologies, Inc. | Backlogged computing work exchange |
| US10122415B2 (en) | 2014-12-27 | 2018-11-06 | Energous Corporation | Systems and methods for assigning a set of antennas of a wireless power transmitter to a wireless power receiver based on a location of the wireless power receiver |
| US9893535B2 (en) | 2015-02-13 | 2018-02-13 | Energous Corporation | Systems and methods for determining optimal charging positions to maximize efficiency of power received from wirelessly delivered sound wave energy |
| US12283828B2 (en) | 2015-09-15 | 2025-04-22 | Energous Corporation | Receiver devices configured to determine location within a transmission field |
| US10523033B2 (en) | 2015-09-15 | 2019-12-31 | Energous Corporation | Receiver devices configured to determine location within a transmission field |
| US9906275B2 (en) | 2015-09-15 | 2018-02-27 | Energous Corporation | Identifying receivers in a wireless charging transmission field |
| US10778041B2 (en) | 2015-09-16 | 2020-09-15 | Energous Corporation | Systems and methods for generating power waves in a wireless power transmission system |
| US9871387B1 (en) | 2015-09-16 | 2018-01-16 | Energous Corporation | Systems and methods of object detection using one or more video cameras in wireless power charging systems |
| US11710321B2 (en) | 2015-09-16 | 2023-07-25 | Energous Corporation | Systems and methods of object detection in wireless power charging systems |
| US10211685B2 (en) | 2015-09-16 | 2019-02-19 | Energous Corporation | Systems and methods for real or near real time wireless communications between a wireless power transmitter and a wireless power receiver |
| US10186893B2 (en) | 2015-09-16 | 2019-01-22 | Energous Corporation | Systems and methods for real time or near real time wireless communications between a wireless power transmitter and a wireless power receiver |
| US10199850B2 (en) | 2015-09-16 | 2019-02-05 | Energous Corporation | Systems and methods for wirelessly transmitting power from a transmitter to a receiver by determining refined locations of the receiver in a segmented transmission field associated with the transmitter |
| US9941752B2 (en) | 2015-09-16 | 2018-04-10 | Energous Corporation | Systems and methods of object detection in wireless power charging systems |
| US10158259B1 (en) | 2015-09-16 | 2018-12-18 | Energous Corporation | Systems and methods for identifying receivers in a transmission field by transmitting exploratory power waves towards different segments of a transmission field |
| US10008875B1 (en) | 2015-09-16 | 2018-06-26 | Energous Corporation | Wireless power transmitter configured to transmit power waves to a predicted location of a moving wireless power receiver |
| US9893538B1 (en) | 2015-09-16 | 2018-02-13 | Energous Corporation | Systems and methods of object detection in wireless power charging systems |
| US10135295B2 (en) | 2015-09-22 | 2018-11-20 | Energous Corporation | Systems and methods for nullifying energy levels for wireless power transmission waves |
| US10027168B2 (en) | 2015-09-22 | 2018-07-17 | Energous Corporation | Systems and methods for generating and transmitting wireless power transmission waves using antennas having a spacing that is selected by the transmitter |
| US10050470B1 (en) | 2015-09-22 | 2018-08-14 | Energous Corporation | Wireless power transmission device having antennas oriented in three dimensions |
| US10033222B1 (en) | 2015-09-22 | 2018-07-24 | Energous Corporation | Systems and methods for determining and generating a waveform for wireless power transmission waves |
| US10153660B1 (en) | 2015-09-22 | 2018-12-11 | Energous Corporation | Systems and methods for preconfiguring sensor data for wireless charging systems |
| US10135294B1 (en) | 2015-09-22 | 2018-11-20 | Energous Corporation | Systems and methods for preconfiguring transmission devices for power wave transmissions based on location data of one or more receivers |
| US10128686B1 (en) | 2015-09-22 | 2018-11-13 | Energous Corporation | Systems and methods for identifying receiver locations using sensor technologies |
| US10020678B1 (en) | 2015-09-22 | 2018-07-10 | Energous Corporation | Systems and methods for selecting antennas to generate and transmit power transmission waves |
| US10734717B2 (en) | 2015-10-13 | 2020-08-04 | Energous Corporation | 3D ceramic mold antenna |
| US10333332B1 (en) | 2015-10-13 | 2019-06-25 | Energous Corporation | Cross-polarized dipole antenna |
| US9853485B2 (en) | 2015-10-28 | 2017-12-26 | Energous Corporation | Antenna for wireless charging systems |
| US9899744B1 (en) | 2015-10-28 | 2018-02-20 | Energous Corporation | Antenna for wireless charging systems |
| US10027180B1 (en) | 2015-11-02 | 2018-07-17 | Energous Corporation | 3D triple linear antenna that acts as heat sink |
| US10063108B1 (en) | 2015-11-02 | 2018-08-28 | Energous Corporation | Stamped three-dimensional antenna |
| US10135112B1 (en) | 2015-11-02 | 2018-11-20 | Energous Corporation | 3D antenna mount |
| US11863001B2 (en) | 2015-12-24 | 2024-01-02 | Energous Corporation | Near-field antenna for wireless power transmission with antenna elements that follow meandering patterns |
| US10038332B1 (en) | 2015-12-24 | 2018-07-31 | Energous Corporation | Systems and methods of wireless power charging through multiple receiving devices |
| US10320446B2 (en) | 2015-12-24 | 2019-06-11 | Energous Corporation | Miniaturized highly-efficient designs for near-field power transfer system |
| US10277054B2 (en) | 2015-12-24 | 2019-04-30 | Energous Corporation | Near-field charging pad for wireless power charging of a receiver device that is temporarily unable to communicate |
| US10079515B2 (en) | 2016-12-12 | 2018-09-18 | Energous Corporation | Near-field RF charging pad with multi-band antenna element with adaptive loading to efficiently charge an electronic device at any position on the pad |
| US10256677B2 (en) | 2016-12-12 | 2019-04-09 | Energous Corporation | Near-field RF charging pad with adaptive loading to efficiently charge an electronic device at any position on the pad |
| US10027159B2 (en) | 2015-12-24 | 2018-07-17 | Energous Corporation | Antenna for transmitting wireless power signals |
| US10263476B2 (en) | 2015-12-29 | 2019-04-16 | Energous Corporation | Transmitter board allowing for modular antenna configurations in wireless power transmission systems |
| WO2017117277A1 (en) * | 2015-12-30 | 2017-07-06 | Energous Corporation | Systems and methods for real time or near real time wireless communications between electronic devices |
| US10923954B2 (en) | 2016-11-03 | 2021-02-16 | Energous Corporation | Wireless power receiver with a synchronous rectifier |
| JP6691273B2 (ja) | 2016-12-12 | 2020-04-28 | エナージャス コーポレイション | 配送される無線電力を最大化するために近接場充電パッドのアンテナ区域を選択的に活性化する方法 |
| US10389161B2 (en) | 2017-03-15 | 2019-08-20 | Energous Corporation | Surface mount dielectric antennas for wireless power transmitters |
| US10439442B2 (en) | 2017-01-24 | 2019-10-08 | Energous Corporation | Microstrip antennas for wireless power transmitters |
| US10680319B2 (en) | 2017-01-06 | 2020-06-09 | Energous Corporation | Devices and methods for reducing mutual coupling effects in wireless power transmission systems |
| WO2018183892A1 (en) | 2017-03-30 | 2018-10-04 | Energous Corporation | Flat antennas having two or more resonant frequencies for use in wireless power transmission systems |
| US10511097B2 (en) | 2017-05-12 | 2019-12-17 | Energous Corporation | Near-field antennas for accumulating energy at a near-field distance with minimal far-field gain |
| US12074460B2 (en) | 2017-05-16 | 2024-08-27 | Wireless Electrical Grid Lan, Wigl Inc. | Rechargeable wireless power bank and method of using |
| US11462949B2 (en) | 2017-05-16 | 2022-10-04 | Wireless electrical Grid LAN, WiGL Inc | Wireless charging method and system |
| US12074452B2 (en) | 2017-05-16 | 2024-08-27 | Wireless Electrical Grid Lan, Wigl Inc. | Networked wireless charging system |
| US10848853B2 (en) | 2017-06-23 | 2020-11-24 | Energous Corporation | Systems, methods, and devices for utilizing a wire of a sound-producing device as an antenna for receipt of wirelessly delivered power |
| US10122219B1 (en) | 2017-10-10 | 2018-11-06 | Energous Corporation | Systems, methods, and devices for using a battery as a antenna for receiving wirelessly delivered power from radio frequency power waves |
| US11342798B2 (en) | 2017-10-30 | 2022-05-24 | Energous Corporation | Systems and methods for managing coexistence of wireless-power signals and data signals operating in a same frequency band |
| US10949414B2 (en) | 2017-10-31 | 2021-03-16 | Ab Initio Technology Llc | Managing a computing cluster interface |
| US10615647B2 (en) | 2018-02-02 | 2020-04-07 | Energous Corporation | Systems and methods for detecting wireless power receivers and other objects at a near-field charging pad |
| US11159057B2 (en) | 2018-03-14 | 2021-10-26 | Energous Corporation | Loop antennas with selectively-activated feeds to control propagation patterns of wireless power signals |
| US11515732B2 (en) | 2018-06-25 | 2022-11-29 | Energous Corporation | Power wave transmission techniques to focus wirelessly delivered power at a receiving device |
| US11437735B2 (en) | 2018-11-14 | 2022-09-06 | Energous Corporation | Systems for receiving electromagnetic energy using antennas that are minimally affected by the presence of the human body |
| KR20210117283A (ko) | 2019-01-28 | 2021-09-28 | 에너저스 코포레이션 | 무선 전력 전송을 위한 소형 안테나에 대한 시스템들 및 방법들 |
| JP2022519749A (ja) | 2019-02-06 | 2022-03-24 | エナージャス コーポレイション | アンテナアレイ内の個々のアンテナに使用するための最適位相を推定するシステム及び方法 |
| KR102756802B1 (ko) | 2019-07-11 | 2025-01-20 | 삼성전자주식회사 | 멀티-코어 시스템 및 그 동작 제어 방법 |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5559710A (en) * | 1993-02-05 | 1996-09-24 | Siemens Corporate Research, Inc. | Apparatus for control and evaluation of pending jobs in a factory |
| JPH0877029A (ja) | 1994-09-09 | 1996-03-22 | Hitachi Ltd | 負荷率に基づいた処理要求実行順序制御方式 |
| JPH08137910A (ja) | 1994-11-15 | 1996-05-31 | Hitachi Ltd | 並列データベース処理方法及びその実施装置 |
| JPH10240698A (ja) | 1997-02-24 | 1998-09-11 | Nec Corp | 高負荷ジョブ負荷分散方式 |
| JP3730740B2 (ja) * | 1997-02-24 | 2006-01-05 | 株式会社日立製作所 | 並列ジョブ多重スケジューリング方法 |
| US6618820B1 (en) * | 2000-01-10 | 2003-09-09 | Imagex.Com, Inc. | Method for configuring an application server system |
| WO2001081829A1 (en) * | 2000-04-27 | 2001-11-01 | Brio Technology, Inc. | Method and apparatus for processing jobs on an enterprise-wide computer system |
-
2002
- 2002-07-23 JP JP2002213341A patent/JP4133068B2/ja not_active Expired - Fee Related
-
2003
- 2003-01-14 US US10/341,505 patent/US7293092B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2004054727A (ja) | 2004-02-19 |
| US7293092B2 (en) | 2007-11-06 |
| US20040019624A1 (en) | 2004-01-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4133068B2 (ja) | 計算機システム | |
| US10817444B2 (en) | Sending data from an arrangement of processor modules | |
| US10949266B2 (en) | Synchronization and exchange of data between processors | |
| US10705999B1 (en) | Exchange of data between processor modules | |
| US20190121680A1 (en) | Synchronization with a host processor | |
| US20190236150A1 (en) | Migration flow control | |
| CN106776272B (zh) | 嵌入式系统实时性能测试方法 | |
| CN104615488A (zh) | 异构多核可重构计算平台上任务调度的方法和装置 | |
| CN107454017B (zh) | 一种云数据中心网络中混合数据流协同调度方法 | |
| Krueger et al. | An adaptive load balancing algorithm for a multicomputer | |
| JP6280237B2 (ja) | 計算機システム及びデータ処理方法 | |
| Hać et al. | Dynamic load balancing in a distributed system using a sender-initiated algorithm | |
| Li et al. | Co-Scheduler: A coflow-aware data-parallel job scheduler in hybrid electrical/optical datacenter networks | |
| CN109298932B (zh) | 基于OpenFlow的资源调度方法、调度器及系统 | |
| Atar et al. | Replicate to the shortest queues | |
| JP4292705B2 (ja) | タスクスケジューリング装置 | |
| Jajoo et al. | Saath: Speeding up coflows by exploiting the spatial dimension | |
| CN118796383A (zh) | 基于rpa节点池的调度方法及装置 | |
| CN118349336A (zh) | 云计算平台中任务处理的方法、装置、设备、介质及产品 | |
| CN114925935B (zh) | 云边环境下时延约束的多工作流调度方法 | |
| Zhang et al. | Towards stable flow scheduling in data centers | |
| Tang et al. | A deadline-aware coflow scheduling approach for big data applications | |
| CN115202560A (zh) | 用于管理存储系统的方法、设备和计算机程序产品 | |
| Feng et al. | Dispatching and Scheduling Dependent Tasks Based on Multi-agent Deep Reinforcement Learning. | |
| CN114827142B (zh) | 一种确保容器化边缘服务请求实时性的调度方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050309 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070410 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070607 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070911 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071109 |
|
| 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: 20080507 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080602 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110606 Year of fee payment: 3 |
|
| 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: 20110606 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120606 Year of fee payment: 4 |
|
| LAPS | Cancellation because of no payment of annual fees |