JP5211778B2 - ジョブ割当装置、並列計算機システム、ジョブ割当方法、及び、ジョブ割当プログラム - Google Patents

ジョブ割当装置、並列計算機システム、ジョブ割当方法、及び、ジョブ割当プログラム Download PDF

Info

Publication number
JP5211778B2
JP5211778B2 JP2008067714A JP2008067714A JP5211778B2 JP 5211778 B2 JP5211778 B2 JP 5211778B2 JP 2008067714 A JP2008067714 A JP 2008067714A JP 2008067714 A JP2008067714 A JP 2008067714A JP 5211778 B2 JP5211778 B2 JP 5211778B2
Authority
JP
Japan
Prior art keywords
job
node
calculation
power saving
saving mode
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
JP2008067714A
Other languages
English (en)
Other versions
JP2009223637A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008067714A priority Critical patent/JP5211778B2/ja
Priority to US12/405,441 priority patent/US9075658B2/en
Publication of JP2009223637A publication Critical patent/JP2009223637A/ja
Application granted granted Critical
Publication of JP5211778B2 publication Critical patent/JP5211778B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Description

本発明は、複数の計算ノードにジョブを割り当てるための装置、方法、及び、プログラムに、関する。
事務的な計算や研究的な計算処理を並列且つ高速に行うため、CPU[Central Processing Unit]を1個ずつ含む複数の計算ノードを筐体内に備えた情報処理装置がある。そ
の情報処理装置では、操作者が投入したジョブは、待ち行列に蓄えられるようになっており、ジョブは、その待ち行列から1つずつ取り出され、未使用の計算ノードに割り当てられて、実行されるようになっている。
ところで、CPU自体の温度が高くなると、CPUの故障率が上がり、消費電力も上がる。このため、CPUの中には、自身を保護するための過熱防止機能を有するものがある。その過熱防止機能によると、CPUは、自身の温度が高くなると、動作モードを通常モードから省電力モードに移行させ、クロック数やパイプライン数を減らして、電力消費量を最低限に抑え、自己の冷却を図る。前述した情報処理装置内の各計算ノードは、このような過熱防止機能を有するCPUを含んだものとすることもできる。
ところが、ジョブが未使用の計算ノードに単純に割り当てられるようになっていると、情報処理装置内の全ての計算ノードのCPUが前述の過熱防止機能を有している場合に、特定の計算ノードにジョブが集中して、その計算ノードのCPUの温度が高くなってしまうことがある。そのような計算ノードでは、CPUが省電力モードに移行する頻度が高くなる虞があるため、情報処理装置全体について見ると、CPUの有する過熱防止機能が原因となって、実行効率が低下する可能性がある。
なお、情報処理装置の筐体内では、一般的に、下側よりも上側の方が熱が籠もるため、上側に設置された計算ノードほど、そのCPUが省電力モードに移行する頻度が高くなる可能性が高い。そこで、このような筐体内の温度分布を見越して、ファンや空調機などの冷却手段を適宜配置することにより、筐体内の下側より上側を強めに冷却することが考えられる。
しかしながら、近年の90nm又は65nmのプロセスルール(製造プロセスとも称し、集積回路の配線の細さのこと)により製造されるCPUには、電気的な構造上、熱くなりやすいものと熱くなりにくいものとがあることが知られており、単純に筐体の上側を強めに冷却するだけでは、情報処理装置の実行効率の低下が抑えきれないことが予想される。
このようなことから、従来の情報処理装置において、全ての計算ノードのCPUを省電力モードに移行させないようにするためには、結局のところ、筐体内を必要以上に冷却するしかなかった。なお、CPUの冷却コストはCPUの実装密度の高さに応じて指数的に増大する傾向があり、情報処理装置におけるCPUの実装密度が高い場合には、冷却能力に少しの余裕を持たせただけで、情報処理装置全体の冷却に係る費用が急激に増大してしまう。
特開2007−179437号公報 特開2005−316764号公報 特開2005−115956号公報
本発明は、前述したような従来技術の有する問題点に鑑みてなされたものであり、その課題は、情報処理装置内の全ての計算ノードに含まれるCPUの何れもが過熱防止機能を有していても、情報処理装置全体の実行効率があまり低下されないようにすることにある。
前述した課題を解決するために案出されたジョブ割当装置は、電力消費量を低減する省電力モードへ移行する過熱防止機能を有するCPUを含む複数の計算ノードに対し、ジョブを割り当てるため、新規ジョブの投入があると、ジョブが割り当てられていない計算ノードそれぞれの省電力モード移行率を算出する第1の算出部、その第1の算出部が算出した省電力モード移行率が低い計算ノードを、新規ジョブの割当対象として特定する特定部、その特定部が特定した計算ノードに新規ジョブを割り当てる割当部を備えることを、特徴としている。
このように構成されると、新規ジョブは、ジョブが割り当てられておらず且つ省電力モード移行率が低い計算ノードに対し、割り当てられることとなる。言い換えると、省電力モードへ移行する頻度が高い計算ノードには、ジョブがあまり割り当てられなくなるため、そのような計算ノードにジョブが集中することがなく、そのような計算ノードのCPUの温度が高くなる可能性が減ることとなる。
なお、前述したジョブ割当装置では、ジョブが割り当てられている計算ノードの中に、省電力モード移行率が高い計算ノードが存在していた場合に、その計算ノードに割り当てられているジョブが、ジョブが割り当てられておらず且つ省電力モード移行率が低い計算ノードに、移し替えられるようになっていても良い。
このように構成されると、新規ジョブだけでなく、既に計算ノードに割り当てられているジョブでさえも、省電力モード移行率の低い計算ノードに割り当てられることとなるため、省電力モードへ移行する頻度が高い計算ノードのCPUの温度が高くなる可能性が減ることとなる。
なお、以上に開示したジョブ割当装置に係る動作は、ジョブ割当方法又はジョブ割当プログラムによっても実現し得る。すなわち、本発明は、前述したジョブ割当装置の各部と同等の機能を複数の手順としてコンピュータが実行するジョブ割当方法であってもよいし、それら各部と同等に機能する複数の手段としてコンピュータを動作させるジョブ割当プログラムであってもよい。
従って、開示のジョブ割当装置によれば、情報処理装置内の全ての計算ノードに含まれるCPUの何れもが過熱防止機能を有していても、情報処理装置全体の実行効率があまり低下しなくなる。
以下、添付図面を参照しながら、本発明を実施するための形態として、事務的な計算や研究的な計算処理を並列且つ高速に行うための分散メモリ型並列計算システムを、三例説明する。
実施形態1
<<構成>>
図1は、第1の実施形態の分散メモリ型並列計算システムの構成図である。
図1に示すように、第1の実施形態の分散メモリ型並列計算システムは、16個の計算ノード10と、1個の管理ノード20とを、備えている。各計算ノード10は、4×4マトリックスの形態でメッシュ接続され、互いに通信自在となっている。また、各計算ノード10とも、管理ノード20に通信自在に接続されている。なお、計算ノード10の個数は、第1の実施形態の説明のために16個としただけで、第1の実施形態の効果が16個のときのみ得られるというものではない。実際には、計算ノードの個数が16個より多くても少なくても良い。
計算ノード10は、何れも、ジョブを実行するためのコンピュータである。なお、図1では、各計算ノード10には、01番乃至16番のうちの何れかが指標として付されている。これら指標は、計算ノード10を特定するための一意な識別情報である。一方、管理ノード20は、操作者からのジョブ投入の受け付け、ジョブの待ち行列への登録、ジョブの計算ノード10への割り当て、及び、各計算ノード10でのジョブの実行結果の出力を、行うためのコンピュータである。
図2は、計算ノード10の構成図である。
図2に示すように、計算ノード10は、少なくとも、ネットワークインターフェースユニット10a、ストレージユニット10b、CPU[Central Processing Unit]10c
と、メモリユニット10dを、備えている。
ネットワークインターフェースユニット10aは、他の計算ノード10又は管理ノード20のネットワークインターフェースユニットとデータの遣り取りを行うためのユニットである。このネットワークインターフェースユニット10aとしては、例えば、イーサネット(米国ゼロックス社の商標)ユニットがある。
ストレージユニット10bは、各種のプログラムやデータを記録しておくためのユニットである。CPU10cは、ストレージユニット10b内のプログラムに従って処理を行うためのユニットである。メモリユニット10dは、CPU10cがプログラムやデータをキャッシュしたり作業領域を展開したりするためのユニットである。
なお、第1の実施形態において、計算ノード10を構成するCPU10cは、何れも、消費電力抑制機能と過熱防止機能とを、備えたものとなっている。これら2個の機能は、CPU10cが3種類の動作モードの中から自主的に1種類の動作モードを選択することによって、実現される。3種類の動作モードには、通常モード、待機モード、及び、省電力モードがある。通常モードは、消費電力量を考慮せずにクロック数やパイプライン数を最大限利用する動作モードである。待機モードと省電力モードは、クロック数やパイプライン数を減らして電力消費量を最低限に抑える動作モードである。CPU10cは、動作モードの種類を特定する動作モード情報が記録される固有レジスタを内蔵しており、その固有レジスタ内の動作モード情報にて特定される種類の動作モードで動作するようになっている。従って、固有レジスタ内の動作モード情報が更新されることにより、動作モードの切り替えが実現される。
また、CPU10cは、入出力の有無を監視する入出力監視回路を内蔵している。固有レジスタ内の動作モード情報が通常モードを示すものである場合において、その入出力監視回路が入出力が一定期間無かったことを検出してハードウエア割り込みを発生させたときには、CPU10cは、そのハードウエア割り込みに対応する割り込みハンドラに従っ
て、固有レジスタ内の動作モード情報を、待機モードを特定する動作モード情報に書き換えるようになっている。また、固有レジスタ内の動作モード情報が待機モードを示すものである場合において、入出力監視回路が何らかの入出力を検出してハードウエア割り込みを発生させたときには、CPU10cは、そのハードウエア割り込みに対応する割り込みハンドラに従って、固有レジスタ内の動作モード情報を、通常モードを特定する動作モード情報に書き換えるようになっている。
また、CPU10cは、自身の温度を監視する温度監視回路を内蔵している。その温度監視回路がCPU10cの温度が所定の上限値を上回ったことを検出してハードウエア割り込みを発生させると、CPU10cは、そのハードウエア割り込みに対応する割り込みハンドラに従って、固有レジスタ内の動作モード情報を、省電力モードを特定する動作モード情報に書き換えるようになっている。また、温度監視回路がCPU10cの温度が所定の下限値を下回ったことを検出してハードウエア割り込みを発生させたときには、CPU10cは、そのハードウエア割り込みに対応する割り込みハンドラに従って、固有レジスタ内の動作モード情報を、通常モードを特定する動作モード情報に書き換えるようになっている。
計算ノード10は、図示していないが、ストレージユニット10bに、通信インターフェースプログラムを記憶している。通信インターフェースプログラムは、他の計算ノード10又は管理ノード20の通信インターフェースプログラムとデータの遣り取りを行うためのプログラムである。この通信インターフェースプログラムとしては、例えば、TCP/IP[Transmission Control Protocol/Internet Protocol]スタック、及び、MPI
[Message Passing Interface]がある。
また、計算ノード10は、ストレージユニット10bに、第1のイベント管理プログラム11を記憶している。第1のイベント管理プログラム11は、計算ノード10において発生するイベントを監視し、イベントに応じた処理を実行するためのプログラムである。この第1のイベント管理プログラム11に従ってCPU10cが実行する第1のイベント管理処理の内容については、図6乃至図9を用いて後述する。
図3は、管理ノード20の構成図である。
図3に示すように、管理ノード20は、液晶ディスプレイ等の表示ユニット20aと、キーボードやマウス等の入力ユニット20bと、これらユニット20a、20bが接続された本体とからなる。本体は、少なくとも、ネットワークインターフェースユニット20c、ストレージユニット20d、CPU20e、及び、メモリユニット20fを、内蔵している。本体内の各ユニット20c〜20fは、計算ノード10の各ユニット10a〜10dと同等の機能を発揮するユニットである。
管理ノード20も、図示していないが、ストレージユニット20dに、計算ノード10の通信インターフェースプログラムとデータの遣り取りを行うための通信インターフェースプログラムを、記憶している。
また、管理ノード20は、ストレージユニット20dに、距離定義テーブル21を記憶している。距離定義テーブル21は、全ての計算ノード10から2個の計算ノード10を抽出する場合における全ての組み合わせについて、計算ノード10同士の最短経路の距離数が定義されたテーブルである。ここで、距離数とは、或る計算ノード10とその隣の計算ノード10との間を1ホップとしたときにおいて、或る計算ノード10から目的の計算ノード10まで最短経路で移動するときのホップ数を言う。図1の例について言えば、指標が06番の計算ノード10から指標が15番の計算ノード10までは、10番と14番
の計算ノード10を経由する経路、又は、07番と11番の計算ノード10を経由する経路が、最短経路となる。このとき、ホップ数は、3となる。
図4は、距離定義テーブル21を模式的に示す図である。
図4に示すように、距離定義テーブル21は、16×16のマトリックステーブルとなっている。距離定義テーブル21の各セルには、そのセルの位置によって特定される2個の計算ノード10の間の最短経路の距離数が、格納されている。但し、2個1組の計算ノード10について指標が互いに異なる場合、その組の計算ノード10を特定するセルは、2個存在する。このため、一方のセルにその距離数が格納され、もう一方のセルは、空欄となっている。また、2個1組の計算ノード10について互いの指標が同一である場合、その組の計算ノード10を特定するセルも、空欄となっている。なお、図4の距離定義テーブル21では、距離数は、ホップ数に10を乗算した値となっている。
また、図3に示すように、管理ノード20は、ストレージユニット20dに、計算ノード管理テーブル22を記憶している。計算ノード管理テーブル22は、各計算ノード10の実行状態と動作モード毎の累積動作時間とを記録しておくためのテーブルである。
図5は、計算ノード管理テーブル22を模式的に示す図である。
図5に示すように、計算ノード管理テーブル22は、分散メモリ型並列計算システム内の計算ノード10と同数のレコードを、有している。各レコードは、「計算ノード」、「実行中」、「待機」、「通常」及び「省電力」の各フィールドを、有している。「計算ノード」フィールドは、その計算ノード10の識別情報が記録されるフィールドである。「実行中」フィールドは、その計算ノード10がジョブを実行しているか否かを示す実行中フラグが記録されるフィールドである。なお、実行中フラグは、「オン」の状態にあるときに、ジョブが実行中であることを示している。「待機」フィールドは、その計算ノード10の待機モードでの累積動作時間が例えば秒数で記録されるフィールドである。「通常」フィールドは、その計算ノード10の通常モードでの累積動作時間が例えば秒数で記録されるフィールドである。「省電力」フィールドは、その計算ノード10の省電力モードでの累積動作時間が例えば秒数で記録されるフィールドである。
また、図3に示すように、管理ノード20は、ストレージユニット20dに、第2のイベント管理プログラム23を記憶している。第2のイベント管理プログラム23は、管理ノード20において発生するイベントを監視し、イベントに応じた処理を実行するためのプログラムである。この第2のイベント管理プログラム23に従ってCPU20eが実行する第2のイベント管理処理の内容については、図10乃至図12を用いて後述する。
<<処理>>
各計算ノード10では、主電源が投入されると、CPU10cが、ストレージユニット10bから第1のイベント管理プログラム11を読み出し、第1のイベント管理処理を開始するようになっている。また、管理ノード20でも、主電源が投入されると、CPU20eが、ストレージユニット20dから第2のイベント管理プログラム23を読み出し、第2のイベント管理処理を開始するようになっている。
なお、第1のイベント管理処理と第2のイベント管理処理とは、各ステップが互いに連携するよう、構成されている。このため、これら第1及び第2のイベント管理処理についての説明は、並行して進める。
図6は、計算ノード10側の第1のイベント管理処理の流れを示す図である。また、図
10は、管理ノード20側の第2のイベント管理処理の流れを示す図である。
<動作モード確認>
計算ノード10側の第1のイベント管理処理(図6)の開始後、最初のステップS101では、CPU10cは、何らかのイベントが発生するまで待機する。そして、何らかのイベントが発生すると、CPU10cは、ステップS102へ処理を進める。
ステップS102では、CPU10cは、ステップS101で検出したイベントが動作モード通知イベントであるか否かを、判別する。なお、動作モード通知イベントは、図示せぬ所定のプログラム又はハードウエアが定期的(例えば10秒ごと)に発生させる割り込みのイベントである。そして、ステップS101で検出したイベントが動作モード通知イベントであった場合、CPU10cは、ステップS102からステップS103へ処理を分岐させる。
ステップS103では、CPU10cは、動作モード情報送信サブルーチンを実行する。
図7は、動作モード通知サブルーチンの流れを示す図である。
動作モード通知サブルーチンの開始後、最初のステップS111において、CPU10cは、内部の固有レジスタから、動作モードの種類を特定する動作モード情報を読み出す。
次のステップS112では、CPU10cは、ステップS111で読み出した動作モード情報と、自己の識別情報とを、管理ノード20へ送信する。送信後、CPU10cは、図7に係る動作モード通知サブルーチンを終了し、図6のステップS101に処理を戻して、何らかのイベントが発生するまで待機する状態に戻る。
これに対し、管理ノード20側の第2のイベント管理処理(図10)の開始後、最初のステップS201において、CPU20eは、図4に示す距離定義テーブル21を生成する。この生成方法の説明は省略する。CPU20eは、距離定義テーブル21を生成すると、ステップS202へ処理を進める。
ステップS202では、CPU20eは、何らかのイベントが発生するまで待機する。そして、何らかのイベントが発生すると、CPU20eは、ステップS203へ処理を進める。
ステップS203では、CPU20eは、ステップS202で検出したイベントが動作モード承知イベントであるか否かを、判別する。なお、この動作モード承知イベントは、図7のステップS112で送信された動作モード情報と識別情報とを何れかの計算ノード10から受信することによって発生する割り込みのイベントである。そして、ステップS202で検出したイベントが動作モード承知イベントであった場合、CPU20eは、ステップS203からステップS204へ処理を分岐させる。
ステップS204では、CPU20eは、累積動作時間更新サブルーチンを実行する。
図11は、累積動作時間更新サブルーチンの流れを示す図である。
累積動作時間更新サブルーチンの開始後、最初のステップS211では、CPU20eは、図5の計算ノード管理テーブル22の中から、計算ノード10から受信した識別情報
を持つレコードを特定する。
次のステップS212では、CPU20eは、ステップS211で特定したレコードの中から、計算ノード10から受信した動作モード情報に対応するフィールドを特定する。
次のステップS213では、CPU20eは、ステップS212で特定したフィールドの値に所定量加算することによって、累積動作時間を更新する。ここで、所定量は、各計算ノード10において動作モード情報送信イベントが発生する時間間隔の秒数と同じ値となっている(前述の例で言えば10秒)。つまり、管理ノード20は、各計算ノード10について、動作モード情報を受信した時点からこの時間間隔だけ遡った時点までの期間、その受信した動作モード情報にて特定される種類の動作モードで動作していたと、推定することとなる。CPU20eは、このようにして累積動作時間を更新した後、図11の累積動作時間更新サブルーチンを終了して、図10のステップS202へ処理を戻し、何らかのイベントが発生するまで待機する状態に戻る。
一方、ステップS203において、ステップS202で検出したイベントが動作モード承知イベントでなかった場合、CPU20eは、ステップS205へ処理を進める。
<ジョブ割当>
ステップS205では、CPU20eは、ステップS202で検出したイベントがジョブ割当イベントであるか否かを、判別する。なお、操作者が入力ユニット20bと図示せぬアプリケーションとを通じて投入したジョブは、図示せぬ待ち行列に蓄えられるようになっており、このジョブ割当イベントは、その図示せぬ待ち行列に蓄えられているジョブの中から1個のジョブが実行対象ジョブとして図示せぬ機能により取り出されることによって発生する割り込みイベントである。そして、ステップS202で検出したイベントがジョブ割当イベントであった場合、CPU20eは、ステップS205からステップS206へ処理を分岐させる。
ステップS206では、CPU20eは、ジョブ割当サブルーチンを実行する。
図12は、ジョブ割当サブルーチンの流れを示す図である。
ジョブ割当サブルーチンの開始後、最初のステップS221では、CPU20eは、図5の計算ノード管理テーブル22における「実行中」フィールドの値(実行中フラグ)を参照することにより、全ての計算ノード10の中から、ジョブを実行していない計算ノード10を、空き計算ノードとして抽出する。
次のステップS222では、CPU20eは、既にジョブを実行している計算ノード10の中から、実行対象ジョブを実行するに際して通信対象となる計算ノード10を、特定する。なお、計算ノード10の特定には、一般的な方法が適用される。例えば、通信対象が静的に(毎回同じ計算ノード10に)決まっている場合、CPU20eは、実行対象ジョブに係るソースコード又は実行オブジェクトを解析することによって、通信対象の計算ノード10を特定する。また、例えば、通信対象が動的に(毎回任意の計算ノード10に)決まる場合、CPU20eは、ジョブを実行していない計算ノード10を適当に選択して実行対象ジョブを一旦実行させ、その通信パターンを観測することによって、通信対象の計算ノード10を特定する。
CPU20eは、ステップS221及びS222を実行し終えると、第1の処理ループL1を実行する。第1の処理ループL1では、CPU20eは、ステップS221で抽出した空き計算ノード10を一つずつ順に処理対象として特定するとともに、処理対象とし
て特定した1個の空き計算ノード10に対し、ステップS223乃至S225からなる処理を、実行する。
ステップS223では、CPU20eは、処理対象の空き計算ノード10について、省電力モード移行率Siを算出する。具体的には、CPU20eは、図5の計算ノード管理
テーブル22における処理対象計算ノード10のレコードから、通常モードでの累積動作時間と省電力モードでの累積動作時間とを読み出し、その後、読み出した累積動作時間の総和で省電力モードの累積動作時間を除算することにより、省電力モード移行率Siを算
出する。例えば、03番の指標を持つ計算ノード10が処理対象である場合、通常モードでの累積動作時間が40であり、省電力モードでの累積動作時間が10であると、図5の計算ノード管理テーブル22から読み取れる。この場合、省電力モード移行率Siは、1
0/(40+10)=0.2となる。
なお、このステップS223を実行するCPU20eは、前述した第1の算出部に相当している。
次のステップS224では、CPU20eは、ステップS222で特定した通信対象の計算ノード10と、処理対象の空き計算ノード10との通信距離の平均値Diを算出する
。具体的には、CPU20eは、図4の距離定義テーブル21から、通信対象の計算ノード10と、処理対象の空き計算ノード10との距離数を読み出し、その後、読み出した距離数の総和を通信対象の計算ノード10の個数で除算することにより、平均値Diを算出
する。例えば、02番、05番、06番、14番の指標を持つ計算ノード10が通信対象であり、03番の指標を持つ計算ノード10が処理対象である場合、処理対象と通信対象との距離数がそれぞれ10、30、20、40であると、図4の距離定義テーブル21から読み取れる。この場合、平均値Diは、(10+30+20+40)/4=25となる
なお、このステップS224を実行するCPU20eは、第2の算出部に相当している。
次のステップS225では、CPU20eは、処理対象の空き計算ノード10について、判定値Viを算出する。判定値Viは、次の式(1)により算出される。
Figure 0005211778
この式(1)は、(1−Si)と、−Diを羃指数として1.01を羃乗したものとを、それぞれ二乗し、更に、それらの相加平均の平方根をとることを、意味している。ここで、(1−Si)は、省電力モード移行率Siの逆比であり、換言すると、通常モード滞在率を示している。また、1.01の−Di乗は、平均値Diに反比例する値となっている。
CPU20eは、ステップS221で抽出した空き計算ノード10の全てについて、判定値Viを算出し終えると、第1の処理ループL1から離脱し、ステップS226へ処理
を進める。
ステップS226では、CPU20eは、ステップS221で抽出した空き計算ノード
10の中から、判定値Viが最大である空き計算ノード10を、特定する。つまり、仮に
平均値Diが一定であるとした場合には、省電力モード移行率Siが最も小さい空き計算ノード10が特定され、仮に省電力モード移行率Siが一定であるとした場合には、平均値
iが最も小さい空き計算ノード10が特定されることとなる。
なお、このステップS226を実行するCPU20eは、前述した特定部に相当している。
次のステップS227では、CPU20eは、ステップS226で特定した空き計算ノード10に対し、実行対象ジョブを割り当てて、当該ジョブの実行を指示する。
なお、このステップS227を実行するCPU20eは、前述した割当部に相当している。
次のステップS228では、CPU20eは、図5の計算ノード管理テーブル22のレコードの中から、当該ジョブを割り当てた空き計算ノード10のレコードを特定し、特定したレコードの「実行中」フィールド内の実行中フラグをオフからオンへ切り替える。切り替え後、CPU20eは、図12に係るジョブ割当サブルーチンを終了し、図10のステップS202へ処理を戻し、何らかのイベントが発生するまで待機する状態に戻る。
これに対し、計算ノード10側では、図6のステップS102において、ステップS101で検出したイベントが動作モード通知イベントでなかった場合、CPU10cは、ステップS104へ処理を進める。
ステップS104では、CPU10cは、ステップS101で検出したイベントがジョブ実行開始イベントであるか否かを、判別する。なお、このジョブ実行開始イベントは、図12のステップS227におけるジョブ実行の指示を受け付けることによって発生する割り込みイベントである。そして、ステップS101で検出したイベントがジョブ実行開始イベントであった場合、CPU10cは、ステップS104からステップS105へ処理を分岐させる。
ステップS105では、CPU10cは、ジョブ実行開始サブルーチンを実行する。
図8は、ジョブ実行開始サブルーチンの流れを示す図である。
ジョブ実行開始サブルーチンの開始後、最初のステップS121では、CPU10cは、ジョブ実行に必要なソフトウエア資源を管理ノード20から取得するとともに、ジョブ実行に必要なハードウエア資源を確保する。ここで、ソフトウエア資源には、ジョブを実行するためのプログラム(ソースコード又は実行オブジェクト)、入出力ファイル、通信設定情報が含まれ、ハードウエア資源には、ジョブ実行において占有すべきレジスタ及びメモリ空間が含まれる。なお、このステップS121において、CPU10cは、ソフトウエア資源そのものではなく、そのソフトウエア資源が存在する場所を特定する情報を、管理ノード20から取得しても良い。この場合、ソフトウエア資源が存在する場所は、管理ノード20のストレージユニット20d、計算ノード10のストレージユニット10b、又は、図示せぬネットワークを介して管理ノード20に接続されているストレージデバイスとなる。
次のステップS122では、CPU10cは、ステップS121で取得した資源に基づいてジョブの実行を開始する。開始後、CPU10cは、図8に係るジョブ実行サブルーチンを終了し、図6のステップS101に処理を戻して、何らかのイベントが発生するま
で待機する状態に戻る。
一方、ステップS104において、ステップS101で検出したイベントがジョブ実行開始イベントでなかった場合、CPU10cは、ステップS106へ処理を進める。
<ジョブ終了>
ステップS106では、CPU10cは、ステップS101で検出したイベントがジョブ実行終了イベントであるか否かを、判別する。なお、このジョブ実行終了イベントは、CPU10cがこの図6に係るプログラムと並行して実行していたジョブの実行が終了することによって発生するイベントである。そして、ステップS101で検出したイベントがジョブ実行終了イベントであった場合、CPU10cは、ステップS106からステップS107へ処理を分岐させる。
ステップS107では、CPU10cは、ジョブ実行終了サブルーチンを実行する。
図9は、ジョブ実行終了サブルーチンの流れを示す図である。
ジョブ実行終了サブルーチンの開始後、最初のステップS131では、CPU10cは、ジョブを実行するに際して占有していたハードウエア資源を、解放する。
次のステップS132では、CPU10cは、ジョブの実行が終了した旨を示すジョブ終了通知情報と、自己の識別情報とを、管理ノード20へ送信する。送信後、CPU10cは、図9に係るジョブ終了サブルーチンを終了し、図6のステップS101に処理を戻して、何らかのイベントが発生するまで待機する状態に戻る。
これに対し、管理ノード20側では、図10のステップS205において、ステップS202で検出したイベントがジョブ割当イベントでなかった場合、CPU20eは、ステップS207へ処理を進める。
ステップS207では、CPU20eは、ステップS202で検出したイベントがジョブ終了承知イベントであるか否かを、判別する。なお、ジョブ終了承知イベントは、図9のステップS132で送信されたジョブ終了通知情報と識別情報とを何れかの計算ノード10から受信することによって発生する割り込みイベントである。そして、ステップS202で検出したイベントがジョブ終了承知イベントであった場合、CPU20eは、ステップS207からステップS208へ処理を分岐させる。
ステップS208では、CPU20eは、図5の計算ノード管理テーブル22のレコードの中から、受信した識別情報を含むレコードを特定し、特定したレコードの「実行中」フィールド内の実行中フラグをオンからオフへ切り替える。切り替え後、CPU20eは、ステップS202へ処理を戻し、何らかのイベントが発生するまで待機する状態に戻る。
一方、ステップS207において、ステップS202で検出したイベントがジョブ終了承知イベントでなかった場合、CPU20eは、ステップS211へ処理を進める。
<他のイベント>
ステップS211では、CPU20eは、ステップS202で検出したイベントに応じた処理を実行する。実行後、CPU20eは、ステップS202へ処理を戻し、何らかのイベントが発生するまで待機する状態に戻る。
これに対し、計算ノード10側では、図6のステップS106において、ステップS101で検出したイベントがジョブ実行終了イベントでなかった場合、CPU10cは、ステップS112へ処理を進める。
ステップS112では、CPU10cは、ステップS101で検出したイベントに応じた処理を実行する。実行後、CPU10cは、ステップS101に処理を戻し、何らかのイベントが発生するまで待機する状態に戻る。
<<動作>>
第1の実施形態の管理ノード20において、図示せぬ待ち行列に蓄積されているジョブの中から、1個のジョブが実行対象として取り出されると、そのジョブの割り当て先が探し出される(ステップS206、図11)。
管理ノード20は、まず、ジョブを実行していない空き計算ノード10を抽出するとともに、実行対象のジョブを実行するに際して通信対象となる計算ノード10を特定する(ステップS212)。続いて、管理ノード20は、その時点でジョブを実行していない全ての計算ノード10について、省電力モード移行率Siと通信対象との距離数の平均値Diとに基づいて判定値Viを算出し(第1の処理ループL1)、判定値Viが最大である空き計算ノード10を、実行対象のジョブの割り当て先として特定する(ステップS216)。
その判定値Viは、式(1)から明らかなように、省電力モード移行率Siが小さくなればなるほど、及び、通信対象計算ノード10との距離の平均値Diが小さくなればなるほ
ど、大きくなるようになっている。従って、ジョブの割り当て先として、判定値Viが最
大である空き計算ノード10を選択することは、省電力モードに移行する頻度が低く且つ通信対象に近い計算ノード10を選択することを、意味している。
<<効果>>
このように、第1の実施形態によれば、新規ジョブは、省電力モードへ移行する頻度が高い計算ノード10には、殆ど割り当てられず、省電力モードへ移行しにくい計算ノード10に割り当てられる。従って、省電力モードへ頻繁に移行する実績のある計算ノード10にジョブが集中することがなく、このような計算ノード10のCPU10cの温度が高くなる可能性が減ることとなる。この結果、分散メモリ型並列計算システム全体について見ると、実行効率の低下が殆ど生じないこととなる。
また、第1の実施形態によれば、新規ジョブは、省電力モード移行率の低い空き計算ノード10のうち、通信対象から近い計算ノード10に、割り当てられる。従って、通信対象との距離とは無関係に計算ノード10を選択することに比べて、ジョブの実行効率が向上することとなる。
実施形態2
第2の実施形態は、第1の実施形態とは、3種類の動作モードそれぞれの累積動作時間の更新の方法が、相違している。
<<構成及び処理>>
具体的には、前述したように、第1の実施形態では、CPU10cは、入出力監視回路又は温度監視回路がハードウエア割り込みを発生させると、そのハードウエア割り込みに対応する割り込みハンドラに従って、固有レジスタ内の動作モード情報を更新するものとなっている。第2の実施形態では、その割り込みハンドラによる処理内容が、第1の実施形態とは、若干異なっている。
図13は、第2の実施形態の計算ノード10のCPU10cが実行する割り込みハンドラの流れを示す図である。
割り込みハンドラの起動後、最初のステップS301では、CPU10cは、固有レジスタ内の動作モード情報を更新する。
次のステップS302では、CPU10cは、この時点の時刻を示す時刻情報を、固有レジスタ又はメモリユニット10dに記録する。記録後、CPU10cは、割り込みハンドラに係る処理を終了する。
このように、第2の実施形態のCPU10cの割り込みハンドラは、固有レジスタ内の動作モード情報の更新だけでなく、更新時点の時刻情報も記録するようになっている。
また、第2の実施形態は、第1の実施形態とは、図6のステップS103においてCPU10cに実行される動作モード通知サブルーチンの内容が、相違している。
図14は、第2の実施形態における動作モード通知サブルーチンの流れを示す図である。
動作モード通知サブルーチンの開始後、最初のステップS401において、CPU10cは、内部の固有レジスタから、動作モードの種類を特定する動作モード情報を読み出す。
次のステップS402では、CPU10cは、固有レジスタ又はメモリユニット10dから、固有レジスタ内の動作モード情報の更新時点の時刻を示す時刻情報を、読み出す。
次のステップS403では、CPU10cは、ステップS401で読み出した動作モード情報と、ステップS402で読み出した時刻情報と、自己の識別情報とを、管理ノード20へ送信する。送信後、CPU10cは、図14に係る動作モード通知サブルーチンを終了し、図6のステップS101に処理を戻して、何らかのイベントが発生するまで待機する状態に戻る。
このように、第2の実施形態の動作モード通知サブルーチンによれば、管理ノード20には、動作モード情報と識別情報だけでなく、時刻情報も送られることとなる。
また、第2の実施形態は、第1の実施形態とは、図3の計算ノード管理テーブル22の内容と、図10のステップS204の内容とが、相違している。
図15は、第2の実施形態における計算ノード管理テーブル24を模式的に示す図である。
図15に示すように、第2の実施形態における計算ノード管理テーブル24の各レコードは、「計算ノード」、「実行中」、「待機」、「通常」、「省電力」及び「更新時刻」のフィールドを、有している。図15と図5とを比較して明らかなように、第2の実施形態では、「更新時刻」フィールドが、計算ノード管理テーブル24に追加されている。その「更新時刻」フィールドは、各計算ノード10から送信される時刻情報を格納しておくためのフィールドである。
図16は、累積動作時間更新サブルーチンの流れを示す図である。
累積動作時間更新サブルーチンの開始後、最初のステップS501では、CPU20eは、図15の計算ノード管理テーブル24の中から、計算ノード10から受信した識別情報を持つレコードを特定する。
次のステップS502では、CPU20eは、ステップS501で特定したレコードの「更新時刻」フィールドの値(時刻情報)と、計算ノード10から受信した時刻情報とに基づいて、経過時間を算出する。
次のステップS503では、CPU20eは、ステップS501で特定したレコードの中から、計算ノード10から受信した動作モード情報に対応するフィールドを特定する。
次のステップS504では、CPU20eは、ステップS503で特定したフィールドの値に、ステップS502で算出した経過時間を加算する。加算後、CPU20eは、図16に係る累積動作時間更新サブルーチンを終了して、図10のステップS202へ処理を戻し、何らかのイベントが発生するまで待機する状態に戻る。
<<作用及び効果>>
このように、第2の実施形態によれば、管理ノード20には、各計算ノード10から、動作モード情報だけでなく、動作モードの切り替え時刻をも、通知される。このため、管理ノード20は、各計算ノード10における動作モードごとの累積動作時間を、第1の実施形態に比べて正確に記録することができる。
実施形態3
第3の実施形態は、既にジョブを割り当てた計算ノード10に対してジョブの割り当ての適否を再検討して移し替えを行う点で、第1及び第2の実施形態とは相違する。以下、相違部分について、詳細に説明する。
<<構成及び処理>>
図17及び図18は、第3の実施形態の第1のイベント管理プログラム12に従ってCPU10cが実行する第1のイベント管理処理の流れを示す図である。また、図21及び図22は、第3の実施形態の第2のイベント管理プログラム25に従ってCPU20eが実行する第2のイベント管理処理の流れを示す図である。
なお、第1の実施形態と同様に、第3の実施形態においても、第1のイベント管理処理と第2のイベント管理処理とは、各ステップが互いに連携するよう、構成されている。このため、これら第1及び第2のイベント管理処理についての説明は、並行して進める。
図17及び図18と図6とを比較して明らかなように、第3の実施形態の第1のイベント管理プログラム12には、ジョブ凍結及びジョブ解凍に係る機能として、ステップS108乃至S111が、追加されており、それ以外のステップS101乃至S107とS112とについては、第1及び第2の実施形態の第1のイベント管理プログラム11と同じである。従って、図17及び図18のステップS101乃至S107とS112とについては説明を省略する。
また、図21及び図22と図10とを比較して明らかなように、第3の実施形態の第2のイベント管理プログラム25には、ジョブ移替に係る機能として、ステップS209及びS210が、追加されており、それ以外のステップS201乃至S208とS211とについては、第1及び第2の実施形態の第2のと同じである。従って、図21のステップS201乃至S208とS211とについては説明を省略する。
<ジョブ移替>
管理ノード20側では、図21のステップS207において、ステップS201で検出したイベントがジョブ終了承知イベントでなかった場合、CPU10cは、図22のステップS209へ処理を進める。
ステップS209では、CPU10cは、図21のステップS101で検出したイベントがジョブ移替イベントであるか否かを、判別する。なお、このジョブ移替イベントは、図示せぬ所定のプログラム又はハードウエアが定期的(例えば10秒ごと)に発生させる割り込みのイベントである。そして、ステップS101で検出したイベントがジョブ移替イベントであった場合、CPU20eは、ステップS209からステップS210へ処理を分岐させる。
ステップS210では、CPU20eは、ジョブ移替サブルーチンを実行する。
図23及び図24は、ジョブ移替サブルーチンの流れを示す図である。
ジョブ移替サブルーチンの開始後、最初のステップS601では、CPU20eは、図5の計算ノード管理テーブル22(又は、図15の計算ノード管理テーブル24)における「実行中」フィールドの値(実行中フラグ)を参照することにより、全ての計算ノード10の中から、ジョブを実行している計算ノード10を、実行中計算ノードとして抽出する。
CPU20eは、ステップS601を実行し終えると、第2の処理ループL2を実行する。第2の処理ループL2では、CPU20eは、ステップS601で抽出した実行中計算ノード10を一つずつ順に処理対象として特定するとともに、処理対象として特定した1個の実行中計算ノード10に対し、ステップS602乃至S609からなる処理を、実行する。
ステップS602では、CPU20eは、処理対象の実行中計算ノード10について、省電力モード移行率Siを算出する。なお、省電力モード移行率Siの算出方法については、先に説明したので、ここでは説明を省略する。
なお、このステップS602を実行するCPU20eは、第3の算出部に相当している。
次のステップS603では、CPU20eは、ステップS602で算出した省電力モード移行率Siが所定の上限値を超過しているか否かを、判別する。そして、ステップS6
02で算出した省電力モード移行率Siが所定の上限値を超過していなかった場合、CP
U20eは、ステップS603から処理を分岐させ、第2の処理ループL2におけるこの処理対象の実行中計算ノード10の回を終了する。一方、ステップS602で算出した省電力モード移行率Siが所定の上限値を超過していた場合、CPU20eは、図24のス
テップS604へ処理を進める。
ステップS604では、CPU20eは、処理対象の実行中計算ノード10に対し、ジョブの中断を指示し、その後、ステップS605へ処理を進める。
これに対し、計算ノード10側では、図17のステップS106において、ステップS101で検出したイベントがジョブ実行終了イベントでなかった場合、CPU10cは、図18のステップS108へ処理を進める。
ステップS108では、CPU10cは、ステップS101で検出したイベントがジョブ凍結イベントであるか否かを、判別する。なお、このジョブ凍結イベントは、管理ノード20からジョブの中断の指示を受信することによって発生する割り込みイベントである。そして、ステップS101で検出したイベントがジョブ凍結イベントであった場合、CPU10cは、ステップS108からステップS109へ処理を分岐させる。
ステップS109では、CPU10cは、ジョブ凍結サブルーチンを実行する。
図19は、ジョブ凍結サブルーチンの流れを示す図である。
ジョブ凍結サブルーチンの開始後、最初のステップS141では、CPU10cは、ジョブを中断する。
次のステップS142では、CPU10cは、ステップS141で中断したジョブを再開する際に使用するソフトウエア資源を生成し、そのジョブで使用していたハードウエア資源を解放する。前述したように、ソフトウエア資源には、ジョブを実行するためのプログラム(ソースコード又は実行オブジェクト)、入出力ファイル、通信設定情報が含まれ、ハードウエア資源には、ジョブ実行において占有すべきレジスタ及びメモリ空間が含まれる。
次のステップS143では、CPU10cは、ステップS142で生成したソフトウエア資源を管理ノード20に送信する。その後、CPU10cは、図19に係るジョブ凍結サブルーチンを終了し、図17のステップS101に処理を戻して、何らかのイベントが発生するまで待機する状態に戻る。
これに対し、管理ノード20側では、図24のステップS605において、ステップS604でジョブの中断を指示した計算ノード10から、そのジョブに係るソフトウエア資源を受信するまで、待機する。そして、その計算ノード10からソフトウエア資源を受信すると、CPU20eは、ステップS606へ処理を進める。
ステップS606では、CPU20eは、図5の計算ノード管理テーブル22(又は、図15の計算ノード管理テーブル24)のレコードの中から、処理対象の実行中計算ノード10のレコードを特定し、特定したレコードの「実行中」フィールド内の実行中フラグをオンからオフへ切り替える。切り替え後、CPU20eは、ステップS607へ処理を進める。
ステップS607では、CPU20eは、図5の計算ノード管理テーブル22(又は、図15の計算ノード管理テーブル24)における「実行中」フィールドの値(実行中フラグ)を参照することにより、全ての計算ノード10の中から、ジョブを実行していない計算ノード10を、空き計算ノードとして抽出する。続いて、CPU20eは、空き計算ノード10のそれぞれについて省電力モード移行率Siを算出し、その後、省電力モード移
行率Siの最も低い空き計算ノード10を特定する。
次のステップS608では、CPU20eは、ステップS607で特定した空き計算ノード10に対し、ステップS604により中断されたジョブの再開を、指示する。従って、中断されたジョブは、別の計算ノード10で再開されることとなる。
なお、ステップS603乃至S608を実行するCPU20eは、移替部に相当している。
次のステップS609では、CPU20eは、図5の計算ノード管理テーブル22(又は図15の計算ノード管理テーブル24)のレコードの中から、ステップS608でジョブの再開を指示した計算ノード10のレコードを特定し、特定したレコードの「実行中」フィールド内の実行中フラグをオフからオンへ切り替える。切り替え後、CPU20eは、第2の処理ループL2におけるこの処理対象の実行中計算ノード10の回を終了する。
CPU20eは、ステップS601で抽出した実行中計算ノード10の全てについて、ステップS602乃至S609からなる処理を実行し終えると、第2の処理ループL2から離脱し、図23及び図24に係る凍結ジョブ特定サブルーチンを終了し、図21のステップS202へ処理を戻して、何らかのイベントが発生するまで待機する状態に戻る。
なお、図22のステップS209において、図21のステップS202で検出したイベントがジョブ移替イベントでなかった場合、CPU20eは、ステップS211へ処理を進め、ステップS202で検出したイベントに対応する処理を実行してから、図21のステップS202へ処理を戻し、何らかのイベントが発生するまで待機する状態に戻る。
これに対し、計算ノード10側では、図18のステップS108において、ステップS101で検出したイベントがジョブ凍結イベントでなかった場合、CPU10cは、ステップS110へ処理を進める。
ステップS110では、CPU10cは、ステップS101で検出したイベントがジョブ解凍イベントであるか否かを、判別する。なお、このジョブ解凍イベントは、管理ノード20からジョブの再開の指示を受信することによって発生する割り込みイベントである。そして、ステップS101で検出したイベントがジョブ解凍イベントであった場合、CPU10cは、ステップS110からステップS111へ処理を分岐させる。
ステップS111では、CPU10cは、ジョブ解凍サブルーチンを実行する。
図20は、ジョブ解凍サブルーチンの流れを示す図である。
ジョブ解凍サブルーチンの開始後、最初のステップS151では、CPU10cは、ジョブの再開に必要なソフトウエア資源を管理ノード20から取得するとともに、ジョブの再開に必要なハードウエア資源を確保する。
次のステップS152では、CPU10cは、ステップS151で取得した資源に基づいてジョブを開始する。開始後、CPU10cは、図20に係るジョブ再開サブルーチンを終了し、図17のステップS101に処理を戻して、何らかのイベントが発生するまで待機する状態に戻る。
なお、図18のステップS110において、図17のステップS101で検出したイベントがジョブ解凍イベントでなかった場合、CPU10cは、ステップS112へ処理を進め、ステップS101で検出したイベントに対応する処理を実行してから、図17のステップS101へ処理を戻し、何らかのイベントが発生するまで待機する状態に戻る。
<<作用及び効果>>
このように、第3の実施形態によれば、新規ジョブが、省電力モード移行率の低い計算ノードに割り当てられるだけでなく、省電力モード移行率の高い計算ノードに既に割り当てられているジョブでさえも、省電力モード移行率の低い計算ノードに割り当てられることとなる。このため、省電力モードへ移行する頻度が高い計算ノードのCPUの温度が高
くなる可能性が、更に減ることとなる。この結果、分散メモリ型並列計算システム全体について見ると、実行効率の低下が殆ど生じないこととなる。
<ユニットについて>
以上に説明した第1乃至第3の実施形態において、計算ノード10内のネットワークインターフェースユニット10a、ストレージユニット10b、CPU10c、及び、メモリユニット10d、並びに、管理ノード20内の表示ユニット20a、入力ユニット20b、ネットワークインターフェースユニット20c、ストレージユニット20d、CPU20e、及び、メモリユニット20fは、何れも、ソフトウエア要素とハードウエア要素とから構成されていても良いし、ハードウエア要素のみで構成されていても良い。
ソフトウエア要素としては、インターフェースプログラム、ドライバプログラム、テーブル、及び、データ、並びに、これらのうちの幾つかを組み合わせたものが、例示できる。これらは、後述のコンピュータ可読媒体に格納されたものであっても良いし、ROM[Read Only Memory]及びLSI[Large Scale Integration]などの記憶装置に固定的に
組み込まれたファームウエアであっても良い。
また、ハードウエア要素としては、FPGA[Field Programmable Gate Array]、A
SIC[Application Specific Integrated Circuit]、ゲートアレイ、論理ゲートの組
み合わせ、信号処理回路、アナログ回路、及び、その他の回路が、例示できる。このうち、論理ゲートには、AND、OR、NOT、NAND、NOR、フリップフロップ、カウンタ回路などが、含まれていてもよい。また、信号処理回路には、信号値の加算、乗算、除算(反転)、積和演算、微分、積分などを実行する回路要素が、含まれていてもよい。また、アナログ回路には、増幅、加算、乗算、微分、積分などを実行する回路要素が、含まれていてもよい。
なお、前述した計算ノード10内の各ユニット10a〜10dと、前述した管理ノード20内の各ユニット20a〜20fとをそれぞれ構成する要素は、以上に例示したものに限定されず、これらと等価な他の要素であっても良い。
<ソフトウエア及びプログラムについて>
以上に説明した第1乃至第3の実施形態において、計算ノード10内の第1のイベント管理プログラム11、12と、管理ノード20内の距離定義テーブル21、計算ノード管理テーブル22、24、及び、第2のイベント管理プログラム23、25と、前述したソフトウエア要素とは、何れも、ソフトウエア部品、手続き型言語による部品、オブジェクト指向ソフトウエア部品、クラス部品、タスクとして管理される部品、プロセスとして管理される部品、関数、属性、プロシジャ(手続き)、サブルーチン(ソフトウエアルーチン)、プログラムコードの断片又は部分、ドライバ、ファームウエア、マイクロコード、コード、コードセグメント、エクストラセグメント、スタックセグメント、プログラム領域、データ領域、データ、データベース、データ構造、フィールド、レコード、テーブル、マトリックステーブル、配列、変数、パラメータなどの要素を、含んでいても良い。
また、計算ノード10内の第1のイベント管理プログラム11、12と、管理ノード20内の距離定義テーブル21、計算ノード管理テーブル22、24、及び、第2のイベント管理プログラム23、25と、前述したソフトウエア要素とは、何れも、C言語、C++、Java(米国サンマイクロシステムズ社の商標)、ビジュアルベーシック(米国マイクロソフト社の商標)、Perl、Ruby、その他の多くのプログラミング言語により記述されたものであっても良い。
また、計算ノード10内の第1のイベント管理プログラム11、12と、管理ノード2
0内の距離定義テーブル21、計算ノード管理テーブル22、24、及び、第2のイベント管理プログラム23、25と、前述したソフトウエア要素とに含まれる命令、コード及びデータは、有線ネットワークカード及び有線ネットワークを通じて、又は、無線カード及び無線ネットワークを通じて、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに、送信又はローディングされても良い。
前述した送信又はローディングにおいて、データ信号は、例えば搬送波に組み込まれることにより(embodied as carrier waves)、有線ネットワーク又は無線ネットワーク上
を移動する。但し、データ信号は、前述した搬送波に依らず、いわゆるベースバンド信号のまま転送されても良い。このような搬送波は、電気的、磁気的又は電磁的な形態、光、音響、又は、その他の形態で、送信される。
ここで、有線ネットワーク又は無線ネットワークは、例えば、電話回線、ネットワーク回線、ケーブル(光ケーブル、金属ケーブルを含む)、無線リンク、携帯電話アクセス回線、PHS[Personal Handyphone System]網、無線LAN[Local Area Network]、Bluetooth(ブルートゥース特別利益団体の商標)、車両搭載型無線通信(DSRC[Dedicated Short Range Communication]を含む)、及び、これらのうちの何れかからなるネットワークである。そして、このデータ信号は、命令、コード及びデータを含む情報を、ネットワーク上のノード又は要素に、伝達する。
なお、計算ノード10内の第1のイベント管理プログラム11、12と、管理ノード20内の距離定義テーブル21、計算ノード管理テーブル22、24、及び、第2のイベント管理プログラム23、25と、前述したソフトウエア要素とを構成する要素は、以上に例示したものに限定されず、これらと等価な他の要素であっても良い。
<コンピュータ可読媒体について>
以上に説明した第1乃至第3の実施形態における何れかの機能は、コード化されてコンピュータ可読媒体の記憶領域に格納されていても良い。この場合、その機能を実現するためのプログラムが、このコンピュータ可読媒体を介して、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに、提供され得る。コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータは、コンピュータ可読媒体の記憶領域からプログラムを読み出してそのプログラムを実行することによって、その機能を実現することができる。
ここで、コンピュータ可読媒体とは、電気的、磁気的、光学的、化学的、物理的又は機械的な作用によって、プログラム及びデータ等の情報を蓄積するとともに、コンピュータに読み取られ得る状態でその情報を保持する記録媒体をいう。
電気的又は磁気的な作用としては、ヒューズによって構成されるROM[Read Only Memory]上の素子へのデータの書き込みが、例示できる。磁気的又は物理的な作用としては、紙媒体上の潜像へのトナーの現像が、例示できる。なお、紙媒体に記録された情報は、例えば、光学的に読み取ることができる。光学的且つ化学的な作用としては、基盤上での薄膜形成又は凹凸形成が、例示できる。なお、凹凸の形態で記録された情報は、例えば、光学的に読み取ることができる。化学的な作用としては、基板上での酸化還元反応、又は、半導体基板上での酸化膜形成、窒化膜形成、若しくは、フォトレジスト現像が、例示できる。物理的又は機械的な作用としては、エンボスカードへの凹凸形成、又は、紙媒体へのパンチの穿孔が、例示できる。
また、コンピュータ可読媒体の中には、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに着脱自在に装着できるものがある。着脱自在なコンピュータ可読
媒体としては、DVD[Digital Versatile Disk](DVD−R[Recordable]、DVD−ROM[Read Only Memory]、DVD−RAM[Random Access Memory]、HD[High
Definition]DVDを含む)、+R/+WR、BD[Blu-ray Disk](BD−R、BD
−RE[Rewritable]、BD−ROMを含む)、CD[Compact Disk](CD−R、CD−RW、CD−ROMを含む)、MO[Magneto Optical]ディスク、その他の光ディス
ク媒体、フレキシブルディスク(フロッピー(日立製作所社の商標)ディスクを含む)、その他の磁気ディスク媒体、メモリーカード(コンパクトフラッシュ(米国サンディスク社の商標)、スマートメディア(東芝社の商標)、SDカード(米国サンディスク社と、松下電器産業社と、東芝社の商標)、メモリースティック(ソニー社の商標)、MMC(米国ジーメンス社と、米国サンディスク社の商標)など)、磁気テープ、及び、その他のテープ媒体、並びに、これらのうちの何れかを内蔵した記憶装置が、例示できる。記憶装置には、DRAM[Dynamic Random Access Memory]又はSRAM[Static Random Access Memory]がさらに内蔵されたものもある。
また、コンピュータ可読媒体の中には、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに固定的に装着されたものがある。この種のコンピュータ可読媒体としては、ハードディスク、DRAM、SRAM、ROM、EEPROM[Electronically Erasable and Programmable Read Only Memory]、フラッシュメモリなどが、例示で
きる。
さらに、コンピュータ可読媒体は、ネットワークを通じて結合されたコンピュータネットワークシステムに内包されるものであっても良い。そのようなシステムに格納された命令、コード及びデータを含む情報は、分散処理環境で実行される。
前述した第1乃至第3の実施形態に関し、更に、以下の付記を開示する。
(付記1)
電力消費量を低減する省電力モードへ移行する機能を有するCPUを含む複数の計算ノードに対し、ジョブを割り当てるためのジョブ割当装置であって、
新規ジョブの投入があると、ジョブが割り当てられていない計算ノードそれぞれの省電力モード移行率を算出する第1の算出部、
前記第1の算出部が算出した省電力モード移行率が低い計算ノードを、新規ジョブの割当対象として特定する特定部、及び、
前記特定部が特定した計算ノードに新規ジョブを割り当てる割当部
を備えることを特徴とするジョブ割当装置。
(付記2)
新規ジョブの投入があると、ジョブが割り当てられていない計算ノードそれぞれについて、新規ジョブにおける通信対象となる計算ノードとの通信距離の平均を、平均通信距離として算出する第2の算出部
を更に備え、
前記特定部は、前記第1の算出部が算出した省電力モード移行率が低く且つ前記第2の算出部が算出した平均通信距離が少ない計算ノードを、新規ジョブの割当対象として特定する
ことを特徴とする付記1記載のジョブ割当装置。
(付記3)
前記特定部は、前記省電力モード移行率を1から減算して得られる値と、前記平均通信距離を羃指数として所定の数を羃乗して得られる値との二乗平均平方根をとる演算を行い、その演算の結果得られる値が大きい計算ノードを、新規ジョブの割当対象として特定す

