JP2006228093A - Pcクラスタ計算機における計算ノードの選択と選択された計算ノードの起動とプログラムの配布スケジューリング処理の方法およびその装置 - Google Patents

Pcクラスタ計算機における計算ノードの選択と選択された計算ノードの起動とプログラムの配布スケジューリング処理の方法およびその装置 Download PDF

Info

Publication number
JP2006228093A
JP2006228093A JP2005043581A JP2005043581A JP2006228093A JP 2006228093 A JP2006228093 A JP 2006228093A JP 2005043581 A JP2005043581 A JP 2005043581A JP 2005043581 A JP2005043581 A JP 2005043581A JP 2006228093 A JP2006228093 A JP 2006228093A
Authority
JP
Japan
Prior art keywords
computer
client
client computer
server computer
cluster
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005043581A
Other languages
English (en)
Inventor
Norihiro Ikeda
憲宏 池田
Takumi Ichimura
匠 市村
Akira Hara
章 原
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to JP2005043581A priority Critical patent/JP2006228093A/ja
Publication of JP2006228093A publication Critical patent/JP2006228093A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】
異種OSを持つパーソナルコンピュータ、性能が異なるパーソナルコンピュータ、サービス提供機が混在する環境においてPCクラスタ計算機を構築する際に、従来の計算ノードの選択方法では、サービス提供機の検出及びクライアントコンピュータの持つOSの適合状態を自動検知し、起動方法の選択をすることができなかった。
【解決手段】
本発明は、サービス提供機の検出機能によりサービス提供機の検出、クライアントコンピュータの持つOSの判定機能により、クライアントコンピュータの起動方法を選択することができる。また、グループ化機能、プログラム配布スケジュール作成機能によりプロセスを最短時間で履行させることができる。
【選択図】 図1

Description

