【文献】
山本 啓二,外6名,「過去の実行実績を利用したジョブの消費電力予測」,情報処理学会 研究報告 ハイパフォーマンスコンピューティング(HPC) 2015−HPC−151 [online],情報処理学会,2015年09月23日,pp.1-7
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0011】
[情報処理システムの構成]
図1は、情報処理システム10の全体構成を示す図である。
図1に示す情報処理システム10には、情報処理装置1と、大規模計算システムを構成する並列処理装置2と、操作端末3とが含まれている。情報処理装置1及び並列処理装置2は、それぞれ1台以上の物理マシンから構成されている。また、情報処理装置1及び並列処理装置2は、例えば、データセンターDCに配置されている。
【0012】
操作端末3は、例えば、事業者が情報処理装置1に対して情報の入力等を行うPC(Personal Computer)である。操作端末3は、例えば、ネットワークNWを介してデータセンターDC(情報処理装置1)と接続する。
【0013】
情報処理装置1は、例えば、並列処理装置2における単位時間ごとの消費電力量を定期的に監視する。そして、情報処理装置1は、並列処理装置2において動作中のジョブを停止する必要があると判定した場合、動作中のジョブを停止する旨の指示を並列処理装置2に対して送信する。
【0014】
ここで、並列処理装置2における消費電力量を抑制する必要が生じた場合、事業者は、例えば、並列処理装置2において動作中のジョブを停止させる。これにより、事業者は、現在時刻を含む単位時間における大規模計算システムの消費電力量が上限閾値を超えることを防止することが可能になる。
【0015】
しかしながら、並列処理装置2において動作しているジョブの停止には、通常、停止するジョブに応じた停止時間が必要となる。また、並列処理装置2では、全てのジョブが停止した後であっても電力の消費が行われる。そのため、事業者は、動作中のジョブの停止に要する時間やジョブの停止中における消費電力等を考慮しながら、必要なジョブの停止を行う必要がある。
【0016】
そこで、本実施の形態における情報処理装置1は、ジョブの停止中における並列処理装置2の最小消費電力と、並列処理装置2において消費される可能性がある最大消費電力と、並列処理装置2において動作中のジョブを停止するまでに要するジョブ停止時間とを記憶する。
【0017】
そして、情報処理装置1は、現在時刻が含まれる単位時間(以下、特定の単位時間とも呼ぶ)が経過するまでの残り時間からジョブ停止時間を減算した時間に、最小消費電力を乗算することによって第1消費電力量を算出する。また、情報処理装置1は、ジョブ停止時間に、最大消費電力を乗算することによって第2消費電力量を算出する。さらに、情報処理装置1は、単位時間ごとの並列処理装置2の消費電力量の上限閾値(以下、使用可能電力量とも呼ぶ)から、第1消費電力量と第2消費電力量とを減算することによって基準電力量を算出する。
【0018】
その後、情報処理装置1は、特定の単位時間における消費電力量が基準電力量に到達している場合、並列処理装置2において動作中のジョブを停止する。
【0019】
すなわち、例えば、並列処理装置2において動作中の全ジョブの停止が同時に行われる場合、現在時刻から特定の単位時間が経過するまでに消費される可能性がある電力量の最大値は、第1消費電力量と第2消費電力量の和であると判断できる。そのため、情報処理装置1は、特定の単位時間における現在時刻までの消費電力量が基準電力量に到達した場合、並列処理装置2において動作中の全ジョブの停止を同時に行うことにより、特定の単位時間が経過するタイミングまでに特定の単位時間における消費電力量が上限閾値を超えることを防止することが可能になる。
【0020】
これにより、情報処理装置1は、並列処理装置2における単位時間ごとの消費電力量が上限閾値を超えることを防止することが可能になる。
【0021】
[情報処理システムのハードウエア構成]
次に、情報処理システム10のハードウエア構成について説明する。
図2は、情報処理装置1のハードウエア構成を示す図である。
【0022】
情報処理装置1は、
図2に示すように、プロセッサであるCPU101と、メモリ102と、外部インターフェース(以下、I/Oユニットとも呼ぶ)103と、記憶媒体104とを有する。各部は、バス105を介して互いに接続される。
【0023】
記憶媒体104は、例えば、記憶媒体104内のプログラム格納領域(図示しない)に、並列処理装置2の消費電力量を管理する処理(以下、電力管理処理とも呼ぶ)を行うためのプログラム110を記憶する。記憶媒体104は、例えば、HDD(Hard Disk Drive)であってよい。
【0024】
また、記憶媒体104は、例えば、電力管理処理を行う際に用いられる情報を記憶する記憶部130(以下、情報格納領域130とも呼ぶ)を有する。
【0025】
CPU101は、記憶媒体104からメモリ102にロードされたプログラム110を実行して電力管理処理を行う。
【0026】
外部インターフェース103は、例えば、並列処理装置2と通信を行う。また、外部インターフェース103は、例えば、ネットワークNWを介して操作端末3と通信を行う。
【0027】
[情報処理装置の機能]
次に、情報処理装置1の機能について説明する。
図3は、情報処理装置1の機能のブロック図である。
【0028】
情報処理装置1は、CPU101やメモリ102等のハードウエアとプログラム110とが有機的に協働することにより、
図3に示すように、情報管理部111と、電力量取得部112と、時刻判定部113と、電力量算出部114と、ジョブ停止部115と、リセット指示部116とを含む各種機能を実現する。
【0029】
そして、情報処理装置1は、
図3に示すように、最小消費電力情報131と、最大消費電力情報132と、使用可能電力情報133と、ジョブ停止時間情報134と、単位時間情報135とを情報格納領域130に記憶する。
【0030】
情報管理部111は、例えば、ジョブの停止中における並列処理装置2の最小消費電力が事業者によって操作端末3から入力された場合、入力された最小消費電力を含む最小消費電力情報131を情報格納領域130に記憶する。
【0031】
また、情報管理部111は、例えば、並列処理装置2において消費される可能性がある最大消費電力が事業者によって操作端末3から入力された場合、入力された最大消費電力を含む最大消費電力情報132を情報格納領域130に記憶する。
【0032】
また、情報管理部111は、例えば、事業者と電力会社との契約によって並列処理装置2が使用を許可されている単位時間ごとの使用可能電力量が事業者によって操作端末3から入力された場合、入力された使用可能電力を含む使用可能電力情報133を情報格納領域130に記憶する。
【0033】
さらに、情報管理部111は、例えば、並列処理装置2において動作中の各ジョブを停止するまでに要するジョブ停止時間が事業者によって操作端末3から入力された場合、入力されたジョブ停止時間を含むジョブ停止時間情報134を情報格納領域130に記憶する。
【0034】
電力量取得部112は、並列処理装置2の消費電力量を計測する電力量計(図示しない)から、並列処理装置2の消費電力量を取得する。
【0035】
具体的に、電力量取得部112は、現在時刻が含まれる特定の単位時間における並列処理装置2の消費電力量を取得する。
【0036】
時刻判定部113は、特定の単位時間が経過するまでの残り時間がジョブ停止時間よりも長いか否かを判定する。
【0037】
電力量算出部114は、特定の単位時間が経過するまでの残り時間からジョブ停止時間を減算した時間に、情報格納領域130に記憶されている最小消費電力情報131が示す最小消費電力を乗算することによって第1消費電力量を算出する。
【0038】
また、電力量算出部114は、ジョブ停止時間に、情報格納領域130に記憶されている最大消費電力情報132が示す最大消費電力を乗算することによって第2消費電力量を算出する。
【0039】
さらに、電力量算出部114は、情報格納領域130に記憶されている使用可能電力情報133が示す使用可能電力量から、第1消費電力量と第2消費電力量とを減算することによって基準電力量を算出する。
【0040】
具体的に、電力量算出部114は、時刻判定部113が特定の単位時間が経過するまでの残り時間がジョブ停止時間よりも長いと判定した場合に、第1消費電力量等の算出を行う。
【0041】
ジョブ停止部115は、特定の単位時間における消費電力量が、電力量算出部114によって算出された基準電力量に到達している場合、並列処理装置2において動作中のジョブを停止する。
【0042】
具体的に、ジョブ停止部115は、例えば、特定の単位時間における消費電力量が基準電力量に到達している場合、並列処理装置2において動作中の全ジョブを停止する。
【0043】
リセット指示部116は、並列処理装置2の電力量計が計測している消費電力量の値をリセットする旨の指示を送信する。単位時間情報135については後述する。
【0044】
[第1の実施の形態の概略]
次に、第1の実施の形態の概略について説明する。
図4及び
図5は、第1の実施の形態における電力管理処理の概略を説明するフローチャート図である。
図6は、第1の実施の形態における電力管理処理の概略を説明する図である。以下、
図6を参照しながら、
図4及び
図5に示す電力管理処理の概略について説明を行う。
【0045】
情報処理装置1は、
図4に示すように、情報記憶タイミングまで待機する(S1のNO)。情報記憶タイミングは、例えば、事業者が操作端末3を介して各情報の入力を行ったタイミングであってよい。
【0046】
そして、情報記憶タイミングになった場合(S1のYES)、情報処理装置1は、ジョブの停止中における並列処理装置の最小消費電力を記憶部130に記憶する(S2)。また、情報処理装置1は、この場合、並列処理装置2において消費される可能性がある最大消費電力を記憶部130に記憶する(S3)。さらに、情報処理装置1は、この場合、並列処理装置2において動作中のジョブを停止するまでに要するジョブ停止時間を記憶部130に記憶する(S4)。
【0047】
その後、情報処理装置1は、
図5及び
図6に示すように、停止判定タイミングまで待機する(S11のNO)。停止判定タイミングは、例えば、1分間隔等の定期的なタイミングであってよい。
【0048】
そして、停止判定タイミングになった場合(S11のYES)、情報処理装置1は、現在時刻が含まれる特定の単位時間が経過するまでの残り時間からジョブ停止時間を減算した時間に、最小消費電力を乗算することによって第1消費電力量を算出する(S12)。また、情報処理装置1は、この場合、ジョブ停止時間に、最大消費電力を乗算することによって第2消費電力量を算出する(S13)。
【0049】
続いて、情報処理装置1は、並列処理装置2における単位時間ごとの使用可能電力量から第1消費電力量と第2消費電力量とを減算することによって現在時刻における基準電力量を算出する(S14)。
【0050】
その結果、特定の単位時間における消費電力量が、S14の処理で算出した基準電力量に到達している場合(S15のYES)、情報処理装置1は、並列処理装置2において動作中のジョブを停止する(S16)。一方、特定の単位時間における消費電力量が、S14の処理で算出した基準電力量に到達していない場合(S15のNO)、情報処理装置1は、S16の処理を行わない。
【0051】
これにより、情報処理装置1は、並列処理装置2における単位時間ごとの消費電力量が上限閾値を超えることを防止することが可能になる。
【0052】
[第1の実施の形態の詳細]
次に、第1の実施の形態の詳細について説明する。
図7から
図10は、第1の実施の形態における電力管理処理の詳細を説明するフローチャート図である。また、
図11から
図20は、第1の実施の形態における電力管理処理の詳細を説明する図である。以下、
図11から
図20を参照しながら、
図7から
図10に示す電力管理処理の詳細について説明を行う。
【0053】
情報処理装置1の情報管理部111は、
図7に示すように、情報記憶タイミングまで待機する(S21のNO)。
【0054】
そして、情報記憶タイミングになった場合(S21のYES)、情報管理部111は、ジョブの停止中における並列処理装置の最小消費電力を含む最小消費電力情報131を情報格納領域130に記憶する(S22)。
【0055】
また、情報管理部111は、この場合、並列処理装置2において消費される可能性がある最大消費電力を含む最大消費電力情報132を情報格納領域130に記憶する(S23)。
【0056】
また、情報管理部111は、この場合、事業者と電力会社との契約によって並列処理装置2が使用を許可されている単位時間ごとの使用可能電力量を含む使用可能電力情報133を情報格納領域130に記憶する(S24)。
【0057】
さらに、情報管理部111は、この場合、並列処理装置2において動作中のジョブを停止するまでに要するジョブ停止時間を含むジョブ停止時間情報134を情報格納領域130に記憶する(S24)。以下、最小消費電力情報131、最大消費電力情報132、使用可能電力情報133及びジョブ停止時間情報134の具体例について説明を行う。
【0058】
[S22の処理からS25の処理において記憶される情報の具体例]
図11は、最小消費電力情報131、最大消費電力情報132、使用可能電力情報133及びジョブ停止時間情報134の具体例について説明する図である。
【0059】
図11に示す情報は、最小消費電力情報131を示す値が設定される「最小消費電力」と、最大消費電力情報132を示す値が設定される「最大消費電力」と、使用可能電力情報133を示す値が設定される「使用可能電力量」と、ジョブ停止時間情報134を示す値が設定される「ジョブ停止時間」とを項目として有する。
【0060】
具体的に、
図11に示す情報において、「項番」が「1」である情報には、「最小消費電力」として「400(W)」が設定され、「最大消費電力」として「1200(W)」が設定され、「使用可能電力」として「1200000(J)」が設定され、「ジョブ停止時間」として「300(秒)」が設定されている。
【0061】
図8に戻り、情報処理装置1の電力量取得部112は、停止判定タイミングまで待機する(S31のNO)。
【0062】
そして、停止判定タイミングになった場合(S31のYES)、電力量取得部112は、現在時刻が含まれる特定の単位時間における並列処理装置2の消費電力量を並列処理装置2の電力量計から取得する(S32)。具体的に、電力量取得部112は、並列処理装置2の電力量計が現在示している電力量を取得する。
【0063】
続いて、情報処理装置1の時刻判定部113は、情報格納領域130に記憶されている単位時間情報135を参照し、現在時刻が含まれている特定の単位時間が経過するまでの残り時間を特定する(S33)。そして、時刻判定部113は、特定した残り時間が、情報格納領域130に記憶されているジョブ停止時間情報134が示すジョブ停止時間よりも長いか否かを判定する(S33)。以下、単位時間情報135の具体例について説明を行う。
【0064】
[単位時間情報の具体例(1)]
図12及び
図13は、単位時間情報135の具体例について説明する図である。
【0065】
図12等に示す単位時間情報135は、特定の単位時間の開始時刻が設定される「開始時刻」と、特定の単位時間の終了時刻が設定される「終了時刻」とを項目として有している。
【0066】
具体的に、
図12に示す単位時間情報135において、「項番」が「1」である情報には、「開始時刻」として「10:00」が設定され、「終了時刻」として「10:30」が設定されている。
【0067】
そのため、時刻判定部113は、例えば、現在時刻が10時15分である場合、特定の単位時間が経過するまでの残り時間として15分を特定する。そして、例えば、
図11に示すように、ジョブ停止時間が5分(300秒)である場合、時刻判定部113は、特定の単位時間が経過するまでの残り時間がジョブ停止時間よりも長いと判定する。
【0068】
図8に戻り、特定の単位時間が経過するまでの残り時間がジョブ停止時間よりも長い場合(S34のYES)、情報処理装置1の電力量算出部114は、現在時刻が含まれる特定の単位時間が経過するまでの残り時間から、情報格納領域130に記憶されているジョブ停止時間情報134が示すジョブ停止時間を減算した時間を算出する(S35)。そして、電力量算出部114は、算出した時間に、情報格納領域130に記憶されている最小消費電力情報131が示す最小消費電力を乗算することによって第1消費電力量を算出する(S35)。
【0069】
具体的に、
図11で説明した情報には、ジョブ停止時間として5分(300秒)が設定されており、最小消費電力として400(W)が設定されている。そのため、特定の単位時間が経過するまでの残り時間が15分である場合、電力量算出部114は、例えば、特定の単位時間が経過するまでの残り時間からジョブ停止時間を減算した時間である600秒(10分)と、最小消費電力である400(W)とを乗算することによって算出した240000(J)を、第1消費電力量として算出する。
【0070】
続いて、電力量算出部114は、情報格納領域130に記憶されているジョブ停止時間情報134が示すジョブ停止時間に、情報格納領域130に記憶されている最大消費電力情報132が示す最大消費電力を乗算することによって第2消費電力量を算出する(S36)。
【0071】
具体的に、
図11で説明した情報には、最大消費電力として1200(W)が設定されている。そのため、電力量算出部114は、例えば、ジョブ停止時間である300秒(5分)と、最大消費電力である1200(W)とを乗算することによって算出した360000(J)を、第2消費電力量として算出する。
【0072】
その後、電力量算出部114は、
図9に示すように、情報格納領域130に記憶されている使用可能電力情報133が示す使用可能電力量から、S35の処理で算出した第1消費電力量と、S36の処理で算出した第2消費電力量とを減算することによって基準電力量を算出する(S41)。
【0073】
具体的に、
図11で説明した情報には、使用可能電力量として1200000(J)が設定されている。そのため、電力量算出部114は、例えば、使用可能電力量である1200000(J)から、S35の処理で算出した240000(J)と、S36の処理で算出した360000(J)とを減算することによって600000(J)を算出する。
【0074】
そして、情報処理装置1のジョブ停止部115は、S32の処理で取得した消費電力量が、S41の処理で算出した基準電力量に到達しているか否かを判定する(S42)。
【0075】
その結果、基準電力量に到達していると判定した場合(S43のYES)、ジョブ停止部115は、並列処理装置2において動作中のジョブを全て停止する(S44)。一方、基準電力量に到達していないと判定した場合(S43のNO)、ジョブ停止部115は、S44の処理を行わない。
【0076】
すなわち、並列処理装置2において動作中の全ジョブの停止を行う場合、現在時刻から現在時刻が含まれる特定の単位時間が経過するまでに消費される可能性がある電力量の最大値は、S35の処理で算出した第1消費電力量と、S36の処理で算出した第2消費電力量との和である。そのため、情報処理装置1は、特定の単位時間における現在時刻までの消費電力量が基準電力量に到達したと判定した場合、並列処理装置2において動作中の全ジョブを停止することにより、特定の単位時間における並列処理装置2の消費電力量が上限閾値(使用可能電力量)を超えることを防止することが可能になる。
【0077】
これにより、情報処理装置1は、並列処理装置2における単位時間ごとの消費電力量が上限閾値を超えることを防止することが可能になる。
【0078】
一方、S34の処理において、特定の単位時間が経過するまでの残り時間がジョブ停止時間以下である場合(S34のYES)、情報処理装置1のリセット指示部116は、
図10に示すように、S33の処理において特定した残り時間が0であるか否かを判定する(S51)。すなわち、リセット指示部116は、現在時刻が次の単位時間に切り替わる時刻であるか否かの判定を行う。
【0079】
その結果、残り時間が0であると判定した場合(S51のYES)、リセット指示部116は、並列処理装置2の電力量計に対してリセットを指示する(S52)。
【0080】
すなわち、並列処理装置2の電力量計は、現在時刻が含まれる単位時間における並列処理装置2の消費電力量(現在時刻までの消費電力量)を計測するものである。そのため、リセット指示部116は、現在時刻が含まれる単位時間が次の単位時間に切り替わったと判定したことに応じて、並列処理装置2の電力量計が示す消費電力量をリセットする。
【0081】
これにより、並列処理装置2の電力量計は、次の単位時間における並列処理装置2の消費電力量の計測を開始することが可能になる。
【0082】
続いて、情報管理部111は、情報格納領域130に記憶されている単位時間情報135が次の単位時間を示すように更新する(S53)。以下、S53の処理において更新された単位時間情報135の具体例について説明を行う。
【0083】
[単位時間情報の具体例(2)]
図13は、S53の処理において更新された単位時間情報135の具体例について説明する図である。
【0084】
図12で説明した単位時間情報135における「開始時刻」及び「終了時刻」には、それぞれ「10:00」及び「10:30」が設定されている。そのため、情報管理部111は、S53の処理において、例えば、
図13に示すように、「開始時刻」として「10:00」の30分後の時間である「10:30」を設定し、「終了時刻」として「10:30」の30分後の時間である「11:00」を設定する。
【0085】
なお、S51の処理において、残り時間が0でないと判定した場合(S51のNO)、リセット指示部116及び情報管理部111は、S52の処理及びS53の処理を行わない。
【0086】
[電力管理処理の具体例]
次に、電力管理処理の具体例について説明を行う。
【0087】
図14は、特定の単位時間に含まれる各時刻における最小消費電力、最大消費電力及び使用可能電力量のそれぞれから生成した直線を平面上に表した場合を説明する図である。
図14に示す平面では、横軸が時間(特定の単位時間が開始してから終了するまでの時間)を示しており、縦軸が特定の単位時間における消費電力量を示している。
【0088】
具体的に、最小消費電力に対応する直線LN01及び最大消費電力に対応する直線LN02は、
図14に示すように、時間の経過に伴って増加する直線としてそれぞれ表現される。また、使用可能電力量に対応する直線LN03は、使用可能電力量が時間の経過に伴って変化しない値であるため、
図14に示すように、横軸に並行な直線であって縦軸と点P01において交差する直線として表現される。さらに、特定の単位時間における並列処理装置2の消費電力量に対応する直線LN04は、
図14に示すように、直線LN01と直線LN02との間の領域を推移する直線(折れ線)として表現される。
【0089】
続いて、
図15は、
図14で説明した平面において、並列処理装置2において動作している全てのジョブを単位時間経過時刻までに停止させるために、遅くともジョブの停止を開始しなければならない時刻(以下、猶予時刻とも呼ぶ)を表現した場合を説明する図である。
【0090】
具体的に、猶予時刻は、
図15に示すように、特定の単位時間が経過する時刻からジョブ停止時間を遡った時刻として表現される。
【0091】
なお、S34の処理において、特定の単位時間が経過するまでの残り時間がジョブ停止時間よりも長い場合とは、現在時刻が猶予時刻に到達していない場合である。
【0092】
そして、
図16は、
図15で説明した平面において、直線LN02と並行な直線であって、直線LN03上の点のうちの横軸が単位時間経過時刻である場合の点P02を通過する直線であるLN12と、直線LN01と並行な直線であって、直線LN12上の点のうちの横軸が猶予時刻である場合の点P03を通過する直線である直線LN11とを表現した場合を説明する図である。
【0093】
図16に示す例において、直線LN01上の点のうちの横軸が現在時刻である場合の点の縦軸の値と、点P03の縦軸の値との差は、S35の処理において算出される第1消費電力量に対応する。また、
図16に示す例において、点P01の縦軸の値と、点P03の縦軸の値との差は、S36の処理において算出される第2消費電力量に対応する。
【0094】
さらに、
図17は、特定の単位時間に含まれる各時刻における基準電力量(S41の処理で算出される基準電力量)に対応する直線である直線LN21を説明する図である。
【0095】
具体的に、基準電力量に対応する直線LN21は、
図16で説明した直線LN11のうち、横軸が0から猶予時刻までの間に対応する直線として表現される。
【0096】
そして、
図18から
図20は、
図14で説明した直線LN04と、
図17で説明した直線LN21との関係を説明する図である。
【0097】
具体的に、
図18に示す例において、直線LN04と直線LN21とが交差する場合とは、S43の処理で説明したように、並列処理装置2の電力量計から取得した消費電力量が基準電力量に到達した場合である。そのため、ジョブ停止部115は、この場合、S44の処理で説明したように、直線LN04と直線LN21とが交差したタイミングにおいて動作中の全ジョブの停止を行う。
【0098】
これにより、情報処理装置1は、
図18に示すように、例えば、ジョブの停止を開始してからジョブの停止が完了するまでの間、並列処理装置2における消費電力が常に最大消費電力であった場合であっても、特定の単位時間における消費電力量(単位時間経過時刻までの消費電力量)が使用可能電力量を超えないように制御することが可能になる。
【0099】
これに対し、直線LN04と直線LN21とが交差したタイミングによりも後のタイミングにおいて動作中のジョブの停止を開始した場合、特定の単位時間における消費電力量は、
図19に示すように、使用可能電力量を超える可能性がある。
【0100】
すなわち、情報処理装置1は、直線LN04と直線LN21とが交差した場合、直線LN04と直線LN21とが交差したタイミングにおいて動作中の全ジョブを停止することを条件として、特定の単位時間における消費電力量が使用可能電力量を超えることを防止することが可能になる。
【0101】
なお、
図20に示すように、直線LN04と直線LN21とが交差しなかった場合、猶予時刻から単位時間経過時刻までの間、並列処理装置2における消費電力が常に最大消費電力であった場合であっても、特定の単位時間における消費電力量が使用可能電力量を超えることはない。
【0102】
[第2の実施の形態の概略]
次に、第2の実施の形態について説明する。
【0103】
第2の実施の形態における電力管理処理において、情報処理装置1は、並列処理装置2の電力量計から取得した消費電力量が基準電力量に到達した場合であっても、そのときの並列処理装置2の消費電力が最大消費電力未満である場合、並列処理装置2において動作中のジョブのうち、停止する必要があるジョブについてのみ停止を行う。
【0104】
これにより、情報処理装置1は、並列処理装置2の電力量計から取得した消費電力量が基準電力量に到達した場合であっても、並列処理装置2において動作中の全ジョブを停止する必要はなくなる。そのため、情報処理装置1は、動作中のジョブの停止が並列処理装置2(並列処理装置2において実行中の各種処理)に与える影響を抑えることが可能になる。
【0105】
なお、第2の実施の形態における電力管理処理は、S44の処理において行われる処理の内容についてのみ、第1の実施の形態における電力管理処理と異なる。そのため、以下、第2の実施の形態における電力管理処理のうち、S44の処理についてのみ説明を行う。
【0106】
[第2の実施の形態の詳細]
図21及び
図22は、第2の実施の形態における電力管理処理の詳細の一部を説明するフローチャート図である。具体的に、
図21及び
図22は、第2の実施の形態における処理のうち、S44の処理について説明する図である。
【0107】
ジョブ停止部115は、S43の処理において、S32の処理で取得した消費電力量がS41の処理で算出した基準電力量に到達していると判定した場合(S43のYES)、新たなジョブの実行の開始の中止を並列処理装置2に対して指示する(S61)。
【0108】
そして、ジョブ停止部115は、例えば、情報格納領域130に記憶されている電力量情報(図示しない)を参照し、並列処理装置2における現在の消費電力を算出する(S62)。電力量情報は、例えば、S32の処理で取得した消費電力量が蓄積された情報である。
【0109】
具体的に、ジョブ停止部115は、例えば、S62の処理において、電力量情報に含まれる情報のうち、最近取得された所定回の情報に対応する消費電力量を参照し、並列処理装置2における現在の消費電力を算出するものであってよい。
【0110】
さらに具体的に、例えば、並列処理装置2の電力量計から今回のS32の処理において取得された消費電力量が480000(J)であって、前回のS32の処理(例えば、今回のS32の処理の60秒前に行われたS32の処理)において取得された消費電力量が420000(J)であった場合、ジョブ停止部115は、480000(J)から420000(J)を減算することによって60000(J)を算出する。そして、ジョブ停止部115は、この場合、例えば、算出した60000(J)を60(秒)で除算することによって算出した1000(W)を、並列処理装置2における現在の消費電力として算出する。
【0111】
続いて、ジョブ停止部115は、情報格納領域130に記憶されているジョブ停止時間情報134が示すジョブ停止時間に、S62の処理で算出した消費電力を乗算することによって第3消費電力量を算出する(S63)。
【0112】
すなわち、ジョブ停止部115は、S61の処理において、新たなジョブの実行の開始の中止を行っている。そのため、情報処理装置1は、並列処理装置2における現在の消費電力(S62の処理で算出した消費電力)とジョブ停止時間とを乗算することによって算出される消費電力量が、並列処理装置2において動作中のジョブを停止するまでに消費される電力量の最大値であると判定することが可能である。したがって、ジョブ停止部115は、S63の処理において、並列処理装置2における現在の消費電力とジョブ停止時間とを乗算することによって第3消費電力量の算出を行う。
【0113】
具体的に、
図11で説明した情報には、ジョブ停止時間として300(秒)が設定されている。そのため、S62の処理で算出した消費電力が1000(W)である場合、ジョブ停止部115は、第3消費電力量として300000(J)を算出する。
【0114】
そして、ジョブ停止部115は、情報格納領域130に記憶されている使用可能電力情報133が示す使用可能電力量から、S32の処理で取得した消費電力量と、S63の処理で算出した第3消費電力量とを減算した電力量を算出する(S64)。
【0115】
すなわち、ジョブ停止部115は、使用可能電力量から、現在時刻を含む特定の単位時間における並列処理装置2の消費電力量と、並列処理装置2において動作中のジョブを停止するまでに消費される電力量の最大値とを減算する。これにより、ジョブ停止部115は、並列処理装置2において動作中のジョブの停止が完了してから特定の単位時間が経過するまでの間に、並列処理装置2が消費することができる電力量を算出することが可能になる。
【0116】
具体的に、
図11で説明した情報には、使用可能電力量として1200000(J)が設定されている。そのため、例えば、S32の処理において取得した消費電力量が480000(J)であって、S63の処理で算出した第3消費電力量が300000(J)である場合、ジョブ停止部115は、S64の処理において、1200000(J)から480000(J)と300000(J)とを減算することによって420000(J)を算出する。
【0117】
その後、ジョブ停止部115は、S64の処理で算出した電力量を、現在時刻が含まれる特定の単位時間が経過するまでの残り時間から、情報格納領域130に記憶されたジョブ停止時間情報134が示すジョブ停止時間を減算した時間で除算することによって基準消費電力を算出する(S65)。
【0118】
すなわち、ジョブ停止部115は、現在時刻から特定の単位時間が経過するまでの間に、並列処理装置2が消費することができる電力を基準消費電力として算出する。
【0119】
具体的に、例えば、特定の単位時間が経過するまでの残り時間からジョブ停止時間を減算した時間が900秒であって、S64の処理で算出した電力量が420000(J)である場合、ジョブ停止部115は、420000(J)を900(秒)で除算することによって算出した約467(W)を、基準消費電力として算出する。
【0120】
続いて、ジョブ停止部115は、
図22に示すように、並列処理装置2において動作中のジョブのうち、消費電力の合計がS62の処理で算出した消費電力からS65の処理で算出した基準消費電力を減算した消費電力以上になる1以上のジョブを特定する(S71)。
【0121】
すなわち、ジョブ停止部115は、現在時刻から特定の単位時間が経過するまでの残り時間までの間における消費電力を基準消費電力以下にするために、並列処理装置2において動作中のジョブのうち、停止する必要がある1以上のジョブを特定する。
【0122】
具体的に、ジョブ停止部115は、例えば、並列処理装置2において動作中のジョブのうち、消費電力が大きいジョブを優先的に停止するものあってよい。また、ジョブ停止部115は、例えば、並列処理装置2において動作中のジョブのうち、ジョブの実行開始タイミングが新しいジョブを優先的に停止するものあってよい。また、ジョブ停止部115は、例えば、並列処理装置2において動作中のジョブのうち、過去に行われた電力管理処理において停止された回数が少ないジョブを優先的に停止するものあってよい。さらに、ジョブ停止部115は、例えば、事業者によって予め定められた優先度(重要度)が低いジョブを優先的に停止するものであってよい。
【0123】
その後、ジョブ停止部115は、並列処理装置2において動作中のジョブのうち、S71の処理で特定した1以上のジョブのそれぞれを停止する(S72)。
【0124】
これにより、情報処理装置1は、並列処理装置2の電力量計から取得した消費電力量が基準電力量に到達した場合であっても、並列処理装置2において動作している全ジョブを停止する必要はなくなる。そのため、情報処理装置1は、動作中のジョブの停止が並列処理装置2に与える影響を抑えることが可能になる。
【0125】
なお、並列処理装置2において動作中のジョブの消費電力が、動作中において変化する可能性があるジョブである場合、ジョブ停止部115は、S62の処理において、並列処理装置2において動作中のジョブが消費する可能性がある電力の最大値を、現在の消費電力として算出するものであってもよい。
【0126】
これにより、情報処理装置1は、並列処理装置2において動作中のジョブの消費電力が、動作中において変化する可能性があるジョブである場合であっても、停止する必要があるジョブを特定することが可能になる。
【0127】
以上の実施の形態をまとめると、以下の付記のとおりである。
【0128】
(付記1)
単位時間ごとの使用可能電力量が設定された並列処理装置において動作するジョブの停止を行う情報処理装置において、
ジョブの停止中における前記並列処理装置の最小消費電力と、前記並列処理装置において消費される可能性がある最大消費電力と、前記並列処理装置において動作中のジョブを停止するまでに要するジョブ停止時間とを記憶する記憶部と、
現在時刻が含まれる特定の単位時間が経過するまでの残り時間から前記ジョブ停止時間を減算した時間に、前記最小消費電力を乗算することによって第1消費電力量を算出し、前記ジョブ停止時間に、前記最大消費電力を乗算することによって第2消費電力量を算出し、前記使用可能電力量から前記第1消費電力量と前記第2消費電力量とを減算することによって基準電力量を算出し、前記特定の単位時間における消費電力量が前記基準電力量に到達している場合、前記並列処理装置において動作中のジョブを停止する電力制御部と、を有する、
ことを特徴とする情報処理装置。
【0129】
(付記2)
付記1において、
前記電力制御部は、前記特定の単位時間における消費電力量が前記基準電力量未満である場合、前記並列処理装置において動作中のジョブの停止を行わない、
ことを特徴とする情報処理装置。
【0130】
(付記3)
付記1において、
前記電力制御部は、前記特定の単位時間が経過するまでの残り時間が前記ジョブ停止時間よりも長い場合に、前記第1消費電力量の算出を行う、
ことを特徴とする情報処理装置。
【0131】
(付記4)
付記1において、
前記電力制御部は、
前記特定の単位時間における消費電力量が前記基準電力量以上である場合、新たなジョブの実行の開始を中止し、
前記ジョブ停止時間に、前記並列処理装置における現在の消費電力を乗算することによって第3消費電力量を算出し、
前記使用可能電力量から前記特定の単位時間における消費電力量と前記第3消費電力量とを減算した電力量を、前記特定の単位時間が経過するまでの残り時間から前記ジョブ停止時間を減算した時間によって除算することによって基準消費電力を算出し、
前記並列処理装置において動作中のジョブから、消費電力の合計が前記現在の消費電力から前記基準消費電力を減算した消費電力以上になる1以上のジョブを特定し、特定した前記1以上のジョブを停止する、
ことを特徴とする情報処理装置。
【0132】
(付記5)
付記4において、
前記電力制御部は、前記並列処理装置において動作中のジョブから、消費電力が大きいジョブを停止するジョブとして優先的に特定する、
ことを特徴とする情報処理装置。
【0133】
(付記6)
単位時間ごとの使用可能電力量が設定された並列処理装置において動作するジョブの停止を行う電力管理方法において、
ジョブの停止中における前記並列処理装置の最小消費電力と、前記並列処理装置において消費される可能性がある最大消費電力と、前記並列処理装置において動作中のジョブを停止するまでに要するジョブ停止時間とを記憶し、
現在時刻が含まれる特定の単位時間が経過するまでの残り時間から前記ジョブ停止時間を減算した時間に、前記最小消費電力を乗算することによって第1消費電力量を算出し、
前記ジョブ停止時間に、前記最大消費電力を乗算することによって第2消費電力量を算出し、前記使用可能電力量から前記第1消費電力量と前記第2消費電力量とを減算することによって基準電力量を算出し、
前記特定の単位時間における消費電力量が前記基準電力量に到達している場合、前記並列処理装置において動作中のジョブを停止する、
ことを特徴とする電力管理方法。
【0134】
(付記7)
付記6において、
前記ジョブを停止する工程では、
前記特定の単位時間における消費電力量が前記基準電力量以上である場合、新たなジョブの実行の開始を中止し、
前記ジョブ停止時間に、前記並列処理装置における現在の消費電力を乗算することによって第3消費電力量を算出し、
前記使用可能電力量から前記特定の単位時間における消費電力量と前記第3消費電力量とを減算した電力量を、前記特定の単位時間が経過するまでの残り時間から前記ジョブ停止時間を減算した時間によって除算することによって基準消費電力を算出し、
前記並列処理装置において動作中のジョブから、消費電力の合計が前記現在の消費電力から前記基準消費電力を減算した消費電力以上になる1以上のジョブを特定し、特定した前記1以上のジョブを停止する、
ことを特徴とする電力管理方法。
【0135】
(付記8)
単位時間ごとの使用可能電力量が設定された並列処理装置において動作するジョブの停止を行う処理をコンピュータに実行させる電力管理プログラムにおいて、
ジョブの停止中における前記並列処理装置の最小消費電力と、前記並列処理装置において消費される可能性がある最大消費電力と、前記並列処理装置において動作中のジョブを停止するまでに要するジョブ停止時間とを記憶し、
現在時刻が含まれる特定の単位時間が経過するまでの残り時間から前記ジョブ停止時間を減算した時間に、前記最小消費電力を乗算することによって第1消費電力量を算出し、
前記ジョブ停止時間に、前記最大消費電力を乗算することによって第2消費電力量を算出し、前記使用可能電力量から前記第1消費電力量と前記第2消費電力量とを減算することによって基準電力量を算出し、
前記特定の単位時間における消費電力量が前記基準電力量に到達している場合、前記並列処理装置において動作中のジョブを停止する、
処理を前記コンピュータに実行させることを特徴とする電力管理プログラム。
【0136】
(付記9)
付記8において、
前記ジョブを停止する処理では、
前記特定の単位時間における消費電力量が前記基準電力量以上である場合、新たなジョブの実行の開始を中止し、
前記ジョブ停止時間に、前記並列処理装置における現在の消費電力を乗算することによって第3消費電力量を算出し、
前記使用可能電力量から前記特定の単位時間における消費電力量と前記第3消費電力量とを減算した電力量を、前記特定の単位時間が経過するまでの残り時間から前記ジョブ停止時間を減算した時間によって除算することによって基準消費電力を算出し、
前記並列処理装置において動作中のジョブから、消費電力の合計が前記現在の消費電力から前記基準消費電力を減算した消費電力以上になる1以上のジョブを特定し、特定した前記1以上のジョブを停止する、
ことを特徴とする電力管理プログラム。