ことを特徴とする付記2記載のジョブ割当装置。
(付記4)
ジョブが割り当てられている1個以上の計算ノードそれぞれについて、省電力モード移行率を算出する第3の算出部、及び、
ジョブが割り当てられている計算ノードの中に、前記第3の算出部が算出した省電力モード移行率が高い計算ノードが存在していた場合に、その計算ノードに割り当てられているジョブを、ジョブが割り当てられておらず且つ省電力モード移行率が低い計算ノードに、移し替える移替部
を更に備えることを特徴とする付記1、2又は3記載のジョブ割当装置。
(付記5)
前記移替部は、前記第3の算出部が算出した省電力モード移行率が所定の閾値を超過している計算ノードを、省電力モード移行率の高い計算ノードとして特定する
ことを特徴とする付記4記載のジョブ割当装置。
(付記6)
電力消費量を低減する省電力モードへ移行する機能を有するCPUを含む複数の計算ノードに対し、ジョブを割り当てるためのジョブ割当方法であって、
コンピュータが、
新規ジョブの投入があると、ジョブが割り当てられていない計算ノードそれぞれの省電力モード移行率を算出する第1の算出手順、
前記第1の算出手順で算出した省電力モード移行率が低い計算ノードを、新規ジョブの割当対象として特定する特定手順、及び、
前記特定手順で特定した計算ノードに新規ジョブを割り当てる割当手順
を実行する
ことを特徴とするジョブ割当方法。
(付記7)
前記コンピュータが、
新規ジョブの投入があると、ジョブが割り当てられていない計算ノードそれぞれについて、新規ジョブにおける通信対象となる計算ノードとの通信距離の平均を、平均通信距離として算出する第2の算出手順
を更に実行し、
前記特定手順においては、前記第1の算出手順で算出した省電力モード移行率が低く且つ前記第2の算出手順で算出した平均通信距離が少ない計算ノードを、新規ジョブの割当対象として特定する
ことを特徴とする付記6記載のジョブ割当方法。
(付記8)
前記コンピュータが、
前記特定手順において、前記省電力モード移行率を1から減算して得られる値と、前記平均通信距離を羃指数として所定の数を羃乗して得られる値との二乗平均平方根をとる演算を行い、その演算の結果得られる値が大きい計算ノードを、新規ジョブの割当対象として特定する
ことを特徴とする付記7記載のジョブ割当方法。
(付記9)
前記コンピュータが、
ジョブが割り当てられている1個以上の計算ノードそれぞれについて、省電力モード移行率を算出する第3の算出手順、及び、
ジョブが割り当てられている計算ノードの中に、前記第3の算出手順で算出した省電力モード移行率が高い計算ノードが存在していた場合に、その計算ノードに割り当てられているジョブを、ジョブが割り当てられておらず且つ省電力モード移行率が低い計算ノードに、移し替える移替手順
を更に実行する
ことを特徴とする付記6、7又は8記載のジョブ割当方法。
(付記10)
前記コンピュータが、
前記移替手順において、前記第3の算出手順で算出した省電力モード移行率が所定の閾値を超過している計算ノードを、省電力モード移行率の高い計算ノードとして特定する
ことを特徴とする付記9記載のジョブ割当方法。
(付記11)
電力消費量を低減する省電力モードへ移行する機能を有するCPUを含む複数の計算ノードに対し、ジョブを割り当てるためのジョブ割当プログラムであって、
コンピュータを、
新規ジョブの投入があると、ジョブが割り当てられていない計算ノードそれぞれの省電力モード移行率を算出する第1の算出手段、
前記第1の算出手段が算出した省電力モード移行率が低い計算ノードを、新規ジョブの割当対象として特定する特定手段、及び、
前記特定手段が特定した計算ノードに新規ジョブを割り当てる割当手段
として機能させる
ことを特徴とするジョブ割当プログラム。
(付記12)
前記コンピュータを、更に、
新規ジョブの投入があると、ジョブが割り当てられていない計算ノードそれぞれについて、新規ジョブにおける通信対象となる計算ノードとの通信距離の平均を、平均通信距離として算出する第2の算出手段
として機能させ、
前記特定手段は、前記第1の算出手段が算出した省電力モード移行率が低く且つ前記第2の算出手段が算出した平均通信距離が少ない計算ノードを、新規ジョブの割当対象として特定する
ことを特徴とする付記11記載のジョブ割当プログラム。
(付記13)
前記特定手段は、前記省電力モード移行率を1から減算して得られる値と、前記平均通信距離を羃指数として所定の数を羃乗して得られる値との二乗平均平方根をとる演算を行い、その演算の結果得られる値が大きい計算ノードを、新規ジョブの割当対象として特定する
ことを特徴とする付記12記載のジョブ割当プログラム。
(付記14)
前記コンピュータを、更に、
ジョブが割り当てられている1個以上の計算ノードそれぞれについて、省電力モード移行率を算出する第3の算出手段、及び、
ジョブが割り当てられている計算ノードの中に、前記第3の算出手段が算出した省電力
モード移行率が高い計算ノードが存在していた場合に、その計算ノードに割り当てられているジョブを、ジョブが割り当てられておらず且つ省電力モード移行率が低い計算ノードに、移し替える移替手段
として機能させる
ことを特徴とする付記11、12又は13記載のジョブ割当プログラム。
(付記15)
前記移替手段は、前記第3の算出手段が算出した省電力モード移行率が所定の閾値を超過している計算ノードを、省電力モード移行率の高い計算ノードとして特定する
ことを特徴とする付記14記載のジョブ割当プログラム。
第1の実施形態の分散メモリ型並列計算システムの構成図 計算ノードの構成図 管理ノードの構成図 距離定義テーブルを模式的に示す図 計算ノード管理テーブルを模式的に示す図 計算ノード側の第1のイベント管理処理の流れを示す図 動作モード通知サブルーチンの流れを示す図 ジョブ実行開始サブルーチンの流れを示す図 ジョブ実行終了サブルーチンの流れを示す図 管理ノード側の第2のイベント管理処理の流れを示す図 累積動作時間更新サブルーチンの流れを示す図 ジョブ割当サブルーチンの流れを示す図 第2の実施形態の計算ノードのCPUが実行する割り込みハンドラの流れを示す図 第2の実施形態における動作モード通知サブルーチンの流れを示す図 第2の実施形態における計算ノード管理テーブルを模式的に示す図 累積動作時間更新サブルーチンの流れを示す図 第3の実施形態の第1のイベント管理処理の流れを示す図 第3の実施形態の第1のイベント管理処理の流れを示す図 ジョブ凍結サブルーチンの流れを示す図 ジョブ解凍サブルーチンの流れを示す図 第3の実施形態の第2のイベント管理処理の流れを示す図 第3の実施形態の第2のイベント管理処理の流れを示す図 ジョブ移替サブルーチンの流れを示す図 ジョブ移替サブルーチンの流れを示す図
符号の説明
10 計算ノード
10a ネットワークインターフェースユニット
10b ストレージユニット
10c CPU
10d メモリユニット
11 第1のイベント管理プログラム
12 第1のイベント管理プログラム
20 管理ノード
20a 表示ユニット
20b 入力ユニット
20c ネットワークインターフェースユニット
20d ストレージユニット
20e CPU
20f メモリユニット
21 距離定義テーブル
22 計算ノード管理テーブル
23 第2のイベント管理プログラム
24 計算ノード管理テーブル
25 第2のイベント管理プログラム