本発明は、PCクラスタ計算機の構成要素である計算ノードとして利用可能な複数のクライアントコンピュータにおいて、各々のクライアントコンピュータの状態に応じてPCクラスタ計算機の要素として利用するかどうかを選択する方式、計算ノードとして選択された各クライアントコンピュータの起動方法の選択方式及び、計算ノードのハードウェア性能、通信速度、プロセスの履行状態の履歴を基にしたグループ作成方式、PCクラスタ計算機として、全体の計算に必要な時間を最小限にするためのプログラム配布スケジュール作成方式に関係する。
PCクラスタ計算機とは、複数のクライアントコンピュータを計算ノードとしてネットワーク上で接続した分散メモリ型並列計算機の一種である。
PCクラスタ計算機の計算ノードとして、使用していないクライアントコンピュータを使用することで、計算処理能力の向上だけではなく、眠っているCPU資源の有効活用ができる。このとき、計算ノードとして使用するクライアントコンピュータとして、計算時に異常終了をしてしまうようなクライアントコンピュータや、ユーザがログイン状態にあるPC(以下ログイン状態のPCと呼ぶ)、他のクライアントコンピュータとネットワークを介して通信を行いサービスを提供するクライアントコンピュータ(以下サービス提供機と呼ぶ)が含まれていてはならない。
その中でも特に計算時に異常終了してしまうようなクライアントコンピュータを事前に検出し計算ノードから除外するための、計算ノードの選択方法としては、マウントが正常に行われているかという点、メモリの空き容量が十分にあるかという点、CPU負荷率の点から計算ノードを選択する特許文献1の方法がある。
計算ノードとしてのクライアントコンピュータの起動方法としては、サーバコンピュータからOSのイメージを転送し、起動する方法(以下ディスクレスブートと呼ぶ)と、クライアントコンピュータのハードディスク上のOSのイメージで起動する方法(以下ローカルブートと呼ぶ)がある。
ディスクレスブートで起動すると、サーバコンピュータからOSのイメージを転送するため、計算ノードとなるクライアントコンピュータのOSが計算ノードとして使用できるOS(以下計算ノード適合OSと呼ぶ)でなくても計算ノードとして起動することが可能であるが、NFS (Network File System)を利用するため、通信によりネットワークに負荷がかかり、ローカルブートで起動したときよりも、計算処理性能が劣ってしまう。
これに対して、ローカルブートで起動する場合は、NFSを使用しないので、ネットワークに負荷がかかることによる計算処理性能の低下はないが、クライアントコンピュータのOSが計算ノード適合OSでない場合は、計算ノードとして利用することができない。
上記の2点から、計算ノード適合OSであるクライアントコンピュータはローカルブート、計算ノード不適合であるOSをもつクライアントコンピュータは、ディスクレスブートで起動することで、可能な限り最適に近い計算処理性能を得ることができる。
特開2003−203061号
計算ノード適合OSであるクライアントコンピュータはローカルブート、計算ノード不適合であるOSをもつクライアントコンピュータはディスクレスブートで起動するためには、ネットワーク上のそれぞれのクライアントコンピュータについて計算ノード適合OSであるか、それとも計算ノード不適合OSなのかを把握できている必要がある。しかし、PCをユーザが自由にカスタマイズできる環境では、PCクラスタ計算機の管理者が、これをすべて把握しておくことは困難である。
従来の方法では、計算途中で異常終了を起こすような状況にある計算ノードを事前に除外することはできるが、ログイン状態のクライアントコンピュータ、サービス提供機の除外はできない。
また、クライアントコンピュータを計算ノードとして起動するとき、同時に起動できる台数には制限がある。このため、起動台数に比例し、全てのクライアントコンピュータが起動を完了するまでの時間も長くなるので、プログラムの配布を全てのクライアントコンピュータが起動を完了するまで待つと、計算ノードとしてクライアントコンピュータを起動し、プログラムを送信し、計算を実行し、結果を受け取る間のプロセスが終了するまでの時間も長くなってしまう。
本発明の目的は、ネットワーク上のクライアントコンピュータに対して、各クライアントコンピュータが持つOSの計算ノードとしての適合状態を自動検知し起動方法を選択する機能、ハードウェアの性能や通信速度やプロセスの履行状態に基づくグループ化機能、プログラム配布スケジュールの作成機能及びその実施機能を提供するものである。
ネットワークに接続されている複数のパーソナルコンピュータを用いてPCクラスタ計算機を構築するために、計算ノードとしての複数のクライアントコンピュータとクライアントコンピュータを管理するサーバコンピュータにおいて、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態および過去の履歴に応じて、クライアントコンピュータをグループごとに分類する手段と、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態および過去の履歴にもとづいて、クライアントコンピュータを自動でグループに追加またはグループから削除する手段と、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態および過去の履歴にもとづいて、グループごとにコンピュータのネットワーク起動する手段と、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態および過去の履歴にもとづいて、グループを構成するクライアントコンピュータに対し、サーバコンピュータからPCクラスタ計算機を構成する計算ノードとしてクライアントコンピュータを起動し、プログラムを送信し、計算を実行し、結果を受け取る間のプロセスを最短時間で履行するクライアントコンピュータのグループを履行前に予測し、PCクラスタ計算機として全体の計算に必要な時間を最小限にするためのプログラム配布スケジュールを作成し、そのスケジュールに基づいて全計算を履行する手段と、クライアントコンピュータにおいてPCクラスタ計算機を構築するOS(Operating System)としての適合状態を自動検知し、検知した結果または過去の起動履歴に応じて、サーバコンピュータから起動するためのOSをネットワークからダウンロードするディスクレスブート方式またはクライアントコンピュータの外部記憶装置に保存されているOSを用いて起動するローカルブート方式を自動で選択する機能を備えたPCクラスタ計算機装置を有する。
計算ノードとしての複数のクライアントコンピュータとクライアントコンピュータを管理するサーバコンピュータにおいて、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態を、サーバコンピュータ内に動作するデータベースに保存する機能と、クライアントコンピュータをグループごとに分類する手段においてデータベースを参照する機能と、グループの構成をサーバコンピュータ内に動作するデータベースに保存する機能と、クライアントコンピュータを自動でグループに追加またはグループから削除する手段においてデータベースを参照する機能と、グループを構成するクライアントコンピュータに対し、サーバコンピュータからPCクラスタ計算機を構成する計算ノードとしてクライアントコンピュータを起動し、プログラムを送信し、計算を実行し、結果を受け取る間のプロセスを最短時間で履行するクライアントコンピュータのグループを履行前に予測し、PCクラスタ計算機として全体の計算に必要な時間を最小限にするためのプログラム配布スケジュールを作成し、そのスケジュールに基づいて全計算を履行する手段において、データベースを参照する機能を備えた請求項1記載のPCクラスタ計算機装置を有する。
クライアントコンピュータにおいてPCクラスタ計算機を構築するOSとしての適合状態を検知する手段において、クライアントコンピュータが停止している場合はネットワークを介してコンピュータを起動し、サーバコンピュータからクライアントコンピュータに信号を送信し、信号を受信したクライアントコンピュータが適合状態を返信する際、クライアントコンピュータの外部記憶装置に保存されているOSを用いて起動可能であることを通知する手段と、クライアントコンピュータの外部装置に保存されているOSを用いて起動が不可能であることを通知する手段と、クライアントコンピュータから通知された信号をサーバコンピュータのデータベースに保存する機能と、データベースに保存された信号にもとづいてサーバコンピュータから起動するためのOSをネットワークからダウンロードするディスクレスブート方式またはクライアントコンピュータの外部記憶装置に保存されているOSを用いて起動するローカルブート方式を自動で選択する機能を備えた請求項1記載のPCクラスタ計算機装置を有する。
サーバコンピュータからPCクラスタ計算機を構成する計算ノードとしてクライアントコンピュータを起動し、プログラムを送信し、計算を実行し、結果を受け取る間のプロセスを最短時間で履行するクライアントコンピュータのグループを履行前に予測する手段、およびPCクラスタ計算機として全体の計算に必要な時間を最小限にするためのプログラム配布スケジュールを作成し、そのスケジュールに基づいて全計算を履行する手段において、すでに起動しているサーバコンピュータおよびクライアントコンピュータにおいて、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態を一定の時間で計測し、計測値の平均値をサーバコンピュータに通知する機能と、サーバコンピュータで受信した平均値の変化の状態にもとづいてプロセスを最短時間で履行するクライアントコンピュータのグループを予測する機能と、PCクラスタ計算機としてプログラム配布スケジュールを作成する機能を備えた請求項1記載のPCクラスタ計算機装置を有する。
ネットワーク上にサービス提供機、ログイン状態のクライアントコンピュータが含まれる場合においても、それらのクライアントコンピュータを事前に検出することで、計算ノードとして使用することが可能なクライアントコンピュータのみを計算ノードとして選択することが可能となる。
クライアントコンピュータのOSを計算ノード適合OSであるか、不適合OSであるかを判定し、計算ノードとして起動するクライアントコンピュータをディスクレスブートかローカルブートのどちらを用いて起動するのかを決定することで、可能な限り最適に近い計算処理性能を得ることが可能となる。
性能の近いクライアントコンピュータをグループ化することで、OSイメージの効率的なマルチキャスト配信ができ、またプログラムの配布スケジュールの作成を容易にすることができる。
計算ノードとしてクライアントコンピュータを起動し、プログラムを送信し、計算を実行し、結果を受け取る間のプロセスを最短で終了させるようなプログラムの配布スケジュールを作成し、実施することができる。
図1は、本発明の1実施例の構成図である。同図に示すようにサーバコンピュータは、ネットワークに接続されているクライアントコンピュータの管理情報を格納するためのデータベース(DB1)、パケット解析機能(F1)とポートスキャン機能(F2)を持つサービス提供機検出機能(F3)、クライアントコンピュータのOS判定機能(F4)、OSイメージ配信機能(F5)、グループ化機能(F6)、プログラム配布スケジュール作成および実施機能(F7)で構成される。
パケット解析機能(F1)は、ネットワーク上に流れるパケットを監視し、サービスを提供する内容のパケットを発見したとき、そのパケットの送信元のクライアントコンピュータがサービス提供機であるとみなす。ポートスキャン機能(F2)は、パケット解析で検出されたサービス提供機以外のクライアントコンピュータに対して、ポートスキャンを行い開いているポート確認する。このとき、サービスを提供するためのポートが開いていた場合、そのクライアントコンピュータはサービス提供機であるとみなす。これらの機能を用いてサービス提供機の検出を行うのがサービス提供機検出機能(F3)である。また、検出したサービス提供機の情報は管理情報データベース(DB1)に格納する。
クライアントコンピュータのOS判定機能(F4)は、クライアントコンピュータのOSの適合状態を検知し、起動方法の選択を行う機能である。また、選択した起動方法を、管理情報データベース(DB1)に格納する。
OSイメージ配信機能(F5)は、ディスクレスブートで起動する計算ノードに対して、計算ノード適合OSのイメージを配信する機能である。ここでは、OSイメージの配信にはマルチキャストによる配信を用いる。
グループ化機能(F6)は、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態にもとづいてグループを構成する。また、グループの構成を管理情報データベース(DB1)に格納する。
プログラム配布スケジュール作成機能(F7)は、グループ化機能(F6)によって構成されたグループに対する評価値を求め、その評価値の小さいグループから起動されるようなスケジュールを作成する機能である。
管理情報データベース(DB1)は、ネットワーク上のPCの起動方法とその履歴、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態および過去の履歴、グループの構成を格納している。これらの情報はサービス提供機検出機能やクライアントコンピュータのOS判定機能やグループ化機能により定期的に更新される。
図2を用いてPCクラスタ計算機の起動準備に移るまでのサーバコンピュータの処理について説明をする。サーバコンピュータは、クライアントコンピュータのOSが計算ホスト適合OSであるかどうかを判定し、管理情報データベース(DB1)に格納する情報を取得しグループ化を行うプログラム、サービス提供機の検出を行うプログラムを起動(Step21)、(Step22)し、PCクラスタ計算機の起動要求があるまで待機(Step23)する。その後PCクラスタ計算機の起動要求を受けると、(Step21)、(Step22)で起動したプログラムを終了させ(Step24)、起動スケジュールを作成するプログラムを起動(Step25)した後、PCクラスタ計算機の起動処理の制御を行うプログラムを起動(Step26)する。その後、PCクラスタ計算機の終了を確認(Step27)すると(Step21)に戻る。
図3を用いてクライアントコンピュータのOSの判定、管理情報データベース(DB1)に格納する情報を取得、グループ化を行うプログラムの説明を行う。まず、電源の入っていないクライアントコンピュータをディスクレスブートで起動する(Step31)。次にクライアントコンピュータから中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、プロセス履行状態の情報を取得し、管理情報データベース(DB1)に格納(Step32)する。その情報と過去の記録をもとに同一の性能を持つクライアントコンピュータからなるグループを作成する(Step33)。このとき、サーバコンピュータとの通信速度、メモリの占有率が過去の記録と異なるものについては現在のグループから削除し、適切なグループに追加する。
グループ化は同程度の性能を持つクライアントコンピュータを集めて1つのグループとする。また、サービス提供機は、起動不可のグループに追加される。クライアントコンピュータをグループ化するのは、同時に起動しているクライアントコンピュータの起動完了までの時間のばらつきをなくすためである。
サーバコンピュータとの通信速度は、サーバコンピュータとクライアントコンピュータ間で一定のサイズのファイルの転送を行うことで得られる転送速度とする。
次に、クライアントコンピュータのOSの情報を確認する(Step34)。その情報から、計算ノード適合OSではないと判断されたときは、そのクライアントコンピュータの起動方法をディスクレスブートとする(Step37)。計算ノード適合OSであると判断された場合は、そのクライアントコンピュータの起動方法をローカルブートとする(Step36)。次に決定した起動方法をデータベースに保存する(Step37)。次に起動したクライアントコンピュータをシャットダウン(Step39)し、起動する時間まで待機 (Step310)した後、(Step31)に戻る。
クライアントコンピュータのOSの判定、管理情報データベース(DB1)に格納するための情報を取得、グループ化を行うプログラムは、サーバコンピュータからプログラム終了の指示を受け取った場合、現在実行しているステップを実行し終わったら後、すぐに終了する。このプログラムで得た起動方法に関する情報は図1の管理情報データベース(DB1)に格納される。
図4を用いてサービス提供機検出プログラムの説明をする。まず、ネットワーク上のパケットを取得(Step41)し、取得したパケットの解析を行う(Step42)、その解析結果からサービス提供機を検出した場合は、検出したサービス提供機を図1の管理情報データベース(DB1)に格納する(Step44)。次にサーバコンピュータからプログラム終了の指示がなければ、次回の起動時間まで待機(Step46)する。終了の指示があれば、管理情報DBに含まれているサービス提供機以外のPCに対してポートスキャンを行い(Step47)サービス提供機を検出した場合には、検出したサービス提供機を管理情報データベース(DB1)に格納(Step49)し終了する。
パケット解析を行ったうえでポートスキャンを行うのは、パケット解析で検出することができなかったサービス提供機をポートスキャンで発見するためである。このように、2段階でサービス提供機検出を行うことで精度を高めることができる。
図5を用いてプログラム配布スケジュールを作成するプログラムの説明をする。まず、実行しようとするプログラムの大きさを求める(Step51)。次にデータベースから、グループに関する情報を取得する(Step52)。次にグループごとの評価値を求める(Step53)。次に評価値の小さいグループから起動するようなスケジュールを作成する(Step54)。
グループの評価値は「数式1」によって求める。
Figure 2006228093
ここで、Vkはグループkの評価値、tkはグループkが起動開始から起動完了までにかかった時間、wはプログラムの大きさ、Nkはグループkに含まれるクライアントコンピュータの台数である。Pk,iは中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度から得られるグループkに含まれるクライアントコンピュータiの性能とする。αはパラメータである。
PCクラスタ計算機を起動する際に、クライアントコンピュータを計算ノードとして起動する
処理を制御するプログラムを、図6を用いて説明する。この起動処理を制御するプログラムでは、起動の終了したグループを格納するリスト、未起動のクライアントコンピュータを格納するリスト、起動済みのクライアントコンピュータを格納するリストの3つを利用する。これらのリストをここでは、リスト1、リスト2、リスト3と呼ぶ。まず、リスト3を初期化する(Step61)。次にリスト1,2を初期化する(Step62)。次に起動グループを決定し、そのグループに含まれるクライアントコンピュータをリスト1に追加する(Step62)。次にあらかじめ定められた同時起動可能台数を越えないように、リスト1に含まれるクライアントコンピュータに対して、起動処理を行うプログラムと起動の管理を行うプログラムを起動する(Step64)。起動を管理するプログラムから起動完了の通知を受け取った場合には、起動完了したクライアントコンピュータについてリスト1からの削除及びリスト2への追加を行い、また、起動完了までにかかった時間を管理情報データベース(DB1)に記録する(Step66)。起動処理を行うプログラムから起動不可の通知を受け取った場合には、起動が不可であると判断されたクライアントコンピュータをリスト2に追加(Step68)し、起動の管理をするプログラムを終了させる(Step610)。次に、リスト2に起動グループ内のクライアントコンピュータが全て含まれる場合は、リスト3に起動が終了したグループを追加する(Step611)。そうでない場合は、(Step64)に戻る。次に、プログラムがすでに配布されているかを調べ、プログラムがすでに配布されていて、まだ終了していないときは、起動完了したグループを、PCクラスタ計算機を構成する計算ノードとして追加する(Step615)。プログラムの実行がすでに終了していればクライアントコンピュータの起動を制御するプログラムを終了する。プログラムがまだ配布されていなければ、起動が完了したグループにプログラムを配布する(Step613)。次にリスト3に全てのグループが含まれる場合は、計算ノードの起動処理を制御するプログラムを終了する。全てのグループが含まれてはいない場合は、(Step62)へ戻る。
図7を用いて、計算ノードとしてクライアントコンピュータを起動するプログラムを説明する。まず、クライアント計算機がすでに電源が投入済みであり、なおかつログイン状態にある場合には、起動処理を制御するプログラムに起動不可の通知を送り(Step74) プログラムを終了する。電源が投入されていない場合には、計算ホストの起動方法を決定し(Step73)、それが、ディスクレスブートであればWake On Lanで電源を投入しディスクレスブートで起動し(Step78) プログラムを終了する。起動方法がローカルブートであれば、Wake On Lanで電源を投入しローカルブートで起動し(Step79)プログラムを終了する。電源が投入済みであり、ユーザがログインしていない場合には、現在起動しているOSが計算ノード適合OSであればプログラムを終了し、そうでなければ起動方法を決定し(Step77))、決定した起動方法が、ディスクレスブートであればクライアントコンピュータをリブートし、ディスクレスブートで起動しプログラムを終了する。ローカルブートであれば、クライアントコンピュータをリブートし、ローカルブートで計算ノード適合OSを起動させプログラムを終了する。
図8を用いてクライアントコンピュータの起動管理プログラムを説明する。まず、管理しているクライアントコンピュータのレスポンスがあれば、起動中のOSが計算ノード適合OSであるかを確認し、計算ノード適合OSであれば起動処理を制御するプログラムに起動完了の通知を行い(Step84)終了する。レスポンスがなければレスポンスがあるまで待機(Step83)する。
上記のクライアントコンピュータの起動に係わるプログラムは、起動グループの決定や起動方法を決定する際には、図1の管理情報データベース(DB1)に格納されている情報を参考にする。また、計算ノードの起動処理を行うプログラムは、管理情報データベース(DB1)内に起動方法に関する情報を持たない計算ノードは、ディスクレスブートで起動するものとする。
上記のクライアントコンピュータの起動に係わるプログラムの概観を、図9を基に説明する。サーバコンピュータによって起動されたクライアントコンピュータの起動処理を制御するプログラムは、クライアントコンピュータ一台につき起動処理プログラム、起動管理プログラムを1つずつ起動する。起動管理プログラムは起動処理プログラムが起動処理を行っているクライアントコンピュータを管理し、起動の完了を確認すると、起動完了の通知を、起動処理を制御するプログラムに送る。また、起動処理プログラムはユーザがログインしていて起動処理が行えないクライアントコンピュータを確認すると起動不可の通知を、起動処理を制御するプログラムに通知する。また、図9に示すように、それぞれのプログラムが独立に動作することで、計算ノードの異常や起動時間の違いなどによって影響を受けることを防ぐことができるようになる。
なお、本実施の形態では、計算ノード不適合OSを持つクライアントコンピュータ、性能が異なるクライアントコンピュータ、サービス提供機が混在する環境において、PCクラスタ計算機の構築を容易にするとともに、計算ノードとしてクライアントコンピュータを起動し、プログラムを送信し、計算を実行し、結果を受け取る間のプロセスの終了までの時間を最短にすることができる。
異種OSを持つパーソナルコンピュータ、性能が異なるパーソナルコンピュータ、サービス提供機が混在する情報処理センターや研究室などの施設において、容易にPCクラスタ計算機の構築及びPCクラスタ計算機の利用が可能となる。
本発明の一実施例の構成図 PCクラスタ計算機の起動準備に移るまでのサーバコンピュータの処理に関するプログラムのフローチャート クライアントコンピュータのOSの判定、管理情報データベース(DB1)に格納する情報を取得、グループ化を行うプログラムのフローチャート サービス提供機を検出するプログラムのフローチャート プログラム配布スケジュールを作成するプログラムのフローチャート PCクラスタ計算機を起動する際に、クライアントコンピュータを計算ノードとして起動する処理を制御するプログラムのフローチャート クライアントコンピュータを計算ノードとして起動する処理を行うプログラムのフローチャート クライアントコンピュータの起動管理を行うプログラムのフローチャート クライアントコンピュータの起動に係わるプログラムの概観図
符号の説明
F1 パケット解析機能
F2 ポートスキャン機能
F3 サービス機検出機能
F4 クライアントコンピュータのOS判定機能
F5 OSイメージ配信機能
F6 グループ化機能
F7 プログラム起動スケジュール作成機能
DB1 管理情報データベース

