(57)【特許請求の範囲】
【請求項１】
コンピュータに、
複数のジョブを実行した第１情報処理装置から取得した、前記第１情報処理装置の温度の情報に基づき、ジョブを実行した場合における温度の変化量である第１変化量の情報を前記複数のジョブの各々について生成し、
前記複数のジョブのうち特定のジョブを実行した複数の第２情報処理装置の各々から取得した、当該第２情報処理装置の温度の情報に基づき、前記特定のジョブを実行した場合における温度の変化量である第２変化量の情報を前記複数の第２情報処理装置の各々について生成し、
前記複数の第２情報処理装置の温度の情報と、前記複数のジョブの各々についての前記第１変化量の情報と、前記複数の第２情報処理装置の各々についての前記第２変化量の情報とに基づき、前記複数のジョブの各々を前記複数の第２情報処理装置のいずれに割り当てるか決定する、
処理を実行させるジョブ割当プログラム。
【請求項２】
前記複数の第２情報処理装置のいずれに割り当てるか決定する処理において、
前記複数のジョブの各々について、前記複数の第２情報処理装置のうち温度が低い順で上位所定順位以内又は上位所定数以下の第２情報処理装置を特定し、特定された当該第２情報処理装置の中から、前記第２変化量に基づき、当該ジョブが割り当てられる第２情報処理装置を決定する
ことを特徴とする請求項１記載のジョブ割当プログラム。
【請求項３】
前記複数の第２情報処理装置のいずれに割り当てるか決定する処理において、
前記複数のジョブの各々について、前記複数の第２情報処理装置のうち最も温度が低い第２情報処理装置の当該温度との差が所定値以内である温度の第２情報処理装置を特定し、特定された当該第２情報処理装置の中から、前記第２変化量に基づき、当該ジョブが割り当てられる第２情報処理装置を決定する
ことを特徴とする請求項１記載のジョブ割当プログラム。
【請求項４】
前記複数のジョブの各々について、当該ジョブについての前記第１変化量を、当該ジョブを割り当てられる第２情報処理装置の温度に加算した値で、当該ジョブを割り当てられる第２情報処理装置の温度の情報を更新する、
処理をさらに実行させる請求項２又は３記載のジョブ割当プログラム。
【請求項５】
前記第１の情報処理装置から、開始時刻及び終了時刻の情報を前記複数のジョブの各々について取得する
処理をさらに実行させ、
前記第１変化量を前記複数のジョブの各々について生成する処理において、
前記複数のジョブの各々について、当該ジョブの開始時刻における前記第１の情報処理装置の温度と当該ジョブの終了時刻における前記第１の情報処理装置の温度との差を算出することにより、前記第１変化量を生成する
ことを特徴とする請求項１乃至４のいずれか１つ記載のジョブ割当プログラム。
【請求項６】
前記第１情報処理装置の温度の情報は、前記第１情報処理装置におけるプロセッサの温度の情報と前記第１情報処理装置における記憶装置の温度の情報とに基づき生成された情報である
ことを特徴とする請求項１乃至５のいずれか１つ記載のジョブ割当プログラム。
【請求項７】
前記第１情報処理装置から、前記プロセッサの使用率の情報と前記記憶装置に対する入出力の使用率の情報とを取得する、
処理をさらに実行させ、
前記第１変化量の情報を前記複数のジョブの各々について生成する処理において、
前記第１情報処理装置の温度の情報と、前記プロセッサの使用率の情報と、前記記憶装置に対する入出力の使用率の情報とに基づき、ジョブを実行した場合における温度の変化量である第１変化量の情報を前記複数のジョブの各々について生成する、
ことを特徴とする請求項６記載のジョブ割当プログラム。
【請求項８】
前記複数のジョブの実行が完了した場合、前記複数の第２情報処理装置の各々から、前記第２の情報処理装置の温度の情報を取得し、
取得した前記複数の第２情報処理装置の温度と、更新後の前記複数の第２情報処理装置の温度との差についての情報を生成し、生成された当該差についての情報を出力する
処理をさらに実行させる請求項４記載のジョブ割当プログラム。
【請求項９】
コンピュータが、
複数のジョブを実行した第１情報処理装置から取得した、前記第１情報処理装置の温度の情報に基づき、ジョブを実行した場合における温度の変化量である第１変化量の情報を前記複数のジョブの各々について生成し、
前記複数のジョブのうち特定のジョブを実行した複数の第２情報処理装置の各々から取得した、当該第２情報処理装置の温度の情報に基づき、前記特定のジョブを実行した場合における温度の変化量である第２変化量の情報を前記複数の第２情報処理装置の各々について生成し、
前記複数の第２情報処理装置の温度の情報と、前記複数のジョブの各々についての前記第１変化量の情報と、前記複数の第２情報処理装置の各々についての前記第２変化量の情報とに基づき、前記複数のジョブの各々を前記複数の第２情報処理装置のいずれに割り当てるか決定する、
処理を実行するジョブ割当方法。
【請求項１０】
複数のジョブを実行した第１情報処理装置から取得した、前記第１情報処理装置の温度の情報に基づき、ジョブを実行した場合における温度の変化量である第１変化量の情報を前記複数のジョブの各々について生成する第１生成部と、
前記複数のジョブのうち特定のジョブを実行した複数の第２情報処理装置の各々から取得した、当該第２情報処理装置の温度の情報に基づき、前記特定のジョブを実行した場合における温度の変化量である第２変化量の情報を前記複数の第２情報処理装置の各々について生成する第２生成部と、
前記複数の第２情報処理装置の温度の情報と、前記複数のジョブの各々についての前記第１変化量の情報と、前記複数の第２情報処理装置の各々についての前記第２変化量の情報とに基づき、前記複数のジョブの各々を前記複数の第２情報処理装置のいずれに割り当てるか決定する決定部と、
を有するコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジョブの割当技術に関する。
【背景技術】
【０００２】
サーバの高密度化及び高性能化などに伴い、データセンタにおいて消費される電力量が増加しており、消費電力量の増加が発熱量の増加をもたらしている。発熱量の増加による温度上昇はサーバの熱暴走や故障を発生させるため、データセンタの安定稼働を阻害する原因になり、また、サーバの寿命を短くするといった弊害をもたらす。
【０００３】
上記の問題を解決するため、サーバが配置されたサーバルーム等には空調機が導入される。しかしながら、空調機によって発生する空気の流れが行き届きにくい場所においては、高温の空気が滞る現象（以下、熱だまりと呼ぶ）が発生することがある。この現象について図１を用いて説明する。図１の例においては、サーバルームにサーバＡ乃至Ｐと空調機とが設置されている。空調機は送風によってサーバルーム内の温度を低下させる。サーバＡ乃至Ｐはジョブを実行する。
【０００４】
空調機から比較的近い場所に設置されているサーバＡ乃至Ｈは、空調機から送られてきた強い風の流れによって冷却されるため、サーバＡ乃至Ｈの周辺においては熱だまりが発生しにくい。しかし、空調機から比較的遠い場所に設置されているサーバＩ乃至Ｐは、空調機から送られてくる風が弱いため冷却されにくい。特に、サーバＩ乃至Ｐの周辺のうち空調機から最も遠い場所には空調機からの風が行き届きにくいため、熱だまりが発生する。
【０００５】
このように、サーバの設置場所の違いによって温度の上がりやすさに違いが生じる。また、温度の上がりやすさの違いは、常駐の基本ソフトウエア等による処理負荷の違いによっても生じる。前述のとおり、温度上昇は様々な問題を引き起こすため、局所的な温度上昇を生じさせないようにジョブを割り当てるのが好ましい。但し、ジョブの実行を開始した後に温度の上昇を検知したとしても、ジョブを途中で終了させると途中までの実行が無駄になるため、安易にジョブを終了させることはできない。
【０００６】
なお、温度の情報に基づきタスク等の割り当てを行う技術は存在する。例えば、或る文献は、複数のプロセッサの各々について温度を測定し、測定された温度に基づいて複数のプロセッサに対してタスクを割り当てる技術を開示する。
【０００７】
しかしながら、たとえ現状の温度が低いプロセッサにタスクを割り当てるようにしても、例えば温度が上がりやすいプロセッサに処理負荷が大きいタスクを割り当てたような場合には、温度の大幅な上昇を引き起こすことになる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】国際公開第２００３／０８３６９３号
【特許文献２】特開２００６−１３３９９５号公報
【特許文献３】特開２００８−２４２６１４号公報
【特許文献４】特開２０１０−１０８３２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
従って、本発明の目的は、１つの側面では、サーバの温度に基づくジョブ割当を適切に行うための技術を提供することである。
【課題を解決するための手段】
【００１０】
本発明に係るジョブ割当方法は、複数のジョブを実行した第１情報処理装置から取得した、第１情報処理装置の温度の情報に基づき、ジョブを実行した場合における温度の変化量である第１変化量の情報を複数のジョブの各々について生成し、複数のジョブのうち特定のジョブを実行した複数の第２情報処理装置の各々から取得した、当該第２情報処理装置の温度の情報に基づき、特定のジョブを実行した場合における温度の変化量である第２変化量の情報を複数の第２情報処理装置の各々について生成し、複数の第２情報処理装置の温度の情報と、複数のジョブの各々についての第１変化量の情報と、複数の第２情報処理装置の各々についての第２変化量の情報とに基づき、複数のジョブの各々を複数の第２情報処理装置のいずれに割り当てるか決定する処理を含む。
【発明の効果】
【００１１】
１つの側面では、サーバの温度に基づくジョブ割当を適切に行えるようになる。
【図面の簡単な説明】
【００１２】
【図１】図１は、熱だまりの発生について説明するための図である。
【図２】図２は、本実施の形態におけるシステムの概要を示す図である。
【図３】図３は、管理装置の機能ブロック図である。
【図４Ａ】図４Ａは、テストサーバのハードウエア構成の一例を示す図である。
【図４Ｂ】図４Ｂは、テストサーバのハードウエア構成の一例を示す図である。
【図５】図５は、第１データ格納部に格納されるジョブネットデータの一例を示す図である。
【図６】図６は、事前処理部が実行する処理の処理フローを示す図である。
【図７Ａ】図７Ａは、ＣＰＵ温度の時系列データの一例を示す図である。
【図７Ｂ】図７Ｂは、ＨＤＤ温度の時系列データの一例を示す図である。
【図８】図８は、実行実績データの一例を示す図である。
【図９】図９は、ＣＰＵ温度と時間との関係を示す図である。
【図１０】図１０は、第１ＣＰＵデータの一例を示す図である。
【図１１】図１１は、ＨＤＤ温度と時間との関係を示す図である。
【図１２】図１２は、第１ＨＤＤデータの一例を示す図である。
【図１３】図１３は、第１温度データの一例を示す図である。
【図１４】図１４は、事前処理部が実行する処理の処理フローを示す図である。
【図１５】図１５は、第２温度データの一例を示す図である。
【図１６】図１６は、第１サーバデータの一例を示す図である。
【図１７】図１７は、第１の実施の形態における実行管理部が実行する処理の処理フローを示す図である。
【図１８】図１８は、第３データ格納部に格納されるサーバ温度のデータの一例を示す図である。
【図１９】図１９は、第２サーバデータの一例を示す図である。
【図２０】図２０は、第３サーバデータの一例を示す図である。
【図２１】図２１は、第３サーバデータの一例を示す図である。
【図２２】図２２は、第３サーバデータの一例を示す図である。
【図２３】図２３は、第４サーバデータの一例を示す図である。
【図２４】図２４は、フィードバック処理部が実行する処理の処理フローを示す図である。
【図２５】図２５は、第５サーバデータの一例を示す図である。
【図２６】図２６は、第５サーバデータの一例を示す図である。
【図２７】図２７は、サーバ温度と処理負荷との関係を示す図である。
【図２８】図２８は、サーバ温度と処理負荷との関係を示す図である。
【図２９】図２９は、指定データの一例を示す図である。
【図３０】図３０は、第５サーバデータの一例を示す図である。
【図３１】図３１は、ＣＰＵ使用率の時系列データの一例を示す図である。
【図３２】図３２は、ＩＯ使用率の時系列データの一例を示す図である。
【図３３】図３３は、第３の実施の形態における実行管理部が実行する処理の処理フローを示す図である。
【図３４】図３４は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【００１３】
［実施の形態１］
図２に、本実施の形態におけるシステムの概要を示す。データセンタ等におけるサーバルーム５には、ジョブを実行する実行サーバＡ乃至Ｐと、サーバルーム５を冷却するため送風を行う空調機５０とが設置される。実行サーバＡ乃至Ｐは、例えばＬＡＮ（Local Area Network）であるネットワーク７を介して、実行サーバＡ乃至Ｐによるジョブの実行及びテストサーバ３によるジョブの実行を管理する管理装置１に接続される。但し、図を見やすくするため、管理装置１と実行サーバＡ乃至Ｐとの間の結線を省略する。管理装置１には、ネットワーク７を介して、ジョブを実行するテストサーバ３が接続される。なお、図２においては管理装置１がサーバルーム５の外に設置されているが、サーバルーム５の中に設置されてもよい。
【００１４】
図３に、管理装置１の機能ブロック図を示す。管理装置１は、事前処理部１１と、実行管理部１２と、フィードバック処理部１３と、第１データ格納部１４と、第２データ格納部１５と、第３データ格納部１６と、第４データ格納部１７を有する。
【００１５】
事前処理部１１は、第１データ格納部１４に格納されたデータに基づき、テストサーバ３の温度上昇（℃）をジョブネット毎に算出し、算出結果を第２データ格納部１５に格納する。また、事前処理部１１は、第２データ格納部１５に格納されたデータに基づき、予め定められた条件に基づき選択されたジョブネット（以下、基準ジョブネットと呼ぶ）の実行による温度上昇（℃）を実行サーバ毎に算出し、算出結果を第２データ格納部１５に格納する。実行管理部１２は、第２データ格納部１５に格納されたデータに基づき実行サーバＡ乃至Ｐにジョブを割り当てる処理等を実行し、処理結果を第３データ格納部１６に格納する。フィードバック処理部１３は、第３データ格納部１６に格納されたデータに基づき処理を実行し、処理結果を第４データ格納部１７に格納する。
【００１６】
図４Ａに、テストサーバ３のハードウエア構成の一例を示す。テストサーバ３は、ＣＰＵ（Central Processing Unit）３１と、ＣＰＵ３１に取り付けられた温度センサ３１０と、例えばメインメモリであるメモリ３２と、ＨＤＤ（Hard Disk Drive）３３と、ＨＤＤ３３に取り付けられた温度センサ３３０とを有する。ＣＰＵ３１、メモリ３２、及びＨＤＤ３３はバス３０によって接続される。温度センサ３１０はＣＰＵ温度を測定し、温度センサ３３０はＨＤＤ温度を測定する。なお、実行サーバＡ乃至Ｐのハードウエア構成は、テストサーバ３のハードウエア構成と同じである。
【００１７】
なお、温度は測定場所によって値が異なるため、テストサーバ３の温度を表す代表値（以下では、サーバ温度と呼ぶ）を定義する。本実施の形態においては、サーバ温度をｓ＝αｃ＋（１−α）ｈによって算出する。ここで、ｓはサーバ温度であり、ｃはＣＰＵ温度であり、ｈはＨＤＤ温度である。αは０＜α＜１を満たす実数であり、管理者が予め設定する。但し、サーバ温度の算出方法はここで説明した方法に限られるわけではない。実行サーバＡ乃至Ｐについても同様とする。
【００１８】
また、図４Ｂに示すように、サーバ温度の測定用の温度センサを別途設けてもよい。図４Ｂに示すテストサーバ３は、ＣＰＵ３１と、ＣＰＵ３１に取り付けられた温度センサ３１０と、メモリ３２と、ＨＤＤ３３と、温度センサ３３０と、サーバ温度を測定する温度センサ３４とを有する。ＣＰＵ３１、メモリ３２、ＨＤＤ３３、及び温度センサ３４はバス３０によって接続される。但し、温度センサ３４を設置する場所は、図４Ｂに示したような場所に限られるわけではない。
【００１９】
なお、実行サーバＡ乃至Ｐのハードウエア構成は、テストサーバ３のハードウエア構成と同じである。
【００２０】
図５に、第１データ格納部１４に格納されるジョブネットデータの一例を示す。図５の例では、ジョブネット名と、ジョブ名と、バッチファイル名とが格納される。ジョブネットとは、実行順序が決まっている複数のジョブの集まりのことである。例えばジョブネット「ｎｅｔＡ」は、ジョブ「ｊｏｂＡ」とジョブ「ｊｏｂＢ」とを含む。なお、第１データ格納部１４には、事前処理における実行スケジュール及び実際の実行スケジュールも格納される。
【００２１】
次に、図６乃至図３０を用いて、管理装置１が実行する処理について説明する。まず、管理装置１の事前処理部１１が温度上昇をジョブネット毎に算出する処理について説明する。
【００２２】
事前処理部１１は、第１データ格納部１４から、事前処理における実行スケジュール及びジョブネットデータを読み出す（図６：ステップＳ１）。
【００２３】
事前処理部１１は、各ジョブネットの実行要求を、事前処理における実行スケジュールどおりにテストサーバ３に送信する（ステップＳ３）。テストサーバ３がジョブ実行用のバッチファイルを有していない場合には、実行要求はジョブ実行用のバッチファイルを含む。なお、事前処理においては、複数のジョブネットが並行して実行されることはないものとする。また、或るジョブネットを実行した後、次のジョブネットを実行するまでの時間を十分に確保することにより、テストサーバ３の温度が下がりきった状態でジョブネットの実行を開始してもよい。
【００２４】
テストサーバ３は、ジョブネットを実行する。テストサーバ３における温度センサ３１０及び温度センサ３３０は、ＣＰＵ温度及びＨＤＤ温度を定期的に（例えば１秒毎に）計測しており、テストサーバ３は、計測されたＣＰＵ温度及びＨＤＤ温度のデータを管理装置１に送信する。なお、テストサーバ３は、ＣＰＵ温度のデータ及びＨＤＤ温度のデータを、ジョブネット毎に一括して送信してもよい。また、テストサーバ３は、各ジョブの開始時刻及び終了時刻の情報を含む実行実績データを管理装置１に送信する。
【００２５】
事前処理部１１は、ＣＰＵ温度のデータ及びＨＤＤ温度のデータ並びに実行実績データをテストサーバ３から順次取得する。そして、事前処理部１１は、ＣＰＵ温度の時系列データ及びＨＤＤ温度の時系列データを生成し（ステップＳ５）、ＣＰＵ温度の時系列データ及びＨＤＤ温度の時系列データ並びに実行実績データを第２データ格納部１５に格納する。
【００２６】
図７Ａに、第２データ格納部１５に格納される、ＣＰＵ温度の時系列データの一例を示す。図７Ａの例では、１秒毎に計測されたＣＰＵ温度のデータが格納される。
【００２７】
図７Ｂに、第２データ格納部１５に格納される、ＨＤＤ温度の時系列データの一例を示す。図７Ｂの例では、１秒毎に計測されたＨＤＤ温度のデータが格納される。
【００２８】
図８に、第２データ格納部１５に格納される実行実績データの一例を示す。図８の例では、ジョブ毎に開始時刻と終了時刻とが格納される。
【００２９】
図６の説明に戻り、事前処理部１１は、第２データ格納部１５に格納された、ＣＰＵ温度の時系列データ及びＨＤＤ温度の時系列データ並びに実行実績データに基づき、各ジョブについて、ＣＰＵの温度上昇（℃）及びＨＤＤの温度上昇（℃）を算出する（ステップＳ７）。
【００３０】
ここで、ステップＳ７の処理について説明する。例えば、或るジョブネット（ここでは、ジョブネットＪとする）の実行を開始したところ、図９に示すようにＣＰＵ温度が上昇したとする。図９において、縦軸はＣＰＵの温度上昇を表し、横軸はジョブネットＪの実行を開始してから経過した時間（単位は秒）を表す。図９の例においては、ジョブＡはジョブネットＪの実行開始の時点から１０秒間実行され、ジョブＢはジョブネットＪの実行開始の時点から２０秒間実行され、ジョブＣはジョブネットＪの実行開始の時点から３０秒間実行され、ジョブＤはジョブネットＪの実行開始から３０秒経過した時点から１０秒間実行される。
【００３１】
図９の例の場合、ジョブネットＪの実行開始の時点から１０秒間において（０．６−０．０）℃温度が上昇しているので、以下のような式が成立する。但し、ＣAはジョブＡの実行によるＣＰＵの温度上昇を表し、ＣBはジョブＢの実行によるＣＰＵの温度上昇を表し、ＣCはジョブＣの実行によるＣＰＵの温度上昇を表し、ＣDはジョブＤの実行によるＣＰＵの温度上昇を表す。また、図９に示した期間については、排熱による温度の低下については無視できるものとする。
【００３２】
【数１】
0006384321.tif 000002
【００３３】
ジョブネットＪの実行開始の時点から１０秒経過した時点から１０秒間においては（１．０−０．６）℃温度が上昇しているので、以下のような式が成立する。
【００３４】
【数２】
0006384321.tif 000003
【００３５】
ジョブネットＪの実行開始の時点から２０秒経過した時点から１０秒間においては（１．２−１．０）℃温度が上昇しているので、以下のような式が成立する。
【００３６】
【数３】
0006384321.tif 000004
【００３７】
ジョブネットＪの実行開始の時点から３０秒経過した時点から１０秒間においては（１．３−１．２）℃温度が上昇しているので、以下のような式が成立する。
【００３８】
【数４】
0006384321.tif 000005
【００３９】
以上の連立方程式を解くことにより、基づきＣA、ＣB、ＣC、及びＣDを求めることができる。この結果として、事前処理部１１は、図１０に示すような第１ＣＰＵデータを生成し、第２データ格納部１５に格納する。図１０の例では、第１ＣＰＵデータは、ジョブネット名と、ジョブ名と、ＣＰＵの温度上昇（℃）とを含む。
【００４０】
同様に、ジョブネットＪの実行を開始したところ、図１１に示すようにＨＤＤ温度が上昇したとする。図１１において、縦軸はＨＤＤの温度上昇を表し、横軸はジョブネットＪの実行を開始してから経過した時間（秒）を表す。
【００４１】
図１１の例の場合、ジョブネットＪの実行開始の時点から１０秒間において（０．８−０．０）℃温度が上昇しているので、以下のような式が成立する。但し、ＨAはジョブＡの実行によるＨＤＤの温度上昇を表し、ＨBはジョブＢの実行によるＨＤＤの温度上昇を表し、ＨCはジョブＣの実行によるＨＤＤの温度上昇を表し、ＨDはジョブＤの実行によるＨＤＤの温度上昇を表す。また、図１１に示した期間については、排熱による温度の低下については無視できるものとする。
【００４２】
【数５】
0006384321.tif 000006
【００４３】
ジョブネットＪの実行開始の時点から１０秒経過した時点から１０秒間においては（１．１−０．８）℃温度が上昇しているので、以下のような式が成立する。
【００４４】
【数６】
0006384321.tif 000007
【００４５】
ジョブネットＪの実行開始の時点から２０秒経過した時点から１０秒間においては（１．２−１．１）℃温度が上昇しているので、以下のような式が成立する。
【００４６】
【数７】
0006384321.tif 000008
【００４７】
ジョブネットＪの実行開始の時点から３０秒経過した時点から１０秒間においては（１．３−１．２）℃温度が上昇しているので、以下のような式が成立する。
【００４８】
【数８】
0006384321.tif 000009
【００４９】
以上の連立方程式を解くことにより、基づきＨA、ＨB、ＨC、及びＨDを求めることができる。この結果として、事前処理部１１は、図１２に示すような第１ＨＤＤデータを生成し、第２データ格納部１５に格納する。図１２の例では、第１ＨＤＤデータは、ジョブネット名と、ジョブ名と、ＨＤＤの温度上昇とを含む。
【００５０】
図６の説明に戻り、事前処理部１１は、第１ＣＰＵデータ及び第１ＨＤＤデータに基づき、ＣＰＵの温度上昇及びＨＤＤの温度上昇からサーバ温度の上昇（℃）を各ジョブについて算出する（ステップＳ９）。ステップＳ９においては、例えば、Ｓ＝αＣ＋（１−α）Ｈによってサーバ温度の上昇を算出する。ここで、Ｓはサーバ温度の上昇であり、ＣはＣＰＵの温度上昇であり、ＨはＨＤＤの温度上昇である。αは０＜α＜１を満たす実数であり、上で述べたように、管理者が予め設定する。但し、サーバ温度の上昇を算出する方法はここで説明した方法に限られるわけではない。
【００５１】
事前処理部１１は、ジョブ毎の温度上昇から、ジョブネット毎の温度上昇（℃）を算出する（ステップＳ１１）。ここまでの処理の結果として、事前処理部１１は、図１３に示すような第１温度データを生成し、第２データ格納部１５に格納する。図１３の例では、第１温度データは、ジョブネット名と、ジョブ名と、ＣＰＵの温度上昇と、ＨＤＤの温度上昇と、ジョブの実行による温度上昇と、ジョブネットの実行による温度上昇とが格納される。そして処理を終了する。
【００５２】
以上のような処理を実行すれば、ジョブネットの実行によってどの程度温度が上昇するかを各ジョブネットについて予め見積もることができるようになる。なお、１台のテストサーバ３にジョブネットを実行させるので、サーバの性能或いは設置場所の違いによって温度上昇にバラツキが生じることを防ぐことができる。
【００５３】
次に、図１４乃至図１６を用いて、管理装置１の事前処理部１１が基準ジョブネットの実行による温度上昇を実行サーバ毎に算出する処理について説明する。
【００５４】
まず、事前処理部１１は、第２データ格納部１５に格納された第１温度データから、ジョブネット名及びジョブネットの実行による温度上昇を含む第２温度データを生成する。そして、事前処理部１１は、第２温度データのエントリを、ジョブネットの実行による温度上昇をキーにして降順にソートする（図１４：ステップＳ２１）。
【００５５】
図１５に、ステップＳ２１の処理が実行された後の第２温度データの一例を示す。図１５の例では、ジョブネット名と、ジョブネットの実行による温度上昇とを含む。そして、第２温度データのエントリは、ジョブネットの実行による温度上昇によってソートされている。
【００５６】
図１４の説明に戻り、事前処理部１１は、第２温度データから、予め定められた条件に基づき基準ジョブネットを選択する（ステップＳ２３）。本実施の形態において、予め定められた条件とは、ジョブネットの実行による温度上昇が最も大きいという条件である。このような条件を採用するのは、基準ジョブネットによる温度上昇が小さいジョブネットを選択すると、実行サーバのサーバ温度が変化したことを確認するのが困難である場合があるからである。但し、その他の条件に基づき基準ジョブネットを選択してもよい。例えば、ジョブネットの実行による温度上昇が所定の閾値より大きいジョブネットの中からランダムに選択してもよい。或いは、実行時間が所定の時間より長いジョブネットについては温度上昇が比較的大きいと考えられるため、実行時間に基づきジョブネットを選択してもよい。
【００５７】
事前処理部１１は、実行サーバＡ乃至Ｐの各々に、基準ジョブネットの実行要求を送信する（ステップＳ２５）。実行サーバＡ乃至Ｐが基準ジョブネット用のバッチファイルを有していない場合には、実行要求は基準ジョブネット用のバッチファイルを含む。これに応じ、実行サーバＡ乃至Ｐの各々は基準ジョブネットを実行し、サーバ温度のデータを順次管理装置１に送信する。
【００５８】
事前処理部１１は、サーバ温度のデータ並びに実行実績データを実行サーバＡ乃至Ｐから順次取得し（ステップＳ２７）、第２データ格納部１５に格納する。第２データ格納部１５に格納されるサーバ温度のデータのフォーマットは、図７Ａ及び図７Ｂに示したフォーマットと同様である。実行実績データは、基準ジョブネットの開始時刻及び終了時刻を含むとする。
【００５９】
事前処理部１１は、第２データ格納部１５に格納されたサーバ温度のデータ及び実行実績データに基づき、基準ジョブネットの実行開始時点におけるサーバ温度と基準ジョブネットの実行終了時点におけるサーバ温度との差を算出することで、基準ジョブネットによる温度上昇を実行サーバＡ乃至Ｐの各々について算出する（ステップＳ２９）。そして、事前処理部１１は、実行サーバの識別子と基準ジョブネットによる温度上昇とを含む第１サーバデータを生成し、第２データ格納部１５に格納する。
【００６０】
図１６に、第１サーバデータの一例を示す。図１６の例では、第１サーバデータは、実行サーバの識別子と、基準ジョブネットの実行による温度上昇とを含む。
【００６１】
図１４の説明に戻り、事前処理部１１は、第１サーバデータのエントリを、基準ジョブネットの実行による温度上昇をキーにして昇順にソートする（ステップＳ３１）。そして処理を終了する。
【００６２】
以上のように、基準ジョブネットを各実行サーバに実行させることで、温度の上がりやすさを表す指標を取得できるようになる。
【００６３】
次に、図１７乃至図２３を用いて、管理装置１の実行管理部１２が実際に実行サーバＡ乃至Ｐにジョブを割り当てる際に実行する処理について説明する。
【００６４】
まず、実行管理部１２は、実行サーバＡ乃至Ｐからサーバ温度のデータを取得し（図１７：ステップＳ４０）、実行サーバＡ乃至Ｐのサーバ温度のデータを第３データ格納部１６に格納する。
【００６５】
図１８に、第３データ格納部１６に格納されるサーバ温度のデータの一例を示す。図１８の例では、実行サーバ名と、その実行サーバのサーバ温度とを含む。
【００６６】
ここで、実行管理部１２は、第２データ格納部１５に格納された第１サーバデータ及び第３データ格納部１６に格納されたサーバ温度のデータから、図１９に示すような第２サーバデータを生成し、第３データ格納部１６に格納する。図１９の例では、第２サーバデータは、実行サーバ名と、その実行サーバのサーバ温度と、基準ジョブネットの実行による温度上昇とが格納される。
【００６７】
さらに、実行管理部１２は、第３データ格納部１６に格納された第２サーバデータから、図２０に示すような第３サーバデータを生成し、第３データ格納部１６に格納する。図２０の例では、第３サーバデータは、実行サーバ名と、基準ジョブネットの実行による温度上昇の値と、温度の予測値とが格納される。予測値は、この段階では、実行サーバのサーバ温度と同じである。すなわち、第２サーバデータにおける「サーバ温度」のカラム名を予測値」に変更してカラムの位置を移動すれば、第３サーバデータが得られる。なお、実行管理部１２は、第３サーバデータのエントリを、予測値を第１キーとし且つ基準ジョブネットの実行による温度上昇を第２キーとして昇順にソートしておく。
【００６８】
図１７の説明に戻り、実行管理部１２は、第１データ格納部１４に格納された、実際の実行スケジュールに基づき、実行すべきジョブネットを１つ特定する（ステップＳ４１）。
【００６９】
実行管理部１２は、第３サーバデータから、予測値が低い順で上位所定位以内又は上位所定数以下の実行サーバを特定する（ステップＳ４２）。そして、実行管理部１２は、特定された実行サーバのうち、基準ジョブネットによる温度上昇が最も小さい（すなわち、温度が上がりにくい）実行サーバを特定する（ステップＳ４３）。例えば第３サーバデータが図２０に示すようなデータである場合、第１行目のエントリに係る実行サーバが特定される。但し、他の方法で実行サーバを特定してもよい。
【００７０】
なお、第４データ格納部１７に指定データが格納されている場合には、ステップＳ４３において、特定された実行サーバが指定データによる指定の条件を満たすか判断してもよい。指定データについては後述する。
【００７１】
実行管理部１２は、ステップＳ４３において特定された実行サーバに、ステップＳ４１において特定されたジョブネットの実行要求を送信する（ステップＳ４５）。実行サーバがジョブネット用のバッチファイルを有していない場合には、実行要求はジョブネット用のバッチファイルを含む。
【００７２】
実行管理部１２は、第３データ格納部１６に格納された第３サーバデータを更新する（ステップＳ４７）。具体的には、図２１に示すように、実行すべきジョブネットの実行による温度上昇が、ステップＳ４３において特定された実行サーバのサーバ温度に加算される。図２１の例では、実行サーバ「ｓｖＤ」の予測値が、２２．０＋０．１９＝２２．１９（℃）に更新される。
【００７３】
実行管理部１２は、第３データ格納部１６に格納された第３サーバデータのエントリを、予測値を第１キーとし且つ基準ジョブネットの実行による温度上昇を第２キーとして昇順にソートする（ステップＳ４９）。ステップＳ４９の処理により、第３サーバデータは、図２２に示すような状態になる。図２２の例においては、実行サーバ「ｓｖＤ」のエントリが、第３行目に移動している。
【００７４】
実行管理部１２は、第１データ格納部１４に格納された、実際の実行スケジュールに基づき、次に実行すべきジョブネットが有るか判断する（ステップＳ５１）。次に実行すべきジョブネットが有る場合（ステップＳ５１：Ｙｅｓルート）、ステップＳ４１の処理に戻る。
【００７５】
次に実行すべきジョブネットが無い場合（ステップＳ５１：Ｎｏルート）、実行管理部１２は、各実行サーバから、その実行サーバにおいてジョブネットの実行が終了した場合にサーバ温度のデータを取得する（ステップＳ５３）。そして、実行管理部１２は、各実行サーバから取得したサーバ温度と、第３サーバデータとに基づき、図２３に示すような第４サーバデータを生成し、第３データ格納部１６に格納する。そして処理を終了する。
【００７６】
図２３に、第４サーバデータの一例を示す。図２３の例では、サーバ名と、基準ジョブネットの実行による温度上昇と、温度の予測値と、温度の実測値とが格納される。実測値のカラムには、ステップＳ５３において取得された、実行サーバＡ乃至Ｐのサーバ温度が格納される。
【００７７】
以上のような処理を実行すれば、現状の温度が比較的高い実行サーバ及び温度が上がりやすい実行サーバに対してはジョブが割り当てられにくくなるので、他の実行サーバに比べて温度が大幅に上昇する実行サーバが生じにくくなる。すなわち、実行サーバＡ乃至Ｐの温度を平準化できるようになる。
【００７８】
これにより、サーバルーム５において安定的に実行サーバＡ乃至Ｐを稼働できるようになり、また、実行サーバＡ乃至Ｐの寿命を伸ばすことができるようになる。
【００７９】
また、熱だまりの発生を抑制できるので、空調機５０の設定温度を下げ、空調機５０による電力の消費を減らすことができるようになる。
【００８０】
次に、図２４乃至図３０を用いて、フィードバック処理部１３が実行する処理について説明する。
【００８１】
まず、フィードバック処理部１３は、第３データ格納部１６に格納された第４サーバデータに基づき、予測値と実測値との差を各実行サーバについて算出する（図２４：ステップＳ６１）。予測値と実測値との差は、実測値から予測値を差し引くことにより算出される。そして、フィードバック処理部１３は、第５サーバデータを生成し、第４データ格納部１７に格納する。
【００８２】
図２５に、第５サーバデータの一例を示す。図２５の例では、実行サーバ名と、基準ジョブネットの実行による温度上昇と、予測値と、実測値と、予測値と実測値との差が格納される。
【００８３】
フィードバック処理部１３は、第５サーバデータのエントリを、予測値と実測値との差をキーにして降順に並び替える（ステップＳ６３）。図２５に示した第５サーバデータのエントリを並び替えると、例えば図２６に示すようなデータが得られる。
【００８４】
フィードバック処理部１３は、例えば管理装置１の表示装置に、第５サーバデータを出力する（ステップＳ６５）。これにより、管理者は、予測値と実測値との乖離が大きい実行サーバを容易に確認することができる。
【００８５】
フィードバック処理部１３は、管理者から、実行サーバが実行すべきジョブネットの指定、及び、実行サーバが実行すべきでないジョブネットの指定を受け付け（ステップＳ６７）、指定データを生成する。そして、フィードバック処理部１３は、指定データを第４データ格納部１７に格納する。そして処理を終了する。
【００８６】
温度の予測値と実測値との差が大きくなる理由の１つに、実行サーバの処理負荷が大きいジョブの実行が長引くことがある。例えば、ジョブＡとジョブＢとジョブＣとを含むジョブネットを実行することを考える。各ジョブの実行が長引くことなく終了した場合におけるサーバ温度の変化を、図２７に示す。図２７において、縦軸はサーバ温度を表し、横軸は時刻を表し、矩形図形はジョブを表し、矩形図形の縦軸方向の長さは処理負荷の大きさを表し、矩形図形の横軸方向の長さはジョブの処理時間を表す。この例においては、ジョブＡの処理負荷がジョブＢの処理負荷及びジョブＣの処理負荷より大きい。サーバ温度は、ジョブＡの実行が続く間は上昇するが、ジョブＡの実行が終了した後は上昇しない。本実施の形態においては、ジョブＡの実行が完了した場合に実測値を取得するので、実測値は時刻ｔ1におけるサーバ温度である。
【００８７】
ここで、ジョブＡの実行が通常よりも長引いた場合の例を図２８に示す。図２８の例では、ジョブＡの実行が完了するまでの時間が図２７の例と比較して長くなり、ジョブＡの完了時刻は時刻ｔ1より後の時刻ｔ2である。このような場合には、ＣＰＵの使用時間及びＨＤＤの使用時間が図２７の例と比較して長くなるため、それがサーバ温度の上昇をもたらす。そのため、時刻ｔ1におけるサーバ温度よりも時刻ｔ2におけるサーバ温度より高くなり、予測値と実測値との差の拡大をもたらすことになる。
【００８８】
管理者は、出力された第５サーバデータ及び実行サーバの実行履歴等を参照することにより、予測値と実測値との乖離をもたらすジョブネットを特定する。例えば、図２８の例においてジョブＡを含むジョブネット（ここでは、ジョブネット「ｎｅｔＫ」とする）を実行している実行サーバが実行サーバ「ｓｖＭ」である場合には、予測値と実測値との乖離が実行サーバ「ｓｖＭ」より小さい実行サーバ（ここでは、実行サーバ「ｓｖＮ」であるとする）にジョブネット「ｎｅｔＫ」を実行させるようにする。そこで、ステップＳ６７において、管理者等は、実行サーバ「ｓｖＭ」が実行すべきでないジョブネットとしてジョブネット「ｎｅｔＫ」を指定し、実行サーバ「ｓｖＮ」が実行すべきジョブネットとしてジョブネット「ｎｅｔＫ」を指定する。或いは、実行サーバ「ｓｖＭ」より高い処理性能を有する実行サーバにジョブネット「ｎｅｔＫ」を実行させてもよい。
【００８９】
図２９に、指定データの一例を示す。図２９の例では、実行サーバ名と、実行すべきジョブネットの名前と、実行すべきでないジョブネットの名前とが格納される。
【００９０】
以上のような処理を実行すれば、次回以降、管理装置１は指定データに基づいてジョブの割り当てを行えるようになる。これにより、実行サーバＡ乃至Ｐのサーバ温度をさらに平準化できるようになる。例えば、図３０に示すような第５サーバデータが得られるようになる。図２６の例と比較すると、予測値と実測値との差は縮小しており、また、実行サーバＡ乃至Ｐの実測値は平準化されている。
【００９１】
［実施の形態２］
第２の実施の形態においては、温度上昇をより高精度で求める方法について説明する。
【００９２】
例えば、ジョブＡを２０秒間実行することによって、ＣＰＵ温度が０．６℃上昇したとする。第１の実施の形態によれば、ジョブＡの実行中に他のジョブを実行していない場合、ジョブＡの実行による温度上昇は０．６℃となる。
【００９３】
ここで、２０秒間のうち前半の１０秒間については、ジョブＡのＣＰＵ使用率は２０％であり、後半の１０秒間については、ジョブＡのＣＰＵ使用率は１０％であったとする。このような場合には、前半の１０秒間での温度上昇と後半の１０秒間での温度上昇とは異なると考えられる。具体的には、前半の１０秒間での温度上昇は０．６＊（２０／（２０＋１０））＝０．４℃であり、後半の１０秒間での温度上昇は０．６＊（１０／（２０＋１０））＝０．２℃である。
【００９４】
上記のようにＣＰＵ使用率を考慮すれば、より正確にＣＰＵの温度上昇を算出できるようになる。同様に、ＩＯ（Input/Output）使用率を考慮すれば、より正確にＨＤＤの温度上昇を算出できるようになる。
【００９５】
そこで、第２の実施の形態においては、ＣＰＵ使用率及びＩＯ使用率を使用してＣＰＵの温度上昇及びＨＤＤの温度上昇を算出する。
【００９６】
具体的には、事前処理部１１は、ステップＳ５において、ＣＰＵ温度のデータ及びＨＤＤ温度のデータに加えて、ＣＰＵ使用率のデータ及びＩＯ使用率のデータを取得する。そして、事前処理部１１は、ＣＰＵ使用率の時系列データ及びＩＯ使用率の時系列データを生成し、第２データ格納部１５に格納する。なお、ＣＰＵ使用率及びＩＯ使用率は、テストサーバ３のＯＳ（Operating System）の機能によって取得することができる。
【００９７】
図３１に、ＣＰＵ使用率の時系列データの一例を示す。図３１の例では、ジョブネット名と、ジョブ名とが格納される。また、各ジョブについて、１秒毎に計測されたＣＰＵ使用率のデータが格納される。
【００９８】
図３２に、ＩＯ使用率の時系列データの一例を示す。図３２の例では、ジョブネット名と、ジョブ名とが格納される。また、各ジョブについて、１秒毎に計測されたＩＯ使用率のデータ並びに読み込みのバイト数及び書き込みのバイト数が格納される。
【００９９】
そして、ステップＳ７においては、ＣＰＵ使用率をさらに用いて連立方程式を生成する。例えば図９に示した例の場合、以下のような連立方程式を生成する。
【０１００】
まず、開始時点から１０秒間においては、（０．６−０．０）℃温度が上昇しているので、以下のような式が成立する。但し、ＣAはジョブＡの実行によるＣＰＵの温度上昇（℃）を表し、ＣBはジョブＢの実行によるＣＰＵの温度上昇（℃）を表し、ＣCはジョブＣの実行によるＣＰＵの温度上昇（℃）を表し、ＣDはジョブＤの実行によるＣＰＵの温度上昇（℃）を表す。また、ＵX,kはジョブＸの開始後ｋ秒後における、ジョブＸのＣＰＵ使用率を表す。また、図９に示した期間については、排熱による温度の低下については無視できるものとする。
【０１０１】
【数９】
0006384321.tif 000010
【０１０２】
ジョブネットＪの実行開始の時点から１０秒経過した時点から１０秒間においては（１．０−０．６）℃温度が上昇しているので、以下のような式が成立する。
【０１０３】
【数１０】
0006384321.tif 000011
【０１０４】
ジョブネットＪの実行開始の時点から２０秒経過した時点から１０秒間においては（１．２−１．０）℃温度が上昇しているので、以下のような式が成立する。
【０１０５】
【数１１】
0006384321.tif 000012
【０１０６】
ジョブネットＪの実行開始の時点から３０秒経過した時点から１０秒間においては（１．３−１．２）℃温度が上昇しているので、以下のような式が成立する。
【０１０７】
【数１２】
0006384321.tif 000013
【０１０８】
以上の連立方程式を解くことにより、基づきＣA、ＣB、ＣC、及びＣDを求めることができる。なお、ＨＤＤの温度上昇については、ＩＯ使用率のデータを用いて同様の計算を行えばよいので、説明を省略する。
【０１０９】
以上のようにすれば、より正確にＣＰＵの温度上昇及びＨＤＤの温度上昇を算出できるようになる。
【０１１０】
［実施の形態３］
第３の実施の形態においては、実行管理部１２が実行する処理の他の例について説明する。
【０１１１】
まず、実行管理部１２は、実行サーバＡ乃至Ｐからサーバ温度のデータを取得し（図３３：ステップＳ７０）、実行サーバＡ乃至Ｐのサーバ温度のデータを第３データ格納部１６に格納する。本処理は、ステップＳ４０の処理と同じである。
【０１１２】
実行管理部１２は、第１データ格納部１４に格納された、実際の実行スケジュールに基づき、実行すべきジョブネットを１つ特定する（ステップＳ７１）。本処理は、ステップＳ４１の処理と同じである。
【０１１３】
実行管理部１２は、第３サーバデータから、予測値が最も低い実行サーバのその予測値との差が所定値以下である予測値を有する実行サーバを特定する（ステップＳ７２）。そして、実行管理部１２は、特定された実行サーバのうち、基準ジョブネットによる温度上昇が最も小さい実行サーバを特定する（ステップＳ７３）。以降の処理は、ステップＳ４５乃至Ｓ５３の処理と同じであるので、説明を省略する。
【０１１４】
以上のような処理であっても、実行サーバＡ乃至Ｐの温度を平準化できるようになる。
【０１１５】
以上本発明の一実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上で説明した管理装置１の機能ブロック構成は実際のプログラムモジュール構成に一致しない場合もある。
【０１１６】
また、上で説明した各テーブルの構成は一例であって、上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
【０１１７】
なお、各テーブルに格納される値は一例であって、上記のような値が格納されなければならないわけではなく、また、上で示した予測値及び実測値は実際の運用結果を示すものではない。
【０１１８】
また、上ではジョブの割り当ての際にサーバ温度を利用するが、サーバ温度の代わりにジョブの実行状況（例えば、処理負荷或いはキューの状況）を利用してもよい。
【０１１９】
また、上ではＣＰＵの温度上昇及びＨＤＤの温度上昇を算出する際に排熱による温度低下を考慮していないが、例えば数式に排熱項を導入することにより、排熱による温度低下を考慮してＣＰＵの温度上昇及びＨＤＤの温度上昇を算出してもよい。
【０１２０】
なお、上で述べた管理装置１は、コンピュータ装置であって、図３４に示すように、メモリ２５０１とＣＰＵ（Central Processing Unit）２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【０１２１】
以上述べた本発明の実施の形態をまとめると、以下のようになる。
【０１２２】
本実施の形態に係るジョブ割当方法は、（Ａ）複数のジョブを実行した第１情報処理装置から取得した、第１情報処理装置の温度の情報に基づき、ジョブを実行した場合における温度の変化量である第１変化量の情報を複数のジョブの各々について生成し、（Ｂ）複数のジョブのうち特定のジョブを実行した複数の第２情報処理装置の各々から取得した、当該第２情報処理装置の温度の情報に基づき、特定のジョブを実行した場合における温度の変化量である第２変化量の情報を複数の第２情報処理装置の各々について生成し、（Ｃ）複数の第２情報処理装置の温度の情報と、複数のジョブの各々についての第１変化量の情報と、複数の第２情報処理装置の各々についての第２変化量の情報とに基づき、複数のジョブの各々を複数の第２情報処理装置のいずれに割り当てるか決定する処理を含む。
【０１２３】
上で述べたようにして生成された第２変化量は第２情報処理装置の温度の変化しやすさを表す。これにより、温度が変化しやすい第２情報処理装置へジョブを割り当てることを回避するといった対応が可能になるので、温度に基づくジョブ割当を適切に行えるようになる。
【０１２４】
また、上で述べた複数の第２情報処理装置のいずれに割り当てるか決定する処理において、（ｃ１）複数のジョブの各々について、複数の第２情報処理装置のうち温度が低い順で上位所定順位以内又は上位所定数以下の第２情報処理装置を特定し、特定された当該第２情報処理装置の中から、第２変化量に基づき、当該ジョブが割り当てられる第２情報処理装置を決定してもよい。このようにすれば、複数の第２情報処理装置の温度が平準化するようにジョブを割り当てることができるようになる。
【０１２５】
また、上で述べた複数の第２情報処理装置のいずれに割り当てるか決定する処理において、（ｃ２）複数のジョブの各々について、複数の第２情報処理装置のうち最も温度が低い第２情報処理装置の当該温度との差が所定値以内である温度の第２情報処理装置を特定し、特定された当該第２情報処理装置の中から、第２変化量に基づき、当該ジョブが割り当てられる第２情報処理装置を決定してもよい。このようにすれば、複数の第２情報処理装置の温度が平準化するようにジョブを割り当てることができるようになる。
【０１２６】
また、本ジョブ割当方法は、（Ｄ）複数のジョブの各々について、当該ジョブについての第１変化量を、当該ジョブを割り当てられる第２情報処理装置の温度に加算した値で、当該ジョブを割り当てられる第２情報処理装置の温度の情報を更新する処理をさらに含んでもよい。このようにすれば、既に割り当てたジョブによる温度変化を考慮したジョブ割当が可能になる。
【０１２７】
また、本ジョブ割当方法は、第１の情報処理装置から、開始時刻及び終了時刻の情報を複数のジョブの各々について取得する処理をさらに含んでもよい。そして、上で述べた第１変化量を複数のジョブの各々について生成する処理において、（ａ１）複数のジョブの各々について、当該ジョブの開始時刻における第１の情報処理装置の温度と当該ジョブの終了時刻における第１の情報処理装置の温度との差を算出することにより、第１変化量を生成してもよい。このようにすれば、第１変化量の情報を適切に生成できるようになる。
【０１２８】
また、第１情報処理装置の温度の情報は、第１情報処理装置におけるプロセッサの温度の情報と第１情報処理装置における記憶装置の温度の情報とに基づき生成された情報であってもよい。ジョブを実行した場合にはプロセッサ及び記憶装置の温度が特に変化するので、上で述べたようにすれば、温度の情報がより適切に生成されるようになる。
【０１２９】
また、本ジョブ割当方法は、（Ｅ）第１情報処理装置から、プロセッサの使用率の情報と記憶装置に対する入出力の使用率の情報とを取得する処理をさらに含んでもよい。そして、上で述べた第１変化量の情報を複数のジョブの各々について生成する処理において、（ａ２）第１情報処理装置の温度の情報と、プロセッサの使用率の情報と、記憶装置に対する入出力の使用率の情報とに基づき、ジョブを実行した場合における温度の変化量である第１変化量の情報を複数のジョブの各々について生成してもよい。このようにすれば、より高精度な第１変化量を生成できるようになる。
【０１３０】
また、本ジョブ割当方法は、（Ｆ）複数のジョブの実行が完了した場合、複数の第２情報処理装置の各々から、第２の情報処理装置の温度の情報を取得し、（Ｇ）取得した複数の第２情報処理装置の温度と、更新後の複数の第２情報処理装置の温度との差についての情報を生成し、生成された当該差についての情報を出力する処理をさらに含んでもよい。このようにすれば、計算により求めた温度と実際の温度との差を管理者等が確認できるようになる。
【０１３１】
なお、上記方法による処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
【０１３２】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１３３】
（付記１）
コンピュータに、
複数のジョブを実行した第１情報処理装置から取得した、前記第１情報処理装置の温度の情報に基づき、ジョブを実行した場合における温度の変化量である第１変化量の情報を前記複数のジョブの各々について生成し、
前記複数のジョブのうち特定のジョブを実行した複数の第２情報処理装置の各々から取得した、当該第２情報処理装置の温度の情報に基づき、前記特定のジョブを実行した場合における温度の変化量である第２変化量の情報を前記複数の第２情報処理装置の各々について生成し、
前記複数の第２情報処理装置の温度の情報と、前記複数のジョブの各々についての前記第１変化量の情報と、前記複数の第２情報処理装置の各々についての前記第２変化量の情報とに基づき、前記複数のジョブの各々を前記複数の第２情報処理装置のいずれに割り当てるか決定する、
処理を実行させるジョブ割当プログラム。
【０１３４】
（付記２）
前記複数の第２情報処理装置のいずれに割り当てるか決定する処理において、
前記複数のジョブの各々について、前記複数の第２情報処理装置のうち温度が低い順で上位所定順位以内又は上位所定数以下の第２情報処理装置を特定し、特定された当該第２情報処理装置の中から、前記第２変化量に基づき、当該ジョブが割り当てられる第２情報処理装置を決定する
ことを特徴とする付記１記載のジョブ割当プログラム。
【０１３５】
（付記３）
前記複数の第２情報処理装置のいずれに割り当てるか決定する処理において、
前記複数のジョブの各々について、前記複数の第２情報処理装置のうち最も温度が低い第２情報処理装置の当該温度との差が所定値以内である温度の第２情報処理装置を特定し、特定された当該第２情報処理装置の中から、前記第２変化量に基づき、当該ジョブが割り当てられる第２情報処理装置を決定する
ことを特徴とする付記１記載のジョブ割当プログラム。
【０１３６】
（付記４）
前記複数のジョブの各々について、当該ジョブについての前記第１変化量を、当該ジョブを割り当てられる第２情報処理装置の温度に加算した値で、当該ジョブを割り当てられる第２情報処理装置の温度の情報を更新する、
処理をさらに実行させる付記２又は３記載のジョブ割当プログラム。
【０１３７】
（付記５）
前記第１の情報処理装置から、開始時刻及び終了時刻の情報を前記複数のジョブの各々について取得する
処理をさらに実行させ、
前記第１変化量を前記複数のジョブの各々について生成する処理において、
前記複数のジョブの各々について、当該ジョブの開始時刻における前記第１の情報処理装置の温度と当該ジョブの終了時刻における前記第１の情報処理装置の温度との差を算出することにより、前記第１変化量を生成する
ことを特徴とする付記１乃至４のいずれか１つ記載のジョブ割当プログラム。
【０１３８】
（付記６）
前記第１情報処理装置の温度の情報は、前記第１情報処理装置におけるプロセッサの温度の情報と前記第１情報処理装置における記憶装置の温度の情報とに基づき生成された情報である
ことを特徴とする付記１乃至５のいずれか１つ記載のジョブ割当プログラム。
【０１３９】
（付記７）
前記第１情報処理装置から、前記プロセッサの使用率の情報と前記記憶装置に対する入出力の使用率の情報とを取得する、
処理をさらに実行させ、
前記第１変化量の情報を前記複数のジョブの各々について生成する処理において、
前記第１情報処理装置の温度の情報と、前記プロセッサの使用率の情報と、前記記憶装置に対する入出力の使用率の情報とに基づき、ジョブを実行した場合における温度の変化量である第１変化量の情報を前記複数のジョブの各々について生成する、
ことを特徴とする付記６記載のジョブ割当プログラム。
【０１４０】
（付記８）
前記複数のジョブの実行が完了した場合、前記複数の第２情報処理装置の各々から、前記第２の情報処理装置の温度の情報を取得し、
取得した前記複数の第２情報処理装置の温度と、更新後の前記複数の第２情報処理装置の温度との差についての情報を生成し、生成された当該差についての情報を出力する、
処理をさらに実行させる付記４記載のジョブ割当プログラム。
【０１４１】
（付記９）
コンピュータが、
複数のジョブを実行した第１情報処理装置から取得した、前記第１情報処理装置の温度の情報に基づき、ジョブを実行した場合における温度の変化量である第１変化量の情報を前記複数のジョブの各々について生成し、
前記複数のジョブのうち特定のジョブを実行した複数の第２情報処理装置の各々から取得した、当該第２情報処理装置の温度の情報に基づき、前記特定のジョブを実行した場合における温度の変化量である第２変化量の情報を前記複数の第２情報処理装置の各々について生成し、
前記複数の第２情報処理装置の温度の情報と、前記複数のジョブの各々についての前記第１変化量の情報と、前記複数の第２情報処理装置の各々についての前記第２変化量の情報とに基づき、前記複数のジョブの各々を前記複数の第２情報処理装置のいずれに割り当てるか決定する、
処理を実行するジョブ割当方法。
【０１４２】
（付記１０）
複数のジョブを実行した第１情報処理装置から取得した、前記第１情報処理装置の温度の情報に基づき、ジョブを実行した場合における温度の変化量である第１変化量の情報を前記複数のジョブの各々について生成し、前記複数のジョブのうち特定のジョブを実行した複数の第２情報処理装置の各々から取得した、当該第２情報処理装置の温度の情報に基づき、前記特定のジョブを実行した場合における温度の変化量である第２変化量の情報を前記複数の第２情報処理装置の各々について生成する第１生成部と、
前記複数の第２情報処理装置の温度の情報と、前記複数のジョブの各々についての前記第１変化量の情報と、前記複数の第２情報処理装置の各々についての前記第２変化量の情報とに基づき、前記複数のジョブの各々を前記複数の第２情報処理装置のいずれに割り当てるか決定する決定部と、
を有するコンピュータ。
【符号の説明】
【０１４３】
１  管理装置    ３  テストサーバ
５  サーバルーム    ５０  空調機
１１  事前処理部    １２  実行管理部
１３  フィードバック処理部    １４  第１データ格納部
１５  第２データ格納部    １６  第３データ格納部
１７  第４データ格納部
【図１】
0006384321.tif 000014
【図２】
0006384321.tif 000015
【図３】
0006384321.tif 000016
【図４Ａ】
0006384321.tif 000017
【図４Ｂ】
0006384321.tif 000018
【図５】
0006384321.tif 000019
【図６】
0006384321.tif 000020
【図７Ａ】
0006384321.tif 000021
【図７Ｂ】
0006384321.tif 000022
【図８】
0006384321.tif 000023
【図９】
0006384321.tif 000024
【図１０】
0006384321.tif 000025
【図１１】
0006384321.tif 000026
【図１２】
0006384321.tif 000027
【図１３】
0006384321.tif 000028
【図１４】
0006384321.tif 000029
【図１５】
0006384321.tif 000030
【図１６】
0006384321.tif 000031
【図１７】
0006384321.tif 000032
【図１８】
0006384321.tif 000033
【図１９】
0006384321.tif 000034
【図２０】
0006384321.tif 000035
【図２１】
0006384321.tif 000036
【図２２】
0006384321.tif 000037
【図２３】
0006384321.tif 000038
【図２４】
0006384321.tif 000039
【図２５】
0006384321.tif 000040
【図２６】
0006384321.tif 000041
【図２７】
0006384321.tif 000042
【図２８】
0006384321.tif 000043
【図２９】
0006384321.tif 000044
【図３０】
0006384321.tif 000045
【図３１】
0006384321.tif 000046
【図３２】
0006384321.tif 000047
【図３３】
0006384321.tif 000048
【図３４】
0006384321.tif 000049