Claims (6)

  1. 電力消費量を低減する省電力モードへ移行可能な演算処理装置を含む複数の計算ノードに対してジョブを割り当てるジョブ割当装置において、
    ジョブが投入された場合、ジョブが割り当てられていない計算ノードそれぞれが有する演算処理装置が所定期間において前記省電力モードに移行した期間の割合を示す省電力モード移行率を算出する第1の算出部と、
    ジョブが投入された場合、ジョブが割り当てられていない計算ノードそれぞれについて、投入されたジョブが割り当てられた場合に通信対象となる計算ノードとの通信距離を、ジョブが割り当てられていない計算ノード毎に順次算出するとともに、順次算出した通信距離の平均である平均通信距離を算出する第2の算出部と、
    前記ジョブが割り当てられていない計算ノードのうち、前記第1の算出部が算出した省電力モード移行率が低いほど、且つ前記第2の算出部が算出した平均通信距離が短いほど大きくなる判定値が最大となる計算ノードを、投入された前記ジョブを割り当てる計算ノードとして特定する特定部と、
    前記特定部が特定した計算ノードに新規ジョブを割り当てる割当部を有することを特徴とするジョブ割当装置。
  2. 前記特定部は、
    前記省電力モード移行率を1から減算して得られる値と、前記平均通信距離を冪指数として所定の数を冪乗して得られる値との二乗平均平方根である判定値が最大となる計算ノードを、投入された前記ジョブを割り当てる計算ノードとして特定することを特徴とする請求項記載のジョブ割当装置。
  3. 前記ジョブ割当装置はさらに、
    ジョブが割り当てられている計算ノードそれぞれが有する演算処理装置の省電力モード移行率を算出する第3の算出部と、
    前記第3の算出部が算出した省電力モード移行率が所定の閾値を超過している計算ノードに割り当てられているジョブを、ジョブが割り当てられていない計算ノードに移し替える移替部を有することを特徴とする請求項1又は2に記載のジョブ割当装置。
  4. 電力消費量を低減する省電力モードへ移行可能な演算処理装置を含む複数の計算ノードと、前記複数の計算ノードに対してジョブを割り当てるジョブ割当装置とを有する並列計算機システムにおいて、
    前記ジョブ割当装置は、
    ジョブが投入された場合、ジョブが割り当てられていない計算ノードそれぞれが有する演算処理装置が所定期間において前記省電力モードに移行した期間の割合を示す省電力モード移行率を算出する第1の算出部と、
    ジョブが投入された場合、ジョブが割り当てられていない計算ノードそれぞれについて、投入されたジョブが割り当てられた場合に通信対象となる計算ノードとの通信距離を、ジョブが割り当てられていない計算ノード毎に順次算出するとともに、順次算出した通信距離の平均である平均通信距離を算出する第2の算出部と、
    前記ジョブが割り当てられていない計算ノードのうち、前記第1の算出部が算出した省電力モード移行率が低いほど、且つ前記第2の算出部が算出した平均通信距離が短いほど大きくなる判定値が最大となる計算ノードを、投入された前記ジョブを割り当てる計算ノードとして特定する特定部と、
    前記特定部が特定した計算ノードに新規ジョブを割り当てる割当部を有することを特徴とする並列計算機システム。
  5. 電力消費量を低減する省電力モードへ移行可能な演算処理装置を含む複数の計算ノードに対してジョブを割り当てるジョブ割当装置のジョブ割当方法において、
    ジョブが投入された場合、前記ジョブ割当装置が有する第1の算出部が、ジョブが割り当てられていない計算ノードそれぞれが有する演算処理装置が所定期間において前記省電力モードに移行した期間の割合を示す省電力モード移行率を算出し、
    ジョブが投入された場合、ジョブが割り当てられていない計算ノードそれぞれについて、投入されたジョブが割り当てられた場合に通信対象となる計算ノードとの通信距離を、ジョブが割り当てられていない計算ノード毎に順次算出するとともに、順次算出した通信距離の平均である平均通信距離を算出し、
    前記ジョブ割当装置が有する特定部が、前記ジョブが割り当てられていない計算ノードのうち、前記第1の算出部が算出した省電力モード移行率が低いほど、且つ前記第2の算出部が算出した平均通信距離が短いほど大きくなる判定値が最大となる計算ノードを、投入された前記ジョブを割り当てる計算ノードとして特定し、
    前記ジョブ割当装置が有する割当部が、前記特定部が特定した計算ノードに新規ジョブを割り当てることを特徴とするジョブ割当方法。
  6. 電力消費量を低減する省電力モードへ移行可能な演算処理装置を含む複数の計算ノードに対してジョブを割り当てるジョブ割当装置のジョブ割当プログラムにおいて、
    ジョブが投入された場合、前記ジョブ割当装置が有する第1の算出部に、ジョブが割り当てられていない計算ノードそれぞれが有する演算処理装置が所定期間において前記省電力モードに移行した期間の割合を示す省電力モード移行率を算出させ、
    ジョブが投入された場合、ジョブが割り当てられていない計算ノードそれぞれについて、投入されたジョブが割り当てられた場合に通信対象となる計算ノードとの通信距離を、ジョブが割り当てられていない計算ノード毎に順次算出するとともに、順次算出した通信距離の平均である平均通信距離を算出させ、
    前記ジョブ割当装置が有する特定部に、前記ジョブが割り当てられていない計算ノードのうち、前記第1の算出部が算出した省電力モード移行率が低いほど、且つ前記第2の算出部が算出した平均通信距離が短いほど大きくなる判定値が最大となる計算ノードを、投入された前記ジョブを割り当てる計算ノードとして特定させ、
    前記ジョブ割当装置が有する割当部に、前記特定部が特定した計算ノードに新規ジョブを割り当てさせることを特徴とするジョブ割当プログラム。