Claims (4)

  1. ネットワークに接続されている複数のパーソナルコンピュータを用いてPCクラスタ計算機を構築するために、計算ノードとしての複数のクライアントコンピュータとクライアントコンピュータを管理するサーバコンピュータにおいて、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態および過去の履歴に応じて、クライアントコンピュータをグループごとに分類する手段と、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態および過去の履歴にもとづいて、クライアントコンピュータを自動でグループに追加またはグループから削除する手段と、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態および過去の履歴にもとづいて、グループごとにコンピュータをネットワーク起動する手段と、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態および過去の履歴にもとづいて、グループを構成するクライアントコンピュータに対し、サーバコンピュータからPCクラスタ計算機を構成する計算ノードとしてクライアントコンピュータを起動し、プログラムを送信し、計算を実行し、結果を受け取る間のプロセスを最短時間で履行するクライアントコンピュータのグループを履行前に予測し、PCクラスタ計算機として全体の計算に必要な時間を最小限にするためのプログラム配布スケジュールを作成し、そのスケジュールに基づいて全計算を履行する手段と、クライアントコンピュータにおいてPCクラスタ計算機を構築するOS(Operating System)としての適合状態を自動検知し、検知した結果または過去の起動履歴に応じて、サーバコンピュータから起動するためのOSをネットワークからダウンロードするディスクレスブート方式またはクライアントコンピュータの外部記憶装置に保存されているOSを用いて起動するローカルブート方式を自動で選択する機能を備えたPCクラスタ計算機装置。
  2. 計算ノードとしての複数のクライアントコンピュータとクライアントコンピュータを管理するサーバコンピュータにおいて、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態を、サーバコンピュータ内に動作するデータベースに保存する機能と、クライアントコンピュータをグループごとに分類する手段においてデータベースを参照する機能と、クライアントコンピュータを自動でグループに追加またはグループから削除する手段においてデータベースを参照する機能と、グループの構成をサーバコンピュータ内に動作するデータベースに保存する機能と、グループを構成するクライアントコンピュータに対し、サーバコンピュータからPCクラスタ計算機を構成する計算ノードとしてクライアントコンピュータを起動し、プログラムを送信し、計算を実行し、結果を受け取る間のプロセスを最短時間で履行するクライアントコンピュータのグループを履行前に予測し、PCクラスタ計算機として全体の計算に必要な時間を最小限にするためのプログラム配布スケジュールを作成し、そのスケジュールに基づいて全計算を履行する手段において、データベースを参照する機能を備えた請求項1記載のPCクラスタ計算機装置。
  3. クライアントコンピュータにおいてPCクラスタ計算機を構築するOSとしての適合状態を検知する手段において、クライアントコンピュータが停止している場合はネットワークを介してコンピュータを起動し、サーバコンピュータからクライアントコンピュータに信号を送信し、信号を受信したクライアントコンピュータが適合状態を返信する際、クライアントコンピュータの外部記憶装置に保存されているOSを用いて起動可能であることを通知する手段と、クライアントコンピュータの外部装置に保存されているOSを用いて起動が不可能であることを通知する手段と、クライアントコンピュータから通知された信号をサーバコンピュータのデータベースに保存する機能と、データベースに保存された信号にもとづいてサーバコンピュータから起動するためのOSをネットワークからダウンロードするディスクレスブート方式またはクライアントコンピュータの外部記憶装置に保存されているOSを用いて起動するローカルブート方式を自動で選択する機能を備えた請求項1記載のPCクラスタ計算機装置。
  4. サーバコンピュータからPCクラスタ計算機を構成する計算ノードとしてクライアントコンピュータを起動し、プログラムを送信し、計算を実行し、結果を受け取る間のプロセスを最短時間で履行するクライアントコンピュータのグループを履行前に予測する手段、およびPCクラスタ計算機として全体の計算に必要な時間を最小限にするためのプログラム配布スケジュールを作成し、そのスケジュールに基づいて全計算を履行する手段において、すでに起動しているサーバコンピュータおよびクライアントコンピュータにおいて、クライアントコンピュータの中央処理装置の性能、メモリの占有率、NIC(Network Interface Card)のハードウェアの通信速度、サーバコンピュータとの通信速度、サーバコンピュータ及びクライアントコンピュータのプロセス履行状態を一定の時間で計測し、計測値の平均値をサーバコンピュータに通知する機能と、サーバコンピュータで受信した平均値の変化の状態にもとづいてプロセスを最短時間で履行するクライアントコンピュータのグループを予測する機能と、PCクラスタ計算機としてプログラム配布スケジュールを作成する機能を備えた請求項1記載のPCクラスタ計算機装置。
JP2005043581A 2005-02-21 2005-02-21 Pcクラスタ計算機における計算ノードの選択と選択された計算ノードの起動とプログラムの配布スケジューリング処理の方法およびその装置 Pending JP2006228093A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005043581A JP2006228093A (ja) 2005-02-21 2005-02-21 Pcクラスタ計算機における計算ノードの選択と選択された計算ノードの起動とプログラムの配布スケジューリング処理の方法およびその装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005043581A JP2006228093A (ja) 2005-02-21 2005-02-21 Pcクラスタ計算機における計算ノードの選択と選択された計算ノードの起動とプログラムの配布スケジューリング処理の方法およびその装置

Publications (1)

Publication Number Publication Date
JP2006228093A true JP2006228093A (ja) 2006-08-31

Family

ID=36989403

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005043581A Pending JP2006228093A (ja) 2005-02-21 2005-02-21 Pcクラスタ計算機における計算ノードの選択と選択された計算ノードの起動とプログラムの配布スケジューリング処理の方法およびその装置

Country Status (1)

Country Link
JP (1) JP2006228093A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008111448A1 (ja) * 2007-03-09 2008-09-18 Nec Corporation サーバ機能切替え装置、方法及びプログラム、並びにシンクライアントシステム及びサーバ装置
JP2012514791A (ja) * 2009-01-07 2012-06-28 ソニー株式会社 並列タスクアプリケーションフレームワーク
JP2012170154A (ja) * 2012-06-11 2012-09-06 Nakayo Telecommun Inc サーバ機能を選択可能な電話端末
JP2017091318A (ja) * 2015-11-12 2017-05-25 富士通株式会社 処理分散制御装置、処理分散制御方法および処理分散制御プログラム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008111448A1 (ja) * 2007-03-09 2008-09-18 Nec Corporation サーバ機能切替え装置、方法及びプログラム、並びにシンクライアントシステム及びサーバ装置
JPWO2008111448A1 (ja) * 2007-03-09 2010-06-24 日本電気株式会社 サーバ機能切替え装置、方法及びプログラム、並びにシンクライアントシステム及びサーバ装置
JP5201366B2 (ja) * 2007-03-09 2013-06-05 日本電気株式会社 サーバ機能切替え装置、方法及びプログラム、並びにシンクライアントシステム及びサーバ装置
US9703571B2 (en) 2007-03-09 2017-07-11 Nec Corporation Server function switching device, method and program, and thin client system and server device
JP2012514791A (ja) * 2009-01-07 2012-06-28 ソニー株式会社 並列タスクアプリケーションフレームワーク
JP2012170154A (ja) * 2012-06-11 2012-09-06 Nakayo Telecommun Inc サーバ機能を選択可能な電話端末
JP2017091318A (ja) * 2015-11-12 2017-05-25 富士通株式会社 処理分散制御装置、処理分散制御方法および処理分散制御プログラム

Similar Documents

Publication Publication Date Title
US9729488B2 (en) On-demand mailbox synchronization and migration system
JP6005706B2 (ja) 異種移動環境用の仮想マシンモーフィング
US8959217B2 (en) Managing workloads and hardware resources in a cloud resource
US9288147B2 (en) Dynamically balancing resources in a server farm
JP4738144B2 (ja) 情報監視方法、システム及びプログラム
WO2020253079A1 (zh) 基于Jmeter的分布式性能测试方法、装置、设备及存储介质
US20190034422A1 (en) Data migration method and apparatus
US10289441B1 (en) Intelligent scale-out federated restore
JP2005056391A (ja) コンピューティング環境の作業負荷を均衡させる方法およびシステム
CN110149409B (zh) 云主机元数据服务管理方法、***、设备及存储介质
US9596189B1 (en) Virtual machine management
US9979780B1 (en) Method and apparatus for selection between multiple candidate clouds for job processing
JP2012088808A (ja) 仮想マシン制御装置、仮想マシン制御プログラムおよび仮想マシン制御方法
US20180176289A1 (en) Information processing device, information processing system, computer-readable recording medium, and information processing method
CN111176803A (zh) 业务处理方法、装置、服务器及存储介质
JP2006228093A (ja) Pcクラスタ計算機における計算ノードの選択と選択された計算ノードの起動とプログラムの配布スケジューリング処理の方法およびその装置
CN111506388B (zh) 容器性能探测方法、容器管理平台及计算机存储介质
TWI507889B (zh) 用於保留及執行本機計算裝置的影像寫入之管理節點、方法、機器可存取媒體及系統
JP6279816B2 (ja) ストレージ監視システムおよびその監視方法
US10635997B1 (en) Finite life instances
JP5632403B2 (ja) タスク管理システム、タスク管理サーバ、タスク管理方法、及びタスク管理プログラム
JP2013134658A (ja) コンピュータネットワークシステム、構成管理方法、構成管理プログラム、記録媒体
JP7030412B2 (ja) 情報処理システム、及び制御方法
US10860347B1 (en) Virtual machine with multiple content processes
JP4208494B2 (ja) ネットワークサーバへの負荷テストシステム