JP2008067714A 2008-03-17 2008-03-17 ジョブ割当装置、並列計算機システム、ジョブ割当方法、及び、ジョブ割当プログラム Expired - Fee Related JP5211778B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008067714A JP5211778B2 (ja) 2008-03-17 2008-03-17 ジョブ割当装置、並列計算機システム、ジョブ割当方法、及び、ジョブ割当プログラム
US12/405,441 US9075658B2 (en) 2008-03-17 2009-03-17 Apparatus and method of assigning jobs to computation nodes based on a computation node's power saving mode transition rate

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008067714A JP5211778B2 (ja) 2008-03-17 2008-03-17 ジョブ割当装置、並列計算機システム、ジョブ割当方法、及び、ジョブ割当プログラム

Publications (2)

Publication Number Publication Date
JP2009223637A JP2009223637A (ja) 2009-10-01
JP5211778B2 true JP5211778B2 (ja) 2013-06-12

Family

ID=41064416

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008067714A Expired - Fee Related JP5211778B2 (ja) 2008-03-17 2008-03-17 ジョブ割当装置、並列計算機システム、ジョブ割当方法、及び、ジョブ割当プログラム

Country Status (2)

Country Link
US (1) US9075658B2 (ja)
JP (1) JP5211778B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4532423B2 (ja) * 2006-03-16 2010-08-25 富士通株式会社 サーバシステム
JP5549131B2 (ja) 2009-07-07 2014-07-16 富士通株式会社 ジョブ割当装置、ジョブ割当方法及びジョブ割当プログラム
GB0919253D0 (en) 2009-11-03 2009-12-16 Cullimore Ian Atto 1
US8589932B2 (en) * 2010-07-02 2013-11-19 International Business Machines Corporation Data processing workload control
JP5648397B2 (ja) 2010-09-28 2015-01-07 富士通株式会社 計算処理システム、そのジョブ分散配置方法及びジョブ分散配置プログラム
US8875276B2 (en) 2011-09-02 2014-10-28 Iota Computing, Inc. Ultra-low power single-chip firewall security device, system and method
US8904216B2 (en) * 2011-09-02 2014-12-02 Iota Computing, Inc. Massively multicore processor and operating system to manage strands in hardware
US9807131B2 (en) * 2013-03-12 2017-10-31 International Business Machines Corporation Collective operation management in a parallel computer
WO2017149838A1 (ja) 2016-02-29 2017-09-08 株式会社オーディオテクニカ 会議システム
CN109076128B (zh) * 2016-02-29 2020-11-27 铁三角有限公司 会议系统
JP2019087113A (ja) * 2017-11-09 2019-06-06 富士通株式会社 制御装置、制御方法及び制御プログラム
JP7124592B2 (ja) * 2018-09-21 2022-08-24 日本電気株式会社 ジョブ実行システムおよびジョブ実行方法
CN113094179B (zh) * 2021-04-23 2024-04-19 曙光信息产业(北京)有限公司 作业分配方法、装置、电子设备及可读存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3302828B2 (ja) * 1994-05-31 2002-07-15 株式会社東芝 1チップコントローラを備えた電子機器
JP3705022B2 (ja) * 1999-07-09 2005-10-12 株式会社日立製作所 低消費電力マイクロプロセッサおよびマイクロプロセッサシステム
TWI262380B (en) * 2002-04-25 2006-09-21 Quanta Comp Inc Dynamic adjustment method for power consumption of computer system
US7039539B2 (en) 2003-10-07 2006-05-02 Hewlett-Packard Development Company, L.P. Rack equipment environmental condition adjustment system and method
US7334142B2 (en) * 2004-01-22 2008-02-19 International Business Machines Corporation Reducing power consumption in a logically partitioned data processing system with operating system call that indicates a selected processor is unneeded for a period of time
JP2005316764A (ja) * 2004-04-28 2005-11-10 Toshiba Corp 情報処理装置および同装置のシステム制御方法
JP3914230B2 (ja) * 2004-11-04 2007-05-16 株式会社東芝 プロセッサシステム及びその制御方法
JP4553307B2 (ja) * 2004-11-19 2010-09-29 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報処理装置、制御方法、及びプログラム
US7793291B2 (en) * 2004-12-22 2010-09-07 International Business Machines Corporation Thermal management of a multi-processor computer system
US7412353B2 (en) * 2005-09-28 2008-08-12 Intel Corporation Reliable computing with a many-core processor
JP4895266B2 (ja) * 2005-12-28 2012-03-14 富士通株式会社 管理システム、管理プログラムおよび管理方法
US20090089792A1 (en) * 2007-09-27 2009-04-02 Sun Microsystems, Inc. Method and system for managing thermal asymmetries in a multi-core processor
US8447993B2 (en) * 2008-01-23 2013-05-21 Palo Alto Research Center Incorporated Integrated energy savings and business operations in data centers
US7953957B2 (en) * 2008-02-11 2011-05-31 International Business Machines Corporation Mapping and distributing parallel algorithms to compute nodes in a parallel computer based on temperatures of the compute nodes in a hardware profile and a hardware independent application profile describing thermal characteristics of each parallel algorithm

Also Published As

Publication number Publication date
US20090235263A1 (en) 2009-09-17
US9075658B2 (en) 2015-07-07
JP2009223637A (ja) 2009-10-01

Similar Documents

Publication Publication Date Title
JP5211778B2 (ja) ジョブ割当装置、並列計算機システム、ジョブ割当方法、及び、ジョブ割当プログラム
US20070250835A1 (en) Grid Computing System, Information Processing Apparatus, Job Execution Request Generating Apparatus, Control Method, and Recording Medium
US8887169B2 (en) Task assignment in cloud computing environment
JP4895266B2 (ja) 管理システム、管理プログラムおよび管理方法
JP5134915B2 (ja) 記憶領域の構成最適化方法、計算機システム及び管理計算機
JP5305664B2 (ja) データ処理システムの区画相互間で資源をトレードするための方法、プログラム及び装置
CN109983419B (zh) 动态能量存储设备放电
CN109165054B (zh) 用于程序代码的预先取出和早执行的系统和方法
KR20140122745A (ko) 칩 멀티프로세서에서 코어-수준 동적 전압과 주파수 스케일링
JP2008158628A (ja) 運用実績評価装置、運用実績評価方法、およびプログラム
KR20160061863A (ko) 이기종 스토리지 및 처리 메커니즘을 갖는 컴퓨팅 시스템 및 그것의 동작 방법
US20160342908A1 (en) Information processing apparatus, visit plan creating method, and storage medium
JPWO2011138972A1 (ja) 情報処理装置、端末、サーバ及びデータ転送方法
JP3782955B2 (ja) 複数の処理システムのコンピューター資源の使用を見積もるシステムおよび方法
US20160117199A1 (en) Computing system with thermal mechanism and method of operation thereof
WO2013171944A1 (ja) 仮想マシン管理システム、仮想マシン管理方法およびプログラム
CN111602308A (zh) 电池状态估计
US10114438B2 (en) Dynamic power budgeting in a chassis
WO2016048919A1 (en) Storage device management in computing systems
CN112230757B (zh) 用于通过腾空cpu和存储器的子集来降低功率的方法和系统
US20200252275A1 (en) Objective driven dynamic object placement optimization
JP4509951B2 (ja) シミュレーション実行制御装置及びプログラム
CN101615066A (zh) 多径数据通信中的节能方法和系统
US8782660B2 (en) Computing system and job allocation method
US20170366436A1 (en) Computer system and method of controlling computer system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101018

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120221

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120423

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130107

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: 20130129

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130211

R150 Certificate of patent or registration of utility model

Ref document number: 5211778

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20160308

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees