JPWO2017168664A1 - 配置探索プログラム、配置探索方法、および配置探索装置 - Google Patents

配置探索プログラム、配置探索方法、および配置探索装置 Download PDF

Info

Publication number
JPWO2017168664A1
JPWO2017168664A1 JP2018507964A JP2018507964A JPWO2017168664A1 JP WO2017168664 A1 JPWO2017168664 A1 JP WO2017168664A1 JP 2018507964 A JP2018507964 A JP 2018507964A JP 2018507964 A JP2018507964 A JP 2018507964A JP WO2017168664 A1 JPWO2017168664 A1 JP WO2017168664A1
Authority
JP
Japan
Prior art keywords
power consumption
information
facility
servers
arrangement
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.)
Granted
Application number
JP2018507964A
Other languages
English (en)
Other versions
JP6699720B2 (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
Publication of JPWO2017168664A1 publication Critical patent/JPWO2017168664A1/ja
Application granted granted Critical
Publication of JP6699720B2 publication Critical patent/JP6699720B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3209Monitoring remote activity, e.g. over telephone lines or network connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • G06F11/3062Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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
    • 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]
    • 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/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support
    • 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)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Power Sources (AREA)

Abstract

配置探索装置(100)は、複数のサーバ(111)への複数の仮想マシンの配置に関するパラメータの初期値に、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報のうち、少なくともいずれかに基づき設定された初期値を用いる。配置探索装置(100)は、施設(110)全体での消費電力を最適化するように、複数のサーバ(111)への複数の仮想マシンの配置に関するパラメータを用いて、複数のサーバ(111)への複数の仮想マシンの配置を求める。配置探索装置(100)は、求めた仮想マシンの配置に従って、複数のサーバ(111)への複数の仮想マシンの配置を制御する。配置探索装置(100)は、逐次的なパラメータ推定方法により、複数のサーバ(111)への複数の仮想マシンの配置に関するパラメータを更新する。

Description

本発明は、配置探索プログラム、配置探索方法、および配置探索装置に関する。
従来、データセンタ内に設置された複数のサーバに複数の仮想マシン(VM:Virtual Machine)を割り当てる際、または、サーバ間で仮想マシンを移行する際などに、データセンタ全体での消費電力の最適化を図ることが望まれる。
先行技術としては、例えば、仮想マシンの配置の関数として記述された、サーバでの消費電力と電源設備での消費電力との合計消費電力を目的関数とする混合整数計画問題を解き、混合整数計画問題の解に基づいて各サーバに仮想マシンを配置するものがある。また、例えば、配置情報を用いて、装置群の消費電力と給電設備の給電損失と冷却設備の冷却電力を求め、消費電力、給電損失、および冷却電力の総和を低減するように装置群へ作業負荷を割り当てる技術がある。また、例えば、情報処理装置の装置関連消費電力式を元にした省電力性評価指標を用いて、計算機室全体の省電力化を実現するよう作業負荷の割当を決定する技術がある。また、例えば、運転される冷凍機それぞれの消費電力を上記複数の組み合わせについて求め、さらに、該求めた各消費電力の総和を演算し、該総和値が最小値となる組み合わせまたは他に比べて低い値となる組み合わせを選択して設定する技術がある。
国際公開第2013/042615号 特開2009−252056号公報 国際公開第2010/032501号 特開2006−20785号公報
しかしながら、上述した従来技術では、データセンタ全体での消費電力を低減化することが難しい場合がある。例えば、データセンタ全体での消費電力を目的関数とする混合整数計画問題に用いられるパラメータとして、どのような値を設定することが好ましいかが分からず、データセンタ全体での消費電力を最適化することが難しい。
1つの側面では、本発明は、施設全体での消費電力を最適化することができる配置探索プログラム、配置探索方法、および配置探索装置を提供することを目的とする。
本発明の一側面によれば、複数のサーバを有する施設における、前記複数のサーバへの複数の仮想マシンの配置を探索する際に、前記複数のサーバへの前記複数の仮想マシンの配置に関するパラメータの初期値を、前記複数のサーバの消費電力に関する第1の性能情報、前記施設に設置された空調設備の消費電力に関する第2の性能情報、前記施設に配置された電源設備の消費電力に関する第3の性能情報、および、前記複数のサーバ間および前記複数のサーバと前記空調設備との間の熱結合に関する熱結合情報のうち、少なくともいずれかに基づき設定し、逐次的なパラメータ推定方法により前記施設全体の消費電力を最適化するように、前記パラメータを更新する配置探索プログラム、配置探索方法、および配置探索装置が提案される。
本発明の一態様によれば、施設全体での消費電力を最適化することができるという効果を奏する。
図1は、実施の形態にかかる配置探索方法の一実施例を示す説明図である。 図2は、電子計算機システム200の一例を示す説明図である。 図3は、配置探索装置100のハードウェア構成例を示すブロック図である。 図4は、データセンタ構造情報400の記憶内容の一例を示す説明図である。 図5は、最大サイズ定義情報500の記憶内容の一例を示す説明図である。 図6は、配置済みサイズ情報600の記憶内容の一例を示す説明図である。 図7は、追加配置数情報700の記憶内容の一例を示す説明図である。 図8は、仮想マシンサイズ情報800の記憶内容の一例を示す説明図である。 図9は、パラメータ情報900の記憶内容の一例を示す説明図である。 図10は、定数情報1000の記憶内容の一例を示す説明図である。 図11は、動作消費電力情報1100の記憶内容の一例を示す説明図である。 図12は、ベース消費電力情報1200の記憶内容の一例を示す説明図である。 図13は、室内機情報1300の記憶内容の一例を示す説明図である。 図14は、室外機情報1400の記憶内容の一例を示す説明図である。 図15は、電源設備情報1500の記憶内容の一例を示す説明図である。 図16は、熱流量関係情報1600の記憶内容の一例を示す説明図である。 図17は、供給熱流量情報1700の記憶内容の一例を示す説明図である。 図18は、配置探索装置100の機能的構成例を示すブロック図である。 図19は、配置探索装置100が混合整数計画問題のパラメータを更新した結果の一例を示す説明図である。 図20は、仮想マシンの配置処理手順の一例を示すフローチャートである。
以下に、図面を参照して、本発明にかかる配置探索プログラム、配置探索方法、および配置探索装置の実施の形態を詳細に説明する。
(実施の形態にかかる配置探索方法の一実施例)
図1は、実施の形態にかかる配置探索方法の一実施例を示す説明図である。配置探索装置100は、施設110全体での消費電力を最適化するためのコンピュータである。施設110とは、例えば、データセンタである。
施設110は、複数のサーバ111を有する。施設110は、さらに、複数のサーバ111に電力を供給する電源設備113、および、複数のサーバ111を冷却する空調設備112などを有する。最適化とは、例えば、制約条件の中で、施設110全体での消費電力を最小化することである。
ここで、データセンタに設置された複数のサーバ111に複数の仮想マシンを割り当てる際には、データセンタ全体での消費電力が低減化されるように割り当てることが望まれる傾向がある。これに対し、下記(a)〜(c)が考えられるが、データセンタ全体での消費電力を低減化することが難しい場合がある。
(a)例えば、仮想マシンの配置の関数として記述された、サーバ111、空調設備112、電源設備113の合計消費電力を目的関数とする混合整数計画問題を解き、混合整数計画問題の解に基づいて複数のサーバ111に複数の仮想マシンを配置することが考えられる。
しかしながら、データセンタ全体での消費電力を目的関数とする混合整数計画問題に用いられるパラメータとして、どのような値を設定することが好ましいかが分からず、データセンタ全体での消費電力を低減化することが難しい場合がある。パラメータは、例えば、サーバ111、空調設備112、および、電源設備113の消費電力特性をあらわす係数、データセンタ内の熱移動特性をあらわす係数などである。
具体的には、データセンタ内の複数箇所に温度センサを設置したとしても、温度センサを設置した箇所の間でどのように熱が移動するかを精度よく解析することは難しいため、データセンタ内の熱移動特性を解析することは難しい。結果として、データセンタ内の熱移動特性をあらわす係数として、どのような値を設定することが好ましいかが分からず、データセンタ全体での消費電力を低減化することが難しい。
また、パラメータとして設定することが好ましい値は、時間経過によっても変化してしまう傾向がある。例えば、時間経過によって、データセンタが経年劣化し、または、データセンタ内のサーバ111、電源設備113、空調設備112の配置が変更されることにより、パラメータとして設定することが好ましい値は変化してしまう傾向がある。結果として、混合整数計画問題に用いられるパラメータとして好ましい値を設定したとしても、時間経過によって好ましくない値になってしまい、データセンタ全体での消費電力を低減化することが難しくなる場合がある。
(b)さらに、(a)に対し、逐次的なパラメータ推定方法を適用することにより、データセンタ全体での消費電力を目的関数とする混合整数計画問題を解く都度、混合整数計画問題に用いられるパラメータを更新して、好ましい値に近づけることが考えられる。逐次的なパラメータ推定方法は、例えば、逐次最小二乗法である。ここで、逐次的なパラメータ推定方法は、混合整数計画問題に用いられるパラメータの個数が変化しないまま、混合整数計画問題が繰り返し解かれる場合などに適用することができる。
しかしながら、混合整数計画問題の目的関数が仮想マシンの配置に対する陽関数として記述されるため、配置する仮想マシンの種類や数が変化してしまうと、混合整数計画問題に用いられる変数やパラメータの個数も変化してしまう傾向がある。結果として、逐次的なパラメータ推定方法を適用することができず、混合整数計画問題に用いられるパラメータを好ましい値に更新することができず、データセンタ全体での消費電力を低減化することが難しい場合がある。
(c)このため、仮想マシンの配置に対する陽関数ではなく、サーバ111が実行する仮想マシンの合計サイズおよびサーバ111の電源投入の有無の陽関数として記述された、サーバ111、空調設備112、電源設備113の合計消費電力を目的関数とする混合整数計画問題を用いることが考えられる。これによれば、配置する仮想マシンの種類や数が変化しても、混合整数計画問題に用いられる変数やパラメータの個数は変化しないようになる。
これに対し、逐次的なパラメータ推定方法を適用することにより、データセンタ全体での消費電力を目的関数とする混合整数計画問題を解く都度、混合整数計画問題に用いられるパラメータを更新して、好ましい値に近づけることが考えられる。
しかしながら、混合整数計画問題に用いられるパラメータの初期値として、どのような値を設定することが好ましいかが分からず、混合整数計画問題に用いられるパラメータが好ましい値に近づくまでにかかる時間の増大化を招いてしまう可能性がある。そして、混合整数計画問題に用いられるパラメータが好ましい値に近づくまでの間は、混合整数計画問題に用いられるパラメータとして好ましくない値が設定されてしまうため、データセンタ全体での消費電力を低減化することが難しい場合がある。
そこで、本実施の形態では、施設110全体での消費電力を目的関数とする混合整数計画問題を解く際に、混合整数計画問題に用いられるパラメータとして好ましい値が設定されやすくしつつ、施設110全体での消費電力を最適化する配置探索方法について説明する。
(1−1)配置探索装置100は、複数のサーバ111への複数の仮想マシンの配置に関するパラメータの初期値に、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報のうち、少なくともいずれかに基づき設定された初期値を用いる。
第1の性能情報とは、複数のサーバ111の消費電力に関する性能情報である。第1の性能情報は、例えば、サーバ111が実行する仮想マシンの単位サイズに対する消費電力を規定した情報、および、サーバ111で常時消費される消費電力を規定した情報などである。第1の性能情報は、具体的には、図11に後述する動作消費電力情報1100、および、図12に後述するベース消費電力情報1200などである。
第2の性能情報とは、施設110に設置された空調設備112の消費電力に関する性能情報である。第2の性能情報は、例えば、空調室内機に流入する熱流量に対する空調室内機で消費される消費電力を規定した情報、および、空調室内機で常時消費される消費電力を規定した情報などである。また、第2の性能情報は、例えば、空調室外機に流入する熱流量に対する空調室外機で消費される消費電力を規定した情報などである。第2の性能情報は、具体的には、図13に後述する室内機情報1300、および、図14に後述する室外機情報1400などである。
第3の性能情報とは、施設110に配置された電源設備113の消費電力に関する性能情報である。第3の性能情報は、例えば、サーバ111の消費電力に対する電源設備113で消費される消費電力を規定した情報、および、電源設備113で常時消費される消費電力を規定した情報などである。第3の性能情報は、具体的には、図15に後述する電源設備情報1500などである。
熱結合情報とは、複数のサーバ111間および複数のサーバ111と空調設備112との間の熱結合に関する情報である。熱結合情報は、例えば、サーバ111と空調設備112との間の熱流量関係を規定する情報、および、サーバ111と空調設備112との供給熱流量を規定する情報などである。熱結合情報は、具体的には、図16に後述する熱流量関係情報1600、および、図17に後述する供給熱流量情報1700などである。
パラメータの初期値は、例えば、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報に基づき設定された、サーバ111が実行する仮想マシンの合計サイズに対する施設110全体の消費電力に関する初期値を含む。サーバ111が実行する仮想マシンの合計サイズに対する施設110全体の消費電力に関する初期値は、例えば、後述する式(15)によって規定される。
パラメータの初期値は、例えば、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報に基づき設定された、サーバ111への電源投入の有無に対する施設110全体の消費電力に関する初期値を含む。サーバ111への電源投入の有無に対する施設110全体の消費電力に関する初期値は、例えば、後述する式(16)によって規定される。
パラメータの初期値は、例えば、第2の性能情報、第3の性能情報、および、熱結合情報に基づき設定された、施設110全体での常時消費される消費電力に関する初期値を含む。施設110全体での常時消費される消費電力に関する初期値は、例えば、後述する式(17)によって規定される。
(1−2)配置探索装置100は、施設110全体での消費電力を最適化するように、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを用いて、複数のサーバ111への複数の仮想マシンの配置を求める。配置探索装置100は、求めた仮想マシンの配置に従って、複数のサーバ111への複数の仮想マシンの配置を制御する。
配置探索装置100は、例えば、サーバ111での消費電力と空調設備112での消費電力と電源設備113での消費電力との合計消費電力を目的関数とする混合整数計画問題を解き、混合整数計画問題の解に基づいて配置を求める。合計消費電力を目的関数とする混合整数計画問題は、例えば、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを用いて、サーバ111が実行する仮想マシンの合計サイズおよびサーバ111の電源投入の有無の関数として記述される。合計消費電力を目的関数とする混合整数計画問題は、具体的には、後述する式(1)、式(5)〜式(10)によって規定される。
(1−3)配置探索装置100は、逐次的なパラメータ推定方法により、施設110全体での消費電力を最適化するように、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを更新する。逐次的なパラメータ推定方法は、例えば、逐次最小二乗法、忘却要素を用いた逐次最小二乗法、矩形窓を用いた逐次最小二乗法、カルマンフィルタなどである。
配置探索装置100は、例えば、複数のサーバ111への複数の仮想マシンの配置が行われた後のデータセンタ全体での消費電力の計測値を、電力計(不図示)などから取得する。配置探索装置100は、逐次的なパラメータ推定方法により、目的関数によって求められたデータセンタ全体での消費電力の計算値と、消費電力との計測値とを用いて、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを更新する。配置探索装置100は、具体的には、後述する式(19)、式(20)により、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを更新する。
これによれば、配置探索装置100は、逐次的なパラメータ推定方法により、混合整数計画問題に用いられるパラメータを、比較的好ましい初期値から始めて、より好ましい値へと更新していくことができる。これにより、配置探索装置100は、混合整数計画問題に用いられるパラメータが好ましい値に近づくまでにかかる時間の低減化を図ることができる。
結果として、配置探索装置100は、混合整数計画問題に用いられるパラメータとして比較的好ましくない値を用いてしまう回数を低減化することができ、データセンタ全体での消費電力を効果的に低減することができる。また、配置探索装置100は、混合整数計画問題に用いられるパラメータを好ましい値に近づける間も、混合整数計画問題に用いられるパラメータとして比較的好ましい値を用いることができ、データセンタ全体での消費電力を効果的に低減することができる。
また、配置探索装置100は、パラメータとして設定することが好ましい値が時間経過によって変化しても、混合整数計画問題に用いられるパラメータを好ましい値に近づけていくことができる。このため、配置探索装置100は、混合整数計画問題に用いられるパラメータとして好ましい値を用いて、データセンタ全体での消費電力を効果的に低減することができる。また、配置探索装置100は、パラメータを設定するために、データセンタ内の複数の箇所に温度センサを設けたりしなくてもよいため、データセンタの保守管理にかかるコストの増大化を抑制することができる。
(電子計算機システム200の一例)
次に、図2を用いて、図1に示した配置探索装置100を適用した、電子計算機システム200の一例について説明する。
図2は、電子計算機システム200の一例を示す説明図である。電子計算機システム200は、例えば、データセンタ210によって実現される。図2の電子計算機システム200において、データセンタ210には、N個のラック220、C台の空調設備112、配置探索装置100、および、電力計240が設置されている。各ラック220と配置探索装置100とは、例えばLAN(Local Area Network)ケーブルなどの通信ケーブルや、無線通信などによって、相互に接続されていてもよい。
各ラック220には、S台のサーバ111と、電源設備113となる無停電電源装置(UPS:Uninterruptible Power Supply)とが収容されている。各サーバ111には、仮想マシンが配置される。以下の説明では、各電源設備113は、サーバ111に電力を供給する。各電源設備113は、例えば、ラック220ごとに、同じラック220に収容されている複数のサーバ111に電力を供給する。
各空調設備112には、空調室内機231(CRAC Unit:Computer Room Air Conditioning Unit)や空調室外機232(Chiller Plant)が含まれる。空調室内機231は、ラック220内のサーバ111を冷却する。空調室外機232は、空調室内機231と同数存在し、排気を行う。
電力計240は、データセンタ210全体での消費電力を計測し、配置探索装置100に送信する。配置探索装置100は、データセンタ210全体での消費電力を最適化するように、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを用いて、複数のサーバ111への複数の仮想マシンの配置を求める。また、配置探索装置100は、逐次的なパラメータ推定方法を用いて、電力計240から受信したデータセンタ210全体での消費電力に基づき、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを更新する。
(配置探索装置100のハードウェア構成例)
次に、図3を用いて、配置探索装置100のハードウェア構成例について説明する。
図3は、配置探索装置100のハードウェア構成例を示すブロック図である。図3において、配置探索装置100は、CPU(Central Processing Unit)301と、メモリ302と、I/F(Interface)303と、ディスクドライブ304と、ディスク305と、を有する。また、各構成部は、バス300によってそれぞれ接続される。
ここで、CPU301は、配置探索装置100の全体の制御を司る。CPU301は、実施の形態にかかる配置探索プログラムを実行することにより、混合整数計画問題の求解および仮想マシンの配置を行う。また、CPU301は、配置探索プログラムを実行することにより、混合整数計画問題に用いられるパラメータの更新を行う。
メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。各種プログラムは、例えば、実施の形態にかかる配置探索プログラムを含む。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
I/F303は、通信回線を通じてネットワーク310に接続され、ネットワーク310を介して、データセンタ210のラック220などに接続される。そして、I/F303は、ネットワーク310と内部のインターフェースを司り、ラック220内のサーバ111などの他のコンピュータからのデータの入出力を制御する。I/F303には、例えば、モデムやLANアダプタなどを採用することができる。
ディスクドライブ304は、CPU301の制御に従ってディスク305に対するデータのリード/ライトを制御する。ディスクドライブ304は、例えば、磁気ディスクドライブである。ディスク305は、ディスクドライブ304の制御で書き込まれたデータを記憶する不揮発メモリである。ディスク305は、例えば、磁気ディスク、光ディスクなどである。
配置探索装置100は、上述した構成部のほか、例えば、SSD(Solid State Drive)、半導体メモリ、キーボード、マウス、ディスプレイなどを有することにしてもよい。また、配置探索装置100は、ディスクドライブ304およびディスク305の代わりに、SSDおよび半導体メモリなどを有していてもよい。
(サーバ111のハードウェア構成例)
また、サーバ111のハードウェア構成例は、図3に示した配置探索装置100のハードウェア構成例と同様であるため、説明を省略する。
(配置探索装置100が記憶する各種情報の一例)
次に、配置探索装置100が記憶する各種情報の一例について説明する。配置探索装置100は、図4〜図17に後述するような、混合整数計画問題の求解、混合整数計画問題のパラメータに対する初期値の設定、混合整数計画問題のパラメータに対する逐次的なパラメータ推定方法による更新などの際に用いられる各種情報を記憶する。図4〜図17に後述する各種情報は、例えば、配置探索装置100のメモリ302によって記憶される。
(データセンタ構造情報400の記憶内容)
まず、図4を用いて、データセンタ構造情報400の記憶内容の一例について説明する。
図4は、データセンタ構造情報400の記憶内容の一例を示す説明図である。図4に示すように、データセンタ構造情報400は、データセンタ210のラック220の数とサーバ111の数と空調設備112の数とを示す情報である。図4の例では、データセンタ210に設置されたラック220の数は、N個である。Nは、正の整数である。1ラック220あたりのサーバ111の数は、S個である。Sは、正の整数である。データセンタ210に設置された空調設備112の数は、C個である。Cは、正の整数である。データセンタ構造情報400は、例えば、混合整数計画問題の求解の際に用いられる。
(最大サイズ定義情報500の記憶内容)
次に、図5を用いて、最大サイズ定義情報500の記憶内容の一例について説明する。
図5は、最大サイズ定義情報500の記憶内容の一例を示す説明図である。図5に示すように、最大サイズ定義情報500は、i番目のラック220のj番目のサーバ111に配置可能な仮想マシンの最大サイズを示す情報である。iは1〜Nの整数である。jは1〜Sの整数である。図5の例では、i番目のラック220のj番目のサーバ111に配置可能な仮想マシンの最大サイズは、Lijである。Lijは、例えば、コア数やスレッド数である。最大サイズ定義情報500は、例えば、混合整数計画問題の求解の際に用いられる。
(配置済みサイズ情報600の記憶内容)
次に、図6を用いて、配置済みサイズ情報600の記憶内容の一例について説明する。
図6は、配置済みサイズ情報600の記憶内容の一例を示す説明図である。図6に示すように、配置済みサイズ情報600は、i番目のラック220のj番目のサーバ111に配置済みの仮想マシンの合計サイズを示す情報である。図6の例では、i番目のラック220のj番目のサーバ111に配置済みの仮想マシンの合計サイズは、w0 ijである。w0 ijは、0以上Lij以下の整数である。配置済みサイズ情報600は、例えば、混合整数計画問題の求解の際に用いられる。また、配置済みサイズ情報600は、例えば、サーバに仮想マシンを追加配置する都度、更新される。
(追加配置数情報700の記憶内容)
次に、図7を用いて、追加配置数情報700の記憶内容の一例について説明する。
図7は、追加配置数情報700の記憶内容の一例を示す説明図である。図7に示すように、追加配置数情報700は、追加で配置すべき仮想マシンの数を規定する情報である。図7の例では、追加で配置すべき仮想マシンの数は、M個である。Mは正の整数である。追加配置数情報700は、例えば、混合整数計画問題の求解の際に用いられる。
(仮想マシンサイズ情報800の記憶内容)
次に、図8を用いて、仮想マシンサイズ情報800の記憶内容の一例について説明する。
図8は、仮想マシンサイズ情報800の記憶内容の一例を示す説明図である。図8に示すように、仮想マシンサイズ情報800は、追加で配置すべき仮想マシンのサイズを規定する情報である。図8の例では、追加で配置すべきM個の仮想マシンに1〜Mの番号を付したときのn番目の仮想マシンのサイズは、τnである。nは1〜Mの整数である。仮想マシンサイズ情報800は、例えば、混合整数計画問題の求解の際に用いられる。
(パラメータ情報900の記憶内容)
次に、図9を用いて、パラメータ情報900の記憶内容の一例について説明する。
図9は、パラメータ情報900の記憶内容の一例を示す説明図である。図9に示すように、パラメータ情報900は、データセンタ210全体での消費電力を目的関数とする混合整数計画問題に用いられる、2NS+1個のパラメータを規定する情報である。図9の例では、データセンタ210全体での消費電力を目的関数とする混合整数計画問題に用いられるパラメータは、θw 1,1〜θw N,Sである。また、データセンタ210全体での消費電力を目的関数とする混合整数計画問題に用いられるパラメータは、θv 1,1〜θv N,Sである。データセンタ210全体での消費電力を目的関数とする混合整数計画問題に用いられるパラメータは、θbである。パラメータ情報900は、例えば、混合整数計画問題の求解の際に用いられる。また、パラメータ情報900は、例えば、逐次的なパラメータ推定方法による更新の際に用いられ、逐次的なパラメータ推定方法によって更新される。
(定数情報1000の記憶内容)
次に、図10を用いて、定数情報1000の記憶内容の一例について説明する。
図10は、定数情報1000の記憶内容の一例を示す説明図である。図10に示すように、定数情報1000は、逐次的なパラメータ推定方法に用いられる定数を規定する情報である。図10の例では、逐次的なパラメータ推定方法に用いられる定数は、P1,1〜P2NS+1,2NS+1である。定数情報1000は、例えば、逐次的なパラメータ推定方法による更新の際に用いられ、逐次的なパラメータ推定方法によって更新される。
(動作消費電力情報1100の記憶内容)
次に、図11を用いて、動作消費電力情報1100の記憶内容の一例について説明する。
図11は、動作消費電力情報1100の記憶内容の一例を示す説明図である。図11に示すように、動作消費電力情報1100は、サーバ111が実行する仮想マシンの単位サイズに対する消費電力を規定する情報である。図11の例では、i番目のラック220のj番目のサーバ111で実行する仮想マシンの単位サイズあたりに消費される電力はαijワットである。αijは正の実数である。動作消費電力情報1100は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(ベース消費電力情報1200の記憶内容)
次に、図12を用いて、ベース消費電力情報1200の記憶内容の一例について説明する。
図12は、ベース消費電力情報1200の記憶内容の一例を示す説明図である。図12に示すように、ベース消費電力情報1200は、電子計算機システム200におけるベース消費電力を規定する情報である。図12の例では、i番目のラック220のj番目のサーバ111の電源がオンになることで消費される電力はβijワットである。βijは正の実数である。ベース消費電力情報1200は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(室内機情報1300の記憶内容)
次に、図13を用いて、室内機情報1300の記憶内容の一例について説明する。
図13は、室内機情報1300の記憶内容の一例を示す説明図である。図13に示すように、室内機情報1300は、空調室内機231のベース消費電力および比例係数を規定する情報である。図13の例では、k番目の空調室内機231で常に消費されるベース消費電力は、λkワットである。kは1〜Cの整数である。λkは正の実数である。また、k番目の空調室内機231に流入する熱流量に対して、流入する熱流量の何倍の電力が空調室内機231で消費されるかということをあらわす比例係数は、μkである。μkは正の実数である。室内機情報1300は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(室外機情報1400の記憶内容)
次に、図14を用いて、室外機情報1400の記憶内容の一例について説明する。
図14は、室外機情報1400の記憶内容の一例を示す説明図である。図14に示すように、室外機情報1400は、空調室外機232の比例係数を規定する情報である。図14の例では、k番目の空調室外機232に流入する熱流量に対して、流入する熱流量の何倍の電力が空調室外機232で消費されるかということをあらわす比例係数は、κkである。κkは正の実数である。なお、空調室外機232が常に電力を消費する場合には、空調室内機231と同様に、空調室外機232情報にも、空調室外機232のベース消費電力が含まれてもよい。室外機情報1400は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(電源設備情報1500の記憶内容)
次に、図15を用いて、電源設備情報1500の記憶内容の一例について説明する。
図15は、電源設備情報1500の記憶内容の一例を示す説明図である。図15に示すように、電源設備情報1500は、電源設備113のベース消費電力および比例係数を規定する情報である。図15の例では、i番目のラック220の電源設備113で常に消費されるベース消費電力はηiワットである。ηiは正の実数である。また、i番目のラック220内のサーバ111の合計消費電力に対して、合計消費電力の何倍の電力が電源設備113で消費されるかということをあらわす比例係数はεiである。εiは正の実数である。一例として、一般的な電源設備113のカタログによると、εiは0.01〜0.04程度である。電源設備情報1500は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(熱流量関係情報1600の記憶内容)
次に、図16を用いて、熱流量関係情報1600の記憶内容の一例について説明する。
図16は、熱流量関係情報1600の記憶内容の一例を示す説明図である。図16に示すように、熱流量関係情報1600は、ラック220と空調設備112との間の熱流量関係を規定する情報である。図16の例では、i番目のラック220から排出された熱流量の何倍がk番目の空調室内機231に流入するかということをあらわす比例係数は、ψkiである。ψkiは、0以上1以下の実数である。熱流量関係情報1600は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(供給熱流量情報1700の記憶内容)
次に、図17を用いて、供給熱流量情報1700の記憶内容の一例について説明する。
図17は、供給熱流量情報1700の記憶内容の一例を示す説明図である。図17に示すように、供給熱流量情報1700は、ラック220と空調設備112との供給熱流量を規定する情報である。図17の例では、i番目のラック220に対して空調室内機231から供給される熱流量は、qsup,iワットである。qsup,iは実数である。供給熱流量情報1700は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(配置探索装置100の機能的構成例)
次に、図18を用いて、配置探索装置100の機能的構成例について説明する。
図18は、配置探索装置100の機能的構成例を示すブロック図である。配置探索装置100、記憶部1801と、管理部1802と、判定部1803と、求解部1804と、配置部1805と、推定部1806とを含む。
記憶部1801は、例えば、図3に示したメモリ302、ディスク305などの記憶領域によって実現される。管理部1802〜推定部1806は、制御部となる機能であり、例えば、図3に示したメモリ302、ディスク305などの記憶領域に記憶されたプログラムをCPU301に実行させることにより、または、I/F303により、その機能を実現する。各機能部の処理結果は、例えば、図3に示したメモリ302、ディスク305などの記憶領域に記憶される。
記憶部1801は、定数、変数、目的関数および制約条件を記憶している。記憶部1801は、定数、変数、目的関数および制約条件を求解部1804に入力する。記憶部1801は、例えば、メモリ302である。記憶部1801は、具体的には、図4〜図17の各種情報などを記憶する。動的に変化しない定数、変数、目的関数および制約条件は、実施の形態にかかる配置探索プログラムに記述されていてもよい。
管理部1802は、サーバ111に配置されている仮想マシンの情報に基づいて、図6の配置済みサイズ情報600を書き換える。配置済みサイズ情報600は、サーバ111ごとに、当該サーバ111に配置済みの仮想マシンの合計サイズが格納されている。配置済みサイズ定義情報は、例えば、記憶部1801に記憶されていてもよい。
判定部1803は、仮想マシンの追加配置、仮想マシンの初期配置、および、仮想マシンの再配置のいずれに対応した混合整数計画問題を解くべきかを判定する。判定部1803は、判定結果に基づいて、仮想マシンの追加配置、仮想マシンの初期配置、および仮想マシンの再配置のいずれに対応した混合整数計画問題を解く指示を、求解部1804に出力する。
求解部1804は、記憶部1801から渡される定数、変数、目的関数および制約条件と、判定部1803からの指示とに基づいて、混合整数計画問題を解く。混合整数計画問題は、サーバに要求される演算リソースの関数として記述された混合整数計画問題である。混合整数計画問題は、例えば、仮想マシンの配置に関するパラメータを用いて、サーバが実行する仮想マシンの合計サイズの関数として記述され、サーバでの消費電力と空調設備での消費電力と電源設備での消費電力との合計消費電力を目的関数とする。
求解部1804は、例えば、仮想マシンの初期配置に対応した混合整数計画問題を解くことによって、全てのサーバ111が停止している状態で、1個以上のサーバ111に1個以上の仮想マシンを配置する。また、求解部1804は、例えば、仮想マシンの追加配置に対応した混合整数計画問題を解くことによって、1個以上のサーバ111に1個以上の仮想マシンが既に配置されている状態に対して、さらに1個以上の仮想マシンを追加で配置してもよい。
また、求解部1804は、例えば、仮想マシンの再配置に対応した混合整数計画問題を解くことによって、1個以上のサーバ111に1個以上の仮想マシンが既に配置されている状態に対して、仮想マシンを配置しなおしてもよい。また、求解部1804は、一定時間ごとに仮想マシンの再配置を行うようにしてもよい。また、求解部1804は、例えば、ライブマイグレーションによる消費電力を考慮した、仮想マシンの再配置に対応した混合整数計画問題を解くことによって、仮想マシンをライブマイグレーションによって配置しなおしてもよい。
求解部1804は、具体的には、それぞれのサーバ111に配置済みの仮想マシンの合計サイズがw0 ijであり、追加で配置するn番目の仮想マシンのサイズがτnであると設定する。そして、求解部1804は、後述する式(1)の目的関数と、後述する式(5)〜式(10)の制約条件とによって規定される混合整数計画問題をソルバーによって解くことにより、仮想マシンの追加配置に対応した混合整数計画問題の解を求める。ソルバーは、例えば、GLPKやSYMPHONYやGurobi Optimizerなどである。これにより、求解部1804は、仮想マシンの追加配置に対応した混合整数計画問題を解くことができる。
また、求解部1804は、具体的には、それぞれのサーバ111に配置済みの仮想マシンの合計サイズw0 ijが0であり、追加で配置するn番目の仮想マシンのサイズがτnであると設定してもよい。そして、求解部1804は、後述する式(1)の目的関数と、後述する式(5)〜式(10)の制約条件とによって規定される混合整数計画問題をソルバーによって解くことにより、仮想マシンの初期配置に対応した混合整数計画問題の解を求める。これにより、求解部1804は、仮想マシンの初期配置に対応した混合整数計画問題を解くことができる。
また、求解部1804は、具体的には、それぞれのサーバ111に配置済みの仮想マシンの合計サイズw0 ijが0であり、それぞれのサーバ111に配置済みの仮想マシンを追加で配置する仮想マシンとして設定してもよい。そして、求解部1804は、後述する式(1)の目的関数と、後述する式(5)〜式(10)の制約条件とによって規定される混合整数計画問題をソルバーによって解くことにより、仮想マシンの再配置に対応した混合整数計画問題の解を求める。これにより、求解部1804は、仮想マシンの再配置に対応した混合整数計画問題を解くことができる。
配置部1805は、求解部1804が導出する混合整数計画問題の解に基づいて、サーバ111に仮想マシンを配置する。配置部1805は、例えば、混合整数計画問題の解となる、サーバ111が実行する仮想マシンの合計サイズwijに基づいて、サーバ111に仮想マシンを配置する。
推定部1806は、パラメータの初期値を設定する。パラメータは、例えば、サーバ111、空調設備112、電源設備113、熱移動の特性をあらわす個々の係数ではなく、係数を組み合わせた多項式によってあらわされる。推定部1806は、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報の少なくともいずれかに基づき、パラメータの初期値を設定する。第1の性能情報とは、複数のサーバ111の消費電力に関する性能情報である。第2の性能情報とは、施設110に設置された空調設備112の消費電力に関する性能情報である。第3の性能情報とは、施設110に配置された電源設備113の消費電力に関する性能情報である。
パラメータの初期値は、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報の少なくともいずれかに基づき設定された、サーバ111が実行する仮想マシンの合計サイズに対する施設110全体の消費電力に関する初期値を含む。パラメータの初期値は、例えば、後述する式(15)によって規定される初期値を含む。
推定部1806は、例えば、図11,図13〜図16の各種情報が示す定数を、後述する式(15)に代入することにより、パラメータの初期値を算出し、パラメータの初期値を設定する。このとき、推定部1806は、図11,図13〜図16のいずれかの情報が示す定数が分からなければ、当該定数の代わりとして用いられる所定値を後述する式(15)に代入することにより、パラメータの初期値を算出してもよい。定数の代わりとして用いられる所定値は、例えば、1である。
パラメータの初期値は、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報の少なくともいずれかに基づき設定された、サーバ111への電源投入の有無に対する施設110全体の消費電力に関する初期値を含む。パラメータの初期値は、例えば、後述する式(16)によって規定される初期値を含む。
推定部1806は、例えば、図12〜図16の各種情報が示す定数を、後述する式(16)に代入することにより、パラメータの初期値を算出し、パラメータの初期値を設定する。このとき、推定部1806は、図12〜図16のいずれかの情報が示す定数が分からなければ、当該定数の代わりとして用いられる所定値を後述する式(16)に代入することにより、パラメータの初期値を算出してもよい。定数の代わりとして用いられる所定値は、例えば、1である。
パラメータの初期値は、第2の性能情報、第3の性能情報、および、熱結合情報の少なくともいずれかに基づき設定された、施設110全体での常時消費される消費電力に関する初期値を含む。パラメータの初期値は、例えば、後述する式(17)によって規定される初期値を含む。
推定部1806は、例えば、図13〜図17の各種情報が示す定数を、後述する式(17)に代入することにより、パラメータの初期値を算出し、パラメータの初期値を設定する。このとき、推定部1806は、図13〜図17のいずれかの情報が示す定数が分からなければ、当該定数の代わりとして用いられる所定値を後述する式(17)に代入することにより、パラメータの初期値を算出してもよい。定数の代わりとして用いられる所定値は、例えば、1である。
また、推定部1806は、逐次的なパラメータ推定方法により、施設110全体での消費電力を最適化するように、パラメータを更新する。逐次的なパラメータ推定方法は、例えば、逐次最小二乗法、忘却要素を用いた逐次最小二乗法、矩形窓を用いた逐次最小二乗法、カルマンフィルタなどである。推定部1806は、例えば、逐次的なパラメータ推定方法により、施設110全体での消費電力への影響量をより精度よくあらわすようにパラメータを更新する。
推定部1806は、具体的には、施設110全体での消費電力の計算上の値が、配置部1805がサーバ111に仮想マシンを配置した後の施設110全体での消費電力の計測値に近づくように、パラメータを更新する。推定部1806は、より具体的には、後述する式(19)および式(20)によって規定される更新式を解くことにより、パラメータを更新する。
(配置探索装置100が仮想マシンの配置を制御する具体的な流れ)
ここでは、下記(D−1)〜(D−3)のデータセンタ210の状況に対応する混合整数計画問題としての定式化について説明する。混合整数計画問題は、具体的には、配置する仮想マシンの種類や数が変化しても、混合整数計画問題に用いられる変数やパラメータの個数が変化しないように規定される。
(D−1)図4のデータセンタ構造情報400が示すように、データセンタ210に設置されたラック220の数がN個であり、1ラック220あたりのサーバ111の数がS個であり、データセンタ210に設置された空調設備112の数がC個であるとする。
(D−2)図5の最大サイズ定義情報500が示すように、i番目のラック220のj番目のサーバ111に配置可能な仮想マシンの最大サイズがLijであるとする。また、図6の配置済みサイズ情報600が示すように、i番目のラック220のj番目のサーバ111に配置済みの仮想マシンの合計サイズがw0 ijであるとする。
(D−3)図7の追加配置数情報700が示すように、追加で配置すべき仮想マシンの数がM個であるとする。また、図8の仮想マシンサイズ情報800が示すように、追加で配置すべきM個の仮想マシンに1〜Mの番号を付したときのn番目の仮想マシンのサイズがτnであるとする。
上記(D−1)〜(D−3)の状況において、混合整数計画問題は、具体的には、下記式(1)の目的関数となる最小化関数と、下記式(5)〜式(10)の制約条件によって規定される。下記式(1)は、行ベクトルと列ベクトルとの内積である。下記式(1)は、データセンタ210全体での消費電力をあらわすように規定され、制約条件の元で最小化される対象である。
Figure 2017168664
上記式(1)のうち、wは、下記式(2)によって規定される。wは、具体的には、i番目のラック220のj番目のサーバ111が実行する仮想マシンの合計サイズwijを要素として並べたベクトルである。wの要素の数は、配置する仮想マシンの種類や数ではなく、サーバ111の数に対応し、N×Sである。このため、wの要素の数は、配置する仮想マシンの種類や数が変化しても、変化しない。
Figure 2017168664
上記式(1)のうち、vは、下記式(3)によって規定される。vは、具体的には、i番目のラック220のj番目のサーバ111の電源がオンであるかオフであるかを示す、vijを要素として並べたベクトルである。vijの値が0であればサーバ111への電源投入がなくサーバ111の電源がオフであり、vijの値が1であればサーバ111への電源投入がありサーバ111の電源がオンであることを示す。vの要素の数は、配置する仮想マシンの種類や数ではなく、サーバ111の数に対応し、N×Sである。このため、vの要素の数は、配置する仮想マシンの種類や数が変化しても、変化しない。
Figure 2017168664
上記式(1)のうち、θTは、下記式(4)によって規定される。θTは、具体的には、wの各要素についての係数となるパラメータθw 1,1〜θw N,Sを要素とし、vの各要素についての係数となるパラメータθv 1,1〜θv N,Sを要素とし、定数1についての係数となるθbを要素として並べたベクトルである。
Figure 2017168664
ここで、上記式(1)のwと上記式(4)のθw 1,1〜θw N,Sとによって、サーバ111が実行する仮想マシンの合計サイズに対するデータセンタ210全体での消費電力があらわされるようにする。このため、θw 1,1〜θw N,Sには、サーバ111が実行する仮想マシンの単位サイズあたりのデータセンタ210全体での消費電力への影響量をより精度よくあらわす値が設定されることが好ましい。
また、上記式(1)のvと上記式(4)のθv 1,1〜θv N,Sとによって、サーバ111への電源投入の有無に対するデータセンタ210全体の消費電力があらわされるようにする。このため、θv 1,1〜θv N,Sには、サーバ111への電源投入の有無によるデータセンタ210全体での消費電力への影響量をより精度よくあらわす値が設定されることが好ましい。
また、上記式(1)の定数1と上記式(4)のθbによって、wやvに関わらない定数であって、データセンタ210全体の消費電力のうち常時消費される消費電力があらわされるようにする。このため、θbには、データセンタ210全体での常時消費される消費電力をより精度よくあらわす値が設定されることが好ましい。
これによれば、配置される仮想マシンの種類や数に関わらずパラメータの個数が変化せず、かつ、パラメータに好ましい値が設定されればデータセンタ210全体での消費電力を精度よくあらわすことができる目的関数が規定される。さらに、上記目的関数に対して、制約条件が下記式(5)〜式(10)によって規定される。
下記式(5)は、xn,i,jが、「0」か「1」かのいずれかの値をとる離散変数であることを示す制約条件である。xn,i,jは、n番目の仮想マシンが、i番目のラック220のj番目のサーバ111に割り当てられているか否かを示す。xn,i,jは、i番目のラック220のj番目のサーバ111でn番目の仮想マシンが実行されるときに1であり、n番目の仮想マシンが実行されないときに0である。換言すれば、下記式(5)は、仮想マシンの配置をあらわすことができる。下記式(5)により、xn,i,jが「0,1」以外の値をとらないようにする。
Figure 2017168664
下記式(6)は、上述したvi,jが、「0」か「1」かのいずれかの値をとる離散変数であることを示す制約条件である。vi,jは、i番目のラック220のj番目のサーバ111への電源投入があり電源がオンであるときに1であり、電源投入がなく電源がオフであるときに0である。換言すれば、下記式(6)は、サーバ111の電源がオンであるかオフであるかをあらわすことができる。下記式(6)により、変数vijが、「0,1」以外の値をとらないようにする。
Figure 2017168664
下記式(7)は、各々のサーバ111に関するxn,i,jの総和が「1」になることを示す制約条件である。このため、上記式(5)を考慮すれば、各々のサーバ111のうち、いずれか1つのサーバ111に関する変数xn,i,jが「1」になり、残余のサーバ111に関する変数xn,i,jが「0」になる。換言すれば、下記式(7)は、n番目の仮想マシンはいずれか1つのサーバ111に割り当てられることを示し、2つ以上のサーバ111に割り当てられる場合やサーバ111に割り当てられない場合がないことをあらわすことができる。
Figure 2017168664
下記式(8)は、i番目のラック220のj番目のサーバ111が実行する仮想マシンの合計サイズwijが、配置済みの仮想マシンの合計サイズw0 ijと、追加で配置される仮想マシンのサイズτnとの和であることを示す制約条件である。換言すれば、下記式(8)は、追加で仮想マシンを配置した後に、i番目のラック220のj番目のサーバ111が実行することになる仮想マシンの合計サイズwijをあらわすことができる。
Figure 2017168664
下記式(9)は、i番目のラック220のj番目のサーバ111が実行する仮想マシンの合計サイズwijが、i番目のラック220のj番目のサーバ111に配置可能な仮想マシンの最大サイズLij以下であることを示す制約条件である。換言すれば、下記式(9)は、仮想マシンを追加しても実行することができないサーバ111に仮想マシンを追加しないことをあらわすことができる。
Figure 2017168664
下記式(10)は、i番目のラック220のj番目のサーバ111の電源がオンである場合にはi番目のラック220のj番目のサーバ111に1個以上の仮想マシンが配置されることを示す制約条件である。また、下記式(10)は、i番目のラック220のj番目のサーバ111に仮想マシンが配置されない場合にはi番目のラック220のj番目のサーバ111の電源をオフにすることを示す制約条件でもある。
Figure 2017168664
ここで、上述したように、混合整数計画問題の目的関数に用いられるパラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbには、データセンタ210全体での消費電力の低減化を図る観点から好ましい値が設定されることが望まれる。このため、逐次的なパラメータ推定方法を用いて、混合整数計画問題を解く都度、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbを好ましい値に近づくように更新する。このとき、逐次的なパラメータ推定方法には、下記(M−1)および(M−2)のような性質がある。
(M−1)パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値が、データセンタ210全体での消費電力の低減化を図る観点から好ましい値に比較的近い場合がある。この場合では、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbが、データセンタ210全体での消費電力の低減化を図る観点から好ましい値に近づくまでにかかる時間または処理量が低減化される傾向がある。
(M−2)パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値が、データセンタ210全体での消費電力の低減化を図る観点から好ましい値から比較的遠い場合がある。この場合では、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbが、データセンタ210全体での消費電力の低減化を図る観点から好ましい値に近づくまでにかかる時間または処理量が増大化しやすい傾向がある。結果としてこの場合では、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbが、データセンタ210全体での消費電力の低減化を図る観点から好ましい値に近づくまでの間、データセンタ210全体での消費電力を低減化することが難しくなる。
このため、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値についても、データセンタ210全体での消費電力の低減化を図る観点から好ましい値に比較的近い値を用いることが好ましい。そこで、データセンタ210全体での消費電力について説明し、データセンタ210全体での消費電力を低減する観点から好ましい値に比較的近くなる、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値について説明する。
ここで、データセンタ210全体での消費電力について説明するために、データセンタ210に設置されたサーバ111、空調設備112となる空調室内機231および空調室外機232、電源設備113が有する消費電力に関する性質について説明する。例えば、サーバ111は、消費電力に関して下記(S−1)〜(S−3)のような性質を有する。
(S−1)サーバ111において仮想マシンが1個でも実行されるときにはサーバ111の電源がオンになり、サーバ111において仮想マシンが実行されないときにはサーバ111の電源がオフになる。
(S−2)サーバ111の電源がオンになるとサーバ111において一定の電力が消費される。
(S−3)サーバ111において実行される仮想マシンの合計サイズが増えると負荷が高くなり、実行される仮想マシンの合計サイズに応じて消費電力が増える。
また、例えば、電源設備113は、消費電力に関して下記(U−1)および(U−2)のような性質を有する。
(U−1)ラック220内のサーバ111の動作状態に関わらず、ラック220内の電源設備113において常に一定の電力が消費される。
(U−2)ラック220内のサーバ111の合計消費電力が増えると、ラック220内のサーバ111の合計消費電力に応じてラック220内の電源設備113の消費電力が増える。
また、例えば、空調室内機231は、消費電力に関して下記(C−1)および(C−2)のような性質を有する。
(C−1)空調室内機231において常に一定の電力が消費される。
(C−2)k番目の空調室内機231に流入する熱流量が増えると、k番目の空調室内機231の消費電力が増える。
また、例えば、空調室外機232は、消費電力に関して下記(C−3)および(C−4)のような性質を有する。
(C−3)k番目の空調室外機232に流入する熱流量は、k番目の空調室内機231から排出される熱流量に等しい。
(C−4)k番目の空調室外機232から排出される熱流量が増えると、k番目の空調室外機232の消費電力が増える。
以上、データセンタ210に設置されたサーバ111、空調設備112となる空調室内機231および空調室外機232、電源設備113が、上述したような消費電力に関する性質を有する。このため、データセンタ210全体での消費電力は、下記式(11)によって規定されることになる。
Figure 2017168664
上記式(11)は、データセンタ210に設置されたサーバ111、空調室内機231および空調室外機232、電源設備113が有する性質に基づき、図11〜図17の各種情報が示す定数を用いて、データセンタ210全体での消費電力を示した数式である。ここでは、図11〜図17の各種情報が示す定数の説明については、図11〜図17と重複するため、省略する。さらに、データセンタ210における熱結合は、下記(Q−1)〜(Q−3)の性質を有する。
(Q−1)各空調室内機231から排出される熱流量は、各空調室内機231に流入する熱流量に、当該空調室内機231で発生した熱流量(すなわち、消費電力)を足したものである。ここで、(Q−1)の性質は、例えば、下記式(12)によって規定される。
Figure 2017168664
(Q−2)各空調室内機231に流入する熱流量は、各ラック220から排出される熱流量である。(Q−2)の性質は、例えば、下記式(13)によって規定される。
Figure 2017168664
(Q−3)各ラック220から排出される熱流量は、各ラック220に流入する熱流量に、当該ラック220で発生した熱流量(すなわち、消費電力)を足したものである。(Q−3)の性質は、例えば、下記式(14)によって規定される。
Figure 2017168664
ここで、以上説明した、上記式(11)によって規定されたデータセンタ210全体での消費電力を、上記式(12)〜式(14)を参照して、上記式(1)によって規定されたデータセンタ210全体での消費電力と比較する。これにより、上記式(1)のパラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値は、下記式(15)〜式(17)によって規定される。
Figure 2017168664
Figure 2017168664
Figure 2017168664
これにより、混合整数計画問題に用いられるパラメータを、比較的好ましい初期値から始めることができる。これにより、配置探索装置100は、混合整数計画問題に用いられるパラメータを好ましい値に近づける間も、混合整数計画問題に用いられるパラメータとして比較的好ましい値を用いて、データセンタ210全体での消費電力を低減化することができる。
その後、配置探索装置100は、上記式(5)〜式(10)の制約条件を満たすように、上記式(15)〜式(17)のパラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値を用いて、上記式(1)の目的関数を最小化する解を求める。上記式(1)の目的関数を最小化する解は、例えば、下記式(18)によって規定される。
Figure 2017168664
そして、配置探索装置100は、求めた解に基づいて、複数のサーバ111に複数の仮想マシンを配置する。一方で、電力計240は、混合整数計画問題の解に基づき複数のサーバ111に複数の仮想マシンが配置された状態におけるデータセンタ210全体での消費電力を計測し、計測したデータセンタ210全体での消費電力を配置探索装置100に送信する。以下の説明では、計測したデータセンタ210全体での消費電力を「実消費電力」と表記する場合がある。
(配置探索装置100が混合整数計画問題のパラメータを更新する具体的な流れ)
上述したように、混合整数計画問題の目的関数に用いられるパラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbには、データセンタ210全体での消費電力の低減化を図る観点から好ましい値が設定されることが望まれる。このため、配置探索装置100は、逐次的なパラメータ推定方法を用いて、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbを更新する。
例えば、逐次最小二乗法は、下記式(19)および式(20)によって規定される。pは、データセンタ210全体での実消費電力を示す。θTξ*は、データセンタ210全体での計算上の消費電力を示す。このため、下記式(19)および式(20)によって、データセンタ210全体での計算上の消費電力が、データセンタ210全体での実消費電力に近づくように、パラメータが更新されることになる。
Figure 2017168664
Figure 2017168664
パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbを最初に更新する際には、上記式(20)のPの初期値は、例えば、下記式(21)によって規定される。I2NS+1は、サイズが2NS+1の単位行列である。γは、比較的大きな正の値である。パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbを2回目以降に更新する際には、Pについても更新された値を用いる。
Figure 2017168664
これにより、配置探索装置100は、逐次的なパラメータ推定方法により、混合整数計画問題に用いられるパラメータを、より好ましい値へと更新することができる。結果として、配置探索装置100は、より好ましい値に更新されたパラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbを用いて、上記式(1)の目的関数を最小化する解を求めることができる。そして、配置探索装置100は、データセンタ210全体での消費電力を効果的に低減することができる。
具体的には、配置探索装置100は、データセンタ全体での消費電力を目的関数とする混合整数計画問題として、上記式(1)の目的関数および上記式(5)〜式(10)の制約条件を規定している。そして、配置探索装置100は、上記式(1)の目的関数に用いられるパラメータとして、逐次的に、より好ましい値を用いることができる。また、配置探索装置100は、上記式(5)〜式(10)の制約条件に用いられる係数として、予め正確な値が判明している係数を用いることができる。
これらのことから、配置探索装置100は、より好ましいパラメータや正確な係数を用いた混合整数計画問題を規定することができ、混合整数計画問題の目的関数がより正確にデータセンタ210全体での消費電力をあらわすようにすることができる。結果として、配置探索装置100は、混合整数計画問題を解くことにより、データセンタ210全体での消費電力を効果的に低減することができる。
ところで、例えば、αij、βij、λk、μk、κk、ηi、εi、ψki、qsup,iなどをパラメータとして、データセンタ210全体での消費電力を目的関数とする混合整数計画問題を定式化し、消費電力の低減化を図る場合が考えられる。しかしながら、この場合では、αij、βij、λk、μk、κk、ηi、εi、ψki、qsup,iなどを精度よく求めることが難しいため、データセンタ210全体での消費電力を効果的に低減することが難しい傾向がある。
一方で、αij、βij、λk、μk、κk、ηi、εi、ψki、qsup,iは、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値を算出するために用いる場合には有効である傾向がある。そこで、配置探索装置100は、αij、βij、λk、μk、κk、ηi、εi、ψki、qsup,iを直接パラメータとして用いず、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値を求める際に用いるようにしている。これにより、配置探索装置100は、αij、βij、λk、μk、κk、ηi、εi、ψki、qsup,iを直接パラメータとして用いる場合に比べて、データセンタ210全体での消費電力を効果的に低減しやすくすることができる。
(配置探索装置100が混合整数計画問題のパラメータを更新した結果の一例)
次に、図19を用いて、配置探索装置100が混合整数計画問題のパラメータを更新した結果の一例について説明する。
図19は、配置探索装置100が混合整数計画問題のパラメータを更新した結果の一例を示す説明図である。以上に示したように、配置探索装置100は、上述した混合整数計画問題の解を求める都度、上述した逐次的最小二乗法によって上述した混合整数計画問題の目的関数に用いられるパラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbを更新していく。
図19の例では、パラメータθbについて説明するが、他のパラメータについても同様である。以下の説明では、パラメータθbの値であって、データセンタ210全体での消費電力への影響を精度よくあらわし、データセンタ210全体での消費電力の低減化を図る観点から好ましい値を「パラメータθbの真値」と表記する場合がある。
図19に示すように、逐次最小二乗法によって更新されるにつれて、パラメータθbの値は、パラメータθbの真値に近づいていく。これにより、配置探索装置100は、逐次的なパラメータ推定方法により、混合整数計画問題に用いられるパラメータを、より好ましい値へと更新していくことができる。
また、パラメータθbの初期値を上記式(14)によって規定した場合、パラメータθbの初期値を0にした場合に比べて、パラメータθbの真値に近づくまでにかかる時間や処理量が低減化される。これにより、配置探索装置100は、混合整数計画問題に用いられるパラメータとして比較的好ましくない値を用いてしまう回数を低減化することができ、データセンタ210全体での消費電力を低減化することができる。
(仮想マシンの配置処理手順)
次に、図20を用いて、仮想マシンの配置処理手順について説明する。
図20は、仮想マシンの配置処理手順の一例を示すフローチャートである。図20において、まず、配置探索装置100は、仮想マシンの配置が開始されると、仮想マシンの配置の種類が、追加配置、初期配置、および再配置のいずれであるかを判定する(ステップS2001)。
次に、配置探索装置100は、判定結果に基づいて、記憶部1801に記憶された定数および変数の値を読み出し、目的関数および制約条件を設定する(ステップS2002)。そして、配置探索装置100は、読み出した定数および変数、設定した目的関数および制約条件に基づいて、ソルバーによって混合整数計画問題を解き、解を求める(ステップS2003)。
次に、配置探索装置100は、求めた解に基づいて、仮想マシンを配置する(ステップS2004)。そして、配置探索装置100は、仮想マシンを配置した状態におけるデータセンタ210全体での実消費電力を取得する(ステップS2005)。
次に、配置探索装置100は、取得した実消費電力に基づいて、混合整数計画問題のパラメータを更新する(ステップS2006)。そして、配置探索装置100は、仮想マシンの配置処理を終了する。これにより、配置探索装置100は、データセンタ210全体での消費電力が低減化されるように仮想マシンを配置することができる。
以上説明したように、配置探索装置100によれば、パラメータの初期値に、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報のうち、少なくともいずれかに基づき設定された初期値を用いることができる。そして、配置探索装置100によれば、複数のサーバ111を有する施設110全体での消費電力を最適化するように、パラメータを用いて複数のサーバ111への複数の仮想マシンの配置を求めることができる。また、配置探索装置100によれば、逐次的なパラメータ推定方法によりパラメータを更新することができる。
これによれば、配置探索装置100は、逐次的なパラメータ推定方法により、混合整数計画問題に用いられるパラメータを、比較的好ましい初期値から始めて、より好ましい値へと更新していくことができる。これにより、配置探索装置100は、混合整数計画問題に用いられるパラメータが好ましい値に近づくまでにかかる時間の低減化を図ることができる。結果として、配置探索装置100は、混合整数計画問題に用いられるパラメータとして比較的好ましくない値を用いてしまう回数を低減化することができ、施設110全体での消費電力を低減化することができる。
また、配置探索装置100によれば、パラメータを用いてサーバ111が実行する仮想マシンの合計サイズの関数として記述された、施設110全体での消費電力を目的関数とする混合整数計画問題を用いることができる。そして、配置探索装置100によれば、混合整数計画問題を解き、混合整数計画問題の解に基づいて配置を求めることができる。これにより、配置探索装置100は、配置する仮想マシンの種類や数に関わらずパラメータの数が変化しない混合整数計画問題を用いることができ、最小二乗法によってパラメータを更新可能にすることができる。
また、配置探索装置100によれば、第1〜第3の性能情報、および、熱結合情報に基づき設定された、サーバ111が使用する演算リソースに対する施設110全体の消費電力に関する初期値を含むパラメータの初期値を用いることができる。これにより、配置探索装置100は、サーバ111が使用する演算リソースに対する施設110全体の消費電力に関するパラメータを、比較的好ましい値から始めることができる。そして、配置探索装置100は、サーバ111が実行する仮想マシンの合計サイズに対する施設110全体の消費電力に関するパラメータが、施設110全体での消費電力を低減化する観点から好ましい値に近づくまでにかかる時間を低減化することができる。
また、配置探索装置100によれば、第1〜第3の性能情報、および、熱結合情報に基づき設定された、サーバ111の電源投入の有無に対する施設110全体の消費電力に関する初期値を含むパラメータの初期値を用いることができる。これにより、配置探索装置100は、サーバ111の電源投入の有無に対する施設110全体の消費電力に関するパラメータを、比較的好ましい値から始めることができる。そして、配置探索装置100は、サーバ111の電源投入の有無に対する施設110全体の消費電力に関するパラメータが、施設110全体での消費電力を低減化する観点から好ましい値に近づくまでにかかる時間を低減化することができる。
また、配置探索装置100によれば、パラメータの初期値は、第2および第3の性能情報、および、熱結合情報に基づき設定された、施設110全体での常時消費される消費電力に関する初期値を含むパラメータの初期値を用いることができる。これにより、配置探索装置100は、施設110全体での常時消費される消費電力に関するパラメータを、比較的好ましい値から始めることができる。そして、配置探索装置100は、施設110全体での常時消費される消費電力に関するパラメータが、施設110全体での消費電力を低減化する観点から好ましい値に近づくまでにかかる時間を低減化することができる。
なお、本実施の形態で説明した配置探索方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本配置探索プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本配置探索プログラムは、インターネット等のネットワークを介して配布してもよい。
100 配置探索装置
110 施設
200 電子計算機システム
210 データセンタ
220 ラック
231 空調室内機
232 空調室外機
240 電力計
300 バス
301 CPU
302 メモリ
303 I/F
304 ディスクドライブ
305 ディスク
400 データセンタ構造情報
500 最大サイズ定義情報
600 配置済みサイズ情報
700 追加配置数情報
800 仮想マシンサイズ情報
900 パラメータ情報
1000 定数情報
1100 動作消費電力情報
1200 ベース消費電力情報
1300 室内機情報
1400 室外機情報
1500 電源設備情報
1600 熱流量関係情報
1700 供給熱流量情報
1801 記憶部
1802 管理部
1803 判定部
1804 求解部
1805 配置部
1806 推定部
本発明は、配置探索プログラム、配置探索方法、および配置探索装置に関する。
従来、データセンタ内に設置された複数のサーバに複数の仮想マシン(VM:Virtual Machine)を割り当てる際、または、サーバ間で仮想マシンを移行する際などに、データセンタ全体での消費電力の最適化を図ることが望まれる。
先行技術としては、例えば、仮想マシンの配置の関数として記述された、サーバでの消費電力と電源設備での消費電力との合計消費電力を目的関数とする混合整数計画問題を解き、混合整数計画問題の解に基づいて各サーバに仮想マシンを配置するものがある。また、例えば、配置情報を用いて、装置群の消費電力と給電設備の給電損失と冷却設備の冷却電力を求め、消費電力、給電損失、および冷却電力の総和を低減するように装置群へ作業負荷を割り当てる技術がある。また、例えば、情報処理装置の装置関連消費電力式を元にした省電力性評価指標を用いて、計算機室全体の省電力化を実現するよう作業負荷の割当を決定する技術がある。また、例えば、運転される冷凍機それぞれの消費電力を上記複数の組み合わせについて求め、さらに、該求めた各消費電力の総和を演算し、該総和値が最小値となる組み合わせまたは他に比べて低い値となる組み合わせを選択して設定する技術がある。
国際公開第2013/042615号 特開2009−252056号公報 国際公開第2010/032501号 特開2006−20785号公報
しかしながら、上述した従来技術では、データセンタ全体での消費電力を低減化することが難しい場合がある。例えば、データセンタ全体での消費電力を目的関数とする混合整数計画問題に用いられるパラメータとして、どのような値を設定することが好ましいかが分からず、データセンタ全体での消費電力を最適化することが難しい。
1つの側面では、本発明は、施設全体での消費電力を最適化することができる配置探索プログラム、配置探索方法、および配置探索装置を提供することを目的とする。
本発明の一側面によれば、複数のサーバを有する施設における、前記複数のサーバへの複数の仮想マシンの配置を探索する際に、前記複数のサーバへの前記複数の仮想マシンの配置に関するパラメータの初期値を、前記複数のサーバの消費電力に関する第1の性能情報、前記施設に設置された空調設備の消費電力に関する第2の性能情報、前記施設に配置された電源設備の消費電力に関する第3の性能情報、および、前記複数のサーバ間および前記複数のサーバと前記空調設備との間の熱結合に関する熱結合情報のうち、少なくともいずれかに基づき設定し、逐次的なパラメータ推定方法により前記施設全体の消費電力を最適化するように、前記パラメータを更新する配置探索プログラム、配置探索方法、および配置探索装置が提案される。
本発明の一態様によれば、施設全体での消費電力を最適化することができるという効果を奏する。
図1は、実施の形態にかかる配置探索方法の一実施例を示す説明図である。 図2は、電子計算機システム200の一例を示す説明図である。 図3は、配置探索装置100のハードウェア構成例を示すブロック図である。 図4は、データセンタ構造情報400の記憶内容の一例を示す説明図である。 図5は、最大サイズ定義情報500の記憶内容の一例を示す説明図である。 図6は、配置済みサイズ情報600の記憶内容の一例を示す説明図である。 図7は、追加配置数情報700の記憶内容の一例を示す説明図である。 図8は、仮想マシンサイズ情報800の記憶内容の一例を示す説明図である。 図9は、パラメータ情報900の記憶内容の一例を示す説明図である。 図10は、定数情報1000の記憶内容の一例を示す説明図である。 図11は、動作消費電力情報1100の記憶内容の一例を示す説明図である。 図12は、ベース消費電力情報1200の記憶内容の一例を示す説明図である。 図13は、室内機情報1300の記憶内容の一例を示す説明図である。 図14は、室外機情報1400の記憶内容の一例を示す説明図である。 図15は、電源設備情報1500の記憶内容の一例を示す説明図である。 図16は、熱流量関係情報1600の記憶内容の一例を示す説明図である。 図17は、供給熱流量情報1700の記憶内容の一例を示す説明図である。 図18は、配置探索装置100の機能的構成例を示すブロック図である。 図19は、配置探索装置100が混合整数計画問題のパラメータを更新した結果の一例を示す説明図である。 図20は、仮想マシンの配置処理手順の一例を示すフローチャートである。
以下に、図面を参照して、本発明にかかる配置探索プログラム、配置探索方法、および配置探索装置の実施の形態を詳細に説明する。
(実施の形態にかかる配置探索方法の一実施例)
図1は、実施の形態にかかる配置探索方法の一実施例を示す説明図である。配置探索装置100は、施設110全体での消費電力を最適化するためのコンピュータである。施設110とは、例えば、データセンタである。
施設110は、複数のサーバ111を有する。施設110は、さらに、複数のサーバ111に電力を供給する電源設備113、および、複数のサーバ111を冷却する空調設備112などを有する。最適化とは、例えば、制約条件の中で、施設110全体での消費電力を最小化することである。
ここで、データセンタに設置された複数のサーバ111に複数の仮想マシンを割り当てる際には、データセンタ全体での消費電力が低減化されるように割り当てることが望まれる傾向がある。これに対し、下記(a)〜(c)が考えられるが、データセンタ全体での消費電力を低減化することが難しい場合がある。
(a)例えば、仮想マシンの配置の関数として記述された、サーバ111、空調設備112、電源設備113の合計消費電力を目的関数とする混合整数計画問題を解き、混合整数計画問題の解に基づいて複数のサーバ111に複数の仮想マシンを配置することが考えられる。
しかしながら、データセンタ全体での消費電力を目的関数とする混合整数計画問題に用いられるパラメータとして、どのような値を設定することが好ましいかが分からず、データセンタ全体での消費電力を低減化することが難しい場合がある。パラメータは、例えば、サーバ111、空調設備112、および、電源設備113の消費電力特性をあらわす係数、データセンタ内の熱移動特性をあらわす係数などである。
具体的には、データセンタ内の複数箇所に温度センサを設置したとしても、温度センサを設置した箇所の間でどのように熱が移動するかを精度よく解析することは難しいため、データセンタ内の熱移動特性を解析することは難しい。結果として、データセンタ内の熱移動特性をあらわす係数として、どのような値を設定することが好ましいかが分からず、データセンタ全体での消費電力を低減化することが難しい。
また、パラメータとして設定することが好ましい値は、時間経過によっても変化してしまう傾向がある。例えば、時間経過によって、データセンタが経年劣化し、または、データセンタ内のサーバ111、電源設備113、空調設備112の配置が変更されることにより、パラメータとして設定することが好ましい値は変化してしまう傾向がある。結果として、混合整数計画問題に用いられるパラメータとして好ましい値を設定したとしても、時間経過によって好ましくない値になってしまい、データセンタ全体での消費電力を低減化することが難しくなる場合がある。
(b)さらに、(a)に対し、逐次的なパラメータ推定方法を適用することにより、データセンタ全体での消費電力を目的関数とする混合整数計画問題を解く都度、混合整数計画問題に用いられるパラメータを更新して、好ましい値に近づけることが考えられる。逐次的なパラメータ推定方法は、例えば、逐次最小二乗法である。ここで、逐次的なパラメータ推定方法は、混合整数計画問題に用いられるパラメータの個数が変化しないまま、混合整数計画問題が繰り返し解かれる場合などに適用することができる。
しかしながら、混合整数計画問題の目的関数が仮想マシンの配置に対する陽関数として記述されるため、配置する仮想マシンの種類や数が変化してしまうと、混合整数計画問題に用いられる変数やパラメータの個数も変化してしまう傾向がある。結果として、逐次的なパラメータ推定方法を適用することができず、混合整数計画問題に用いられるパラメータを好ましい値に更新することができず、データセンタ全体での消費電力を低減化することが難しい場合がある。
(c)このため、仮想マシンの配置に対する陽関数ではなく、サーバ111が実行する仮想マシンの合計サイズおよびサーバ111の電源投入の有無の陽関数として記述された、サーバ111、空調設備112、電源設備113の合計消費電力を目的関数とする混合整数計画問題を用いることが考えられる。これによれば、配置する仮想マシンの種類や数が変化しても、混合整数計画問題に用いられる変数やパラメータの個数は変化しないようになる。
これに対し、逐次的なパラメータ推定方法を適用することにより、データセンタ全体での消費電力を目的関数とする混合整数計画問題を解く都度、混合整数計画問題に用いられるパラメータを更新して、好ましい値に近づけることが考えられる。
しかしながら、混合整数計画問題に用いられるパラメータの初期値として、どのような値を設定することが好ましいかが分からず、混合整数計画問題に用いられるパラメータが好ましい値に近づくまでにかかる時間の増大化を招いてしまう可能性がある。そして、混合整数計画問題に用いられるパラメータが好ましい値に近づくまでの間は、混合整数計画問題に用いられるパラメータとして好ましくない値が設定されてしまうため、データセンタ全体での消費電力を低減化することが難しい場合がある。
そこで、本実施の形態では、施設110全体での消費電力を目的関数とする混合整数計画問題を解く際に、混合整数計画問題に用いられるパラメータとして好ましい値が設定されやすくしつつ、施設110全体での消費電力を最適化する配置探索方法について説明する。
(1−1)配置探索装置100は、複数のサーバ111への複数の仮想マシンの配置に関するパラメータの初期値に、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報のうち、少なくともいずれかに基づき設定された初期値を用いる。
第1の性能情報とは、複数のサーバ111の消費電力に関する性能情報である。第1の性能情報は、例えば、サーバ111が実行する仮想マシンの単位サイズに対する消費電力を規定した情報、および、サーバ111で常時消費される消費電力を規定した情報などである。第1の性能情報は、具体的には、図11に後述する動作消費電力情報1100、および、図12に後述するベース消費電力情報1200などである。
第2の性能情報とは、施設110に設置された空調設備112の消費電力に関する性能情報である。第2の性能情報は、例えば、空調室内機に流入する熱流量に対する空調室内機で消費される消費電力を規定した情報、および、空調室内機で常時消費される消費電力を規定した情報などである。また、第2の性能情報は、例えば、空調室外機に流入する熱流量に対する空調室外機で消費される消費電力を規定した情報などである。第2の性能情報は、具体的には、図13に後述する室内機情報1300、および、図14に後述する室外機情報1400などである。
第3の性能情報とは、施設110に配置された電源設備113の消費電力に関する性能情報である。第3の性能情報は、例えば、サーバ111の消費電力に対する電源設備113で消費される消費電力を規定した情報、および、電源設備113で常時消費される消費電力を規定した情報などである。第3の性能情報は、具体的には、図15に後述する電源設備情報1500などである。
熱結合情報とは、複数のサーバ111間および複数のサーバ111と空調設備112との間の熱結合に関する情報である。熱結合情報は、例えば、サーバ111と空調設備112との間の熱流量関係を規定する情報、および、サーバ111と空調設備112との供給熱流量を規定する情報などである。熱結合情報は、具体的には、図16に後述する熱流量関係情報1600、および、図17に後述する供給熱流量情報1700などである。
パラメータの初期値は、例えば、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報に基づき設定された、サーバ111が実行する仮想マシンの合計サイズに対する施設110全体の消費電力に関する初期値を含む。サーバ111が実行する仮想マシンの合計サイズに対する施設110全体の消費電力に関する初期値は、例えば、後述する式(15)によって規定される。
パラメータの初期値は、例えば、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報に基づき設定された、サーバ111への電源投入の有無に対する施設110全体の消費電力に関する初期値を含む。サーバ111への電源投入の有無に対する施設110全体の消費電力に関する初期値は、例えば、後述する式(16)によって規定される。
パラメータの初期値は、例えば、第2の性能情報、第3の性能情報、および、熱結合情報に基づき設定された、施設110全体での常時消費される消費電力に関する初期値を含む。施設110全体での常時消費される消費電力に関する初期値は、例えば、後述する式(17)によって規定される。
(1−2)配置探索装置100は、施設110全体での消費電力を最適化するように、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを用いて、複数のサーバ111への複数の仮想マシンの配置を求める。配置探索装置100は、求めた仮想マシンの配置に従って、複数のサーバ111への複数の仮想マシンの配置を制御する。
配置探索装置100は、例えば、サーバ111での消費電力と空調設備112での消費電力と電源設備113での消費電力との合計消費電力を目的関数とする混合整数計画問題を解き、混合整数計画問題の解に基づいて配置を求める。合計消費電力を目的関数とする混合整数計画問題は、例えば、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを用いて、サーバ111が実行する仮想マシンの合計サイズおよびサーバ111の電源投入の有無の関数として記述される。合計消費電力を目的関数とする混合整数計画問題は、具体的には、後述する式(1)、式(5)〜式(10)によって規定される。
(1−3)配置探索装置100は、逐次的なパラメータ推定方法により、施設110全体での消費電力を最適化するように、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを更新する。逐次的なパラメータ推定方法は、例えば、逐次最小二乗法、忘却要素を用いた逐次最小二乗法、矩形窓を用いた逐次最小二乗法、カルマンフィルタなどである。
配置探索装置100は、例えば、複数のサーバ111への複数の仮想マシンの配置が行われた後のデータセンタ全体での消費電力の計測値を、電力計(不図示)などから取得する。配置探索装置100は、逐次的なパラメータ推定方法により、目的関数によって求められたデータセンタ全体での消費電力の計算値と、消費電力との計測値とを用いて、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを更新する。配置探索装置100は、具体的には、後述する式(19)、式(20)により、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを更新する。
これによれば、配置探索装置100は、逐次的なパラメータ推定方法により、混合整数計画問題に用いられるパラメータを、比較的好ましい初期値から始めて、より好ましい値へと更新していくことができる。これにより、配置探索装置100は、混合整数計画問題に用いられるパラメータが好ましい値に近づくまでにかかる時間の低減化を図ることができる。
結果として、配置探索装置100は、混合整数計画問題に用いられるパラメータとして比較的好ましくない値を用いてしまう回数を低減化することができ、データセンタ全体での消費電力を効果的に低減することができる。また、配置探索装置100は、混合整数計画問題に用いられるパラメータを好ましい値に近づける間も、混合整数計画問題に用いられるパラメータとして比較的好ましい値を用いることができ、データセンタ全体での消費電力を効果的に低減することができる。
また、配置探索装置100は、パラメータとして設定することが好ましい値が時間経過によって変化しても、混合整数計画問題に用いられるパラメータを好ましい値に近づけていくことができる。このため、配置探索装置100は、混合整数計画問題に用いられるパラメータとして好ましい値を用いて、データセンタ全体での消費電力を効果的に低減することができる。また、配置探索装置100は、パラメータを設定するために、データセンタ内の複数の箇所に温度センサを設けたりしなくてもよいため、データセンタの保守管理にかかるコストの増大化を抑制することができる。
(電子計算機システム200の一例)
次に、図2を用いて、図1に示した配置探索装置100を適用した、電子計算機システム200の一例について説明する。
図2は、電子計算機システム200の一例を示す説明図である。電子計算機システム200は、例えば、データセンタ210によって実現される。図2の電子計算機システム200において、データセンタ210には、N個のラック220、C台の空調設備112、配置探索装置100、および、電力計240が設置されている。各ラック220と配置探索装置100とは、例えばLAN(Local Area Network)ケーブルなどの通信ケーブルや、無線通信などによって、相互に接続されていてもよい。
各ラック220には、S台のサーバ111と、電源設備113となる無停電電源装置(UPS:Uninterruptible Power Supply)とが収容されている。各サーバ111には、仮想マシンが配置される。以下の説明では、各電源設備113は、サーバ111に電力を供給する。各電源設備113は、例えば、ラック220ごとに、同じラック220に収容されている複数のサーバ111に電力を供給する。
各空調設備112には、空調室内機231(CRAC Unit:Computer Room Air Conditioning Unit)や空調室外機232(Chiller Plant)が含まれる。空調室内機231は、ラック220内のサーバ111を冷却する。空調室外機232は、空調室内機231と同数存在し、排気を行う。
電力計240は、データセンタ210全体での消費電力を計測し、配置探索装置100に送信する。配置探索装置100は、データセンタ210全体での消費電力を最適化するように、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを用いて、複数のサーバ111への複数の仮想マシンの配置を求める。また、配置探索装置100は、逐次的なパラメータ推定方法を用いて、電力計240から受信したデータセンタ210全体での消費電力に基づき、複数のサーバ111への複数の仮想マシンの配置に関するパラメータを更新する。
(配置探索装置100のハードウェア構成例)
次に、図3を用いて、配置探索装置100のハードウェア構成例について説明する。
図3は、配置探索装置100のハードウェア構成例を示すブロック図である。図3において、配置探索装置100は、CPU(Central Processing Unit)301と、メモリ302と、I/F(Interface)303と、ディスクドライブ304と、ディスク305と、を有する。また、各構成部は、バス300によってそれぞれ接続される。
ここで、CPU301は、配置探索装置100の全体の制御を司る。CPU301は、実施の形態にかかる配置探索プログラムを実行することにより、混合整数計画問題の求解および仮想マシンの配置を行う。また、CPU301は、配置探索プログラムを実行することにより、混合整数計画問題に用いられるパラメータの更新を行う。
メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。各種プログラムは、例えば、実施の形態にかかる配置探索プログラムを含む。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
I/F303は、通信回線を通じてネットワーク310に接続され、ネットワーク310を介して、データセンタ210のラック220などに接続される。そして、I/F303は、ネットワーク310と内部のインターフェースを司り、ラック220内のサーバ111などの他のコンピュータからのデータの入出力を制御する。I/F303には、例えば、モデムやLANアダプタなどを採用することができる。
ディスクドライブ304は、CPU301の制御に従ってディスク305に対するデータのリード/ライトを制御する。ディスクドライブ304は、例えば、磁気ディスクドライブである。ディスク305は、ディスクドライブ304の制御で書き込まれたデータを記憶する不揮発メモリである。ディスク305は、例えば、磁気ディスク、光ディスクなどである。
配置探索装置100は、上述した構成部のほか、例えば、SSD(Solid State Drive)、半導体メモリ、キーボード、マウス、ディスプレイなどを有することにしてもよい。また、配置探索装置100は、ディスクドライブ304およびディスク305の代わりに、SSDおよび半導体メモリなどを有していてもよい。
(サーバ111のハードウェア構成例)
また、サーバ111のハードウェア構成例は、図3に示した配置探索装置100のハードウェア構成例と同様であるため、説明を省略する。
(配置探索装置100が記憶する各種情報の一例)
次に、配置探索装置100が記憶する各種情報の一例について説明する。配置探索装置100は、図4〜図17に後述するような、混合整数計画問題の求解、混合整数計画問題のパラメータに対する初期値の設定、混合整数計画問題のパラメータに対する逐次的なパラメータ推定方法による更新などの際に用いられる各種情報を記憶する。図4〜図17に後述する各種情報は、例えば、配置探索装置100のメモリ302によって記憶される。
(データセンタ構造情報400の記憶内容)
まず、図4を用いて、データセンタ構造情報400の記憶内容の一例について説明する。
図4は、データセンタ構造情報400の記憶内容の一例を示す説明図である。図4に示すように、データセンタ構造情報400は、データセンタ210のラック220の数とサーバ111の数と空調設備112の数とを示す情報である。図4の例では、データセンタ210に設置されたラック220の数は、N個である。Nは、正の整数である。1ラック220あたりのサーバ111の数は、S個である。Sは、正の整数である。データセンタ210に設置された空調設備112の数は、C個である。Cは、正の整数である。データセンタ構造情報400は、例えば、混合整数計画問題の求解の際に用いられる。
(最大サイズ定義情報500の記憶内容)
次に、図5を用いて、最大サイズ定義情報500の記憶内容の一例について説明する。
図5は、最大サイズ定義情報500の記憶内容の一例を示す説明図である。図5に示すように、最大サイズ定義情報500は、i番目のラック220のj番目のサーバ111に配置可能な仮想マシンの最大サイズを示す情報である。iは1〜Nの整数である。jは1〜Sの整数である。図5の例では、i番目のラック220のj番目のサーバ111に配置可能な仮想マシンの最大サイズは、Lijである。Lijは、例えば、コア数やスレッド数である。最大サイズ定義情報500は、例えば、混合整数計画問題の求解の際に用いられる。
(配置済みサイズ情報600の記憶内容)
次に、図6を用いて、配置済みサイズ情報600の記憶内容の一例について説明する。
図6は、配置済みサイズ情報600の記憶内容の一例を示す説明図である。図6に示すように、配置済みサイズ情報600は、i番目のラック220のj番目のサーバ111に配置済みの仮想マシンの合計サイズを示す情報である。図6の例では、i番目のラック220のj番目のサーバ111に配置済みの仮想マシンの合計サイズは、w0 ijである。w0 ijは、0以上Lij以下の整数である。配置済みサイズ情報600は、例えば、混合整数計画問題の求解の際に用いられる。また、配置済みサイズ情報600は、例えば、サーバに仮想マシンを追加配置する都度、更新される。
(追加配置数情報700の記憶内容)
次に、図7を用いて、追加配置数情報700の記憶内容の一例について説明する。
図7は、追加配置数情報700の記憶内容の一例を示す説明図である。図7に示すように、追加配置数情報700は、追加で配置すべき仮想マシンの数を規定する情報である。図7の例では、追加で配置すべき仮想マシンの数は、M個である。Mは正の整数である。追加配置数情報700は、例えば、混合整数計画問題の求解の際に用いられる。
(仮想マシンサイズ情報800の記憶内容)
次に、図8を用いて、仮想マシンサイズ情報800の記憶内容の一例について説明する。
図8は、仮想マシンサイズ情報800の記憶内容の一例を示す説明図である。図8に示すように、仮想マシンサイズ情報800は、追加で配置すべき仮想マシンのサイズを規定する情報である。図8の例では、追加で配置すべきM個の仮想マシンに1〜Mの番号を付したときのn番目の仮想マシンのサイズは、τnである。nは1〜Mの整数である。仮想マシンサイズ情報800は、例えば、混合整数計画問題の求解の際に用いられる。
(パラメータ情報900の記憶内容)
次に、図9を用いて、パラメータ情報900の記憶内容の一例について説明する。
図9は、パラメータ情報900の記憶内容の一例を示す説明図である。図9に示すように、パラメータ情報900は、データセンタ210全体での消費電力を目的関数とする混合整数計画問題に用いられる、2NS+1個のパラメータを規定する情報である。図9の例では、データセンタ210全体での消費電力を目的関数とする混合整数計画問題に用いられるパラメータは、θw 1,1〜θw N,Sである。また、データセンタ210全体での消費電力を目的関数とする混合整数計画問題に用いられるパラメータは、θv 1,1〜θv N,Sである。データセンタ210全体での消費電力を目的関数とする混合整数計画問題に用いられるパラメータは、θbである。パラメータ情報900は、例えば、混合整数計画問題の求解の際に用いられる。また、パラメータ情報900は、例えば、逐次的なパラメータ推定方法による更新の際に用いられ、逐次的なパラメータ推定方法によって更新される。
(定数情報1000の記憶内容)
次に、図10を用いて、定数情報1000の記憶内容の一例について説明する。
図10は、定数情報1000の記憶内容の一例を示す説明図である。図10に示すように、定数情報1000は、逐次的なパラメータ推定方法に用いられる定数を規定する情報である。図10の例では、逐次的なパラメータ推定方法に用いられる定数は、P1,1〜P2NS+1,2NS+1である。定数情報1000は、例えば、逐次的なパラメータ推定方法による更新の際に用いられ、逐次的なパラメータ推定方法によって更新される。
(動作消費電力情報1100の記憶内容)
次に、図11を用いて、動作消費電力情報1100の記憶内容の一例について説明する。
図11は、動作消費電力情報1100の記憶内容の一例を示す説明図である。図11に示すように、動作消費電力情報1100は、サーバ111が実行する仮想マシンの単位サイズに対する消費電力を規定する情報である。図11の例では、i番目のラック220のj番目のサーバ111で実行する仮想マシンの単位サイズあたりに消費される電力はαijワットである。αijは正の実数である。動作消費電力情報1100は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(ベース消費電力情報1200の記憶内容)
次に、図12を用いて、ベース消費電力情報1200の記憶内容の一例について説明する。
図12は、ベース消費電力情報1200の記憶内容の一例を示す説明図である。図12に示すように、ベース消費電力情報1200は、電子計算機システム200におけるベース消費電力を規定する情報である。図12の例では、i番目のラック220のj番目のサーバ111の電源がオンになることで消費される電力はβijワットである。βijは正の実数である。ベース消費電力情報1200は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(室内機情報1300の記憶内容)
次に、図13を用いて、室内機情報1300の記憶内容の一例について説明する。
図13は、室内機情報1300の記憶内容の一例を示す説明図である。図13に示すように、室内機情報1300は、空調室内機231のベース消費電力および比例係数を規定する情報である。図13の例では、k番目の空調室内機231で常に消費されるベース消費電力は、λkワットである。kは1〜Cの整数である。λkは正の実数である。また、k番目の空調室内機231に流入する熱流量に対して、流入する熱流量の何倍の電力が空調室内機231で消費されるかということをあらわす比例係数は、μkである。μkは正の実数である。室内機情報1300は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(室外機情報1400の記憶内容)
次に、図14を用いて、室外機情報1400の記憶内容の一例について説明する。
図14は、室外機情報1400の記憶内容の一例を示す説明図である。図14に示すように、室外機情報1400は、空調室外機232の比例係数を規定する情報である。図14の例では、k番目の空調室外機232に流入する熱流量に対して、流入する熱流量の何倍の電力が空調室外機232で消費されるかということをあらわす比例係数は、κkである。κkは正の実数である。なお、空調室外機232が常に電力を消費する場合には、空調室内機231と同様に、空調室外機232情報にも、空調室外機232のベース消費電力が含まれてもよい。室外機情報1400は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(電源設備情報1500の記憶内容)
次に、図15を用いて、電源設備情報1500の記憶内容の一例について説明する。
図15は、電源設備情報1500の記憶内容の一例を示す説明図である。図15に示すように、電源設備情報1500は、電源設備113のベース消費電力および比例係数を規定する情報である。図15の例では、i番目のラック220の電源設備113で常に消費されるベース消費電力はηiワットである。ηiは正の実数である。また、i番目のラック220内のサーバ111の合計消費電力に対して、合計消費電力の何倍の電力が電源設備113で消費されるかということをあらわす比例係数はεiである。εiは正の実数である。一例として、一般的な電源設備113のカタログによると、εiは0.01〜0.04程度である。電源設備情報1500は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(熱流量関係情報1600の記憶内容)
次に、図16を用いて、熱流量関係情報1600の記憶内容の一例について説明する。
図16は、熱流量関係情報1600の記憶内容の一例を示す説明図である。図16に示すように、熱流量関係情報1600は、ラック220と空調設備112との間の熱流量関係を規定する情報である。図16の例では、i番目のラック220から排出された熱流量の何倍がk番目の空調室内機231に流入するかということをあらわす比例係数は、ψkiである。ψkiは、0以上1以下の実数である。熱流量関係情報1600は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(供給熱流量情報1700の記憶内容)
次に、図17を用いて、供給熱流量情報1700の記憶内容の一例について説明する。
図17は、供給熱流量情報1700の記憶内容の一例を示す説明図である。図17に示すように、供給熱流量情報1700は、ラック220と空調設備112との供給熱流量を規定する情報である。図17の例では、i番目のラック220に対して空調室内機231から供給される熱流量は、qsup,iワットである。qsup,iは実数である。供給熱流量情報1700は、例えば、混合整数計画問題のパラメータに対する初期値の設定の際に用いられる。
(配置探索装置100の機能的構成例)
次に、図18を用いて、配置探索装置100の機能的構成例について説明する。
図18は、配置探索装置100の機能的構成例を示すブロック図である。配置探索装置100、記憶部1801と、管理部1802と、判定部1803と、求解部1804と、配置部1805と、推定部1806とを含む。
記憶部1801は、例えば、図3に示したメモリ302、ディスク305などの記憶領域によって実現される。管理部1802〜推定部1806は、制御部となる機能であり、例えば、図3に示したメモリ302、ディスク305などの記憶領域に記憶されたプログラムをCPU301に実行させることにより、または、I/F303により、その機能を実現する。各機能部の処理結果は、例えば、図3に示したメモリ302、ディスク305などの記憶領域に記憶される。
記憶部1801は、定数、変数、目的関数および制約条件を記憶している。記憶部1801は、定数、変数、目的関数および制約条件を求解部1804に入力する。記憶部1801は、例えば、メモリ302である。記憶部1801は、具体的には、図4〜図17の各種情報などを記憶する。動的に変化しない定数、変数、目的関数および制約条件は、実施の形態にかかる配置探索プログラムに記述されていてもよい。
管理部1802は、サーバ111に配置されている仮想マシンの情報に基づいて、図6の配置済みサイズ情報600を書き換える。配置済みサイズ情報600は、サーバ111ごとに、当該サーバ111に配置済みの仮想マシンの合計サイズが格納されている。配置済みサイズ定義情報は、例えば、記憶部1801に記憶されていてもよい。
判定部1803は、仮想マシンの追加配置、仮想マシンの初期配置、および、仮想マシンの再配置のいずれに対応した混合整数計画問題を解くべきかを判定する。判定部1803は、判定結果に基づいて、仮想マシンの追加配置、仮想マシンの初期配置、および仮想マシンの再配置のいずれに対応した混合整数計画問題を解く指示を、求解部1804に出力する。
求解部1804は、記憶部1801から渡される定数、変数、目的関数および制約条件と、判定部1803からの指示とに基づいて、混合整数計画問題を解く。混合整数計画問題は、サーバに要求される演算リソースの関数として記述された混合整数計画問題である。混合整数計画問題は、例えば、仮想マシンの配置に関するパラメータを用いて、サーバが実行する仮想マシンの合計サイズの関数として記述され、サーバでの消費電力と空調設備での消費電力と電源設備での消費電力との合計消費電力を目的関数とする。
求解部1804は、例えば、仮想マシンの初期配置に対応した混合整数計画問題を解くことによって、全てのサーバ111が停止している状態で、1個以上のサーバ111に1個以上の仮想マシンを配置する。また、求解部1804は、例えば、仮想マシンの追加配置に対応した混合整数計画問題を解くことによって、1個以上のサーバ111に1個以上の仮想マシンが既に配置されている状態に対して、さらに1個以上の仮想マシンを追加で配置してもよい。
また、求解部1804は、例えば、仮想マシンの再配置に対応した混合整数計画問題を解くことによって、1個以上のサーバ111に1個以上の仮想マシンが既に配置されている状態に対して、仮想マシンを配置しなおしてもよい。また、求解部1804は、一定時間ごとに仮想マシンの再配置を行うようにしてもよい。また、求解部1804は、例えば、ライブマイグレーションによる消費電力を考慮した、仮想マシンの再配置に対応した混合整数計画問題を解くことによって、仮想マシンをライブマイグレーションによって配置しなおしてもよい。
求解部1804は、具体的には、それぞれのサーバ111に配置済みの仮想マシンの合計サイズがw0 ijであり、追加で配置するn番目の仮想マシンのサイズがτnであると設定する。そして、求解部1804は、後述する式(1)の目的関数と、後述する式(5)〜式(10)の制約条件とによって規定される混合整数計画問題をソルバーによって解くことにより、仮想マシンの追加配置に対応した混合整数計画問題の解を求める。ソルバーは、例えば、GLPKやSYMPHONYやGurobi Optimizerなどである。これにより、求解部1804は、仮想マシンの追加配置に対応した混合整数計画問題を解くことができる。
また、求解部1804は、具体的には、それぞれのサーバ111に配置済みの仮想マシンの合計サイズw0 ijが0であり、追加で配置するn番目の仮想マシンのサイズがτnであると設定してもよい。そして、求解部1804は、後述する式(1)の目的関数と、後述する式(5)〜式(10)の制約条件とによって規定される混合整数計画問題をソルバーによって解くことにより、仮想マシンの初期配置に対応した混合整数計画問題の解を求める。これにより、求解部1804は、仮想マシンの初期配置に対応した混合整数計画問題を解くことができる。
また、求解部1804は、具体的には、それぞれのサーバ111に配置済みの仮想マシンの合計サイズw0 ijが0であり、それぞれのサーバ111に配置済みの仮想マシンを追加で配置する仮想マシンとして設定してもよい。そして、求解部1804は、後述する式(1)の目的関数と、後述する式(5)〜式(10)の制約条件とによって規定される混合整数計画問題をソルバーによって解くことにより、仮想マシンの再配置に対応した混合整数計画問題の解を求める。これにより、求解部1804は、仮想マシンの再配置に対応した混合整数計画問題を解くことができる。
配置部1805は、求解部1804が導出する混合整数計画問題の解に基づいて、サーバ111に仮想マシンを配置する。配置部1805は、例えば、混合整数計画問題の解となる、サーバ111が実行する仮想マシンの合計サイズwijに基づいて、サーバ111に仮想マシンを配置する。
推定部1806は、パラメータの初期値を設定する。パラメータは、例えば、サーバ111、空調設備112、電源設備113、熱移動の特性をあらわす個々の係数ではなく、係数を組み合わせた多項式によってあらわされる。推定部1806は、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報の少なくともいずれかに基づき、パラメータの初期値を設定する。第1の性能情報とは、複数のサーバ111の消費電力に関する性能情報である。第2の性能情報とは、施設110に設置された空調設備112の消費電力に関する性能情報である。第3の性能情報とは、施設110に配置された電源設備113の消費電力に関する性能情報である。
パラメータの初期値は、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報の少なくともいずれかに基づき設定された、サーバ111が実行する仮想マシンの合計サイズに対する施設110全体の消費電力に関する初期値を含む。パラメータの初期値は、例えば、後述する式(15)によって規定される初期値を含む。
推定部1806は、例えば、図11,図13〜図16の各種情報が示す定数を、後述する式(15)に代入することにより、パラメータの初期値を算出し、パラメータの初期値を設定する。このとき、推定部1806は、図11,図13〜図16のいずれかの情報が示す定数が分からなければ、当該定数の代わりとして用いられる所定値を後述する式(15)に代入することにより、パラメータの初期値を算出してもよい。定数の代わりとして用いられる所定値は、例えば、1である。
パラメータの初期値は、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報の少なくともいずれかに基づき設定された、サーバ111への電源投入の有無に対する施設110全体の消費電力に関する初期値を含む。パラメータの初期値は、例えば、後述する式(16)によって規定される初期値を含む。
推定部1806は、例えば、図12〜図16の各種情報が示す定数を、後述する式(16)に代入することにより、パラメータの初期値を算出し、パラメータの初期値を設定する。このとき、推定部1806は、図12〜図16のいずれかの情報が示す定数が分からなければ、当該定数の代わりとして用いられる所定値を後述する式(16)に代入することにより、パラメータの初期値を算出してもよい。定数の代わりとして用いられる所定値は、例えば、1である。
パラメータの初期値は、第2の性能情報、第3の性能情報、および、熱結合情報の少なくともいずれかに基づき設定された、施設110全体での常時消費される消費電力に関する初期値を含む。パラメータの初期値は、例えば、後述する式(17)によって規定される初期値を含む。
推定部1806は、例えば、図13〜図17の各種情報が示す定数を、後述する式(17)に代入することにより、パラメータの初期値を算出し、パラメータの初期値を設定する。このとき、推定部1806は、図13〜図17のいずれかの情報が示す定数が分からなければ、当該定数の代わりとして用いられる所定値を後述する式(17)に代入することにより、パラメータの初期値を算出してもよい。定数の代わりとして用いられる所定値は、例えば、1である。
また、推定部1806は、逐次的なパラメータ推定方法により、施設110全体での消費電力を最適化するように、パラメータを更新する。逐次的なパラメータ推定方法は、例えば、逐次最小二乗法、忘却要素を用いた逐次最小二乗法、矩形窓を用いた逐次最小二乗法、カルマンフィルタなどである。推定部1806は、例えば、逐次的なパラメータ推定方法により、施設110全体での消費電力への影響量をより精度よくあらわすようにパラメータを更新する。
推定部1806は、具体的には、施設110全体での消費電力の計算上の値が、配置部1805がサーバ111に仮想マシンを配置した後の施設110全体での消費電力の計測値に近づくように、パラメータを更新する。推定部1806は、より具体的には、後述する式(19)および式(20)によって規定される更新式を解くことにより、パラメータを更新する。
(配置探索装置100が仮想マシンの配置を制御する具体的な流れ)
ここでは、下記(D−1)〜(D−3)のデータセンタ210の状況に対応する混合整数計画問題としての定式化について説明する。混合整数計画問題は、具体的には、配置する仮想マシンの種類や数が変化しても、混合整数計画問題に用いられる変数やパラメータの個数が変化しないように規定される。
(D−1)図4のデータセンタ構造情報400が示すように、データセンタ210に設置されたラック220の数がN個であり、1ラック220あたりのサーバ111の数がS個であり、データセンタ210に設置された空調設備112の数がC個であるとする。
(D−2)図5の最大サイズ定義情報500が示すように、i番目のラック220のj番目のサーバ111に配置可能な仮想マシンの最大サイズがLijであるとする。また、図6の配置済みサイズ情報600が示すように、i番目のラック220のj番目のサーバ111に配置済みの仮想マシンの合計サイズがw0 ijであるとする。
(D−3)図7の追加配置数情報700が示すように、追加で配置すべき仮想マシンの数がM個であるとする。また、図8の仮想マシンサイズ情報800が示すように、追加で配置すべきM個の仮想マシンに1〜Mの番号を付したときのn番目の仮想マシンのサイズがτnであるとする。
上記(D−1)〜(D−3)の状況において、混合整数計画問題は、具体的には、下記式(1)の目的関数となる最小化関数と、下記式(5)〜式(10)の制約条件によって規定される。下記式(1)は、行ベクトルと列ベクトルとの内積である。下記式(1)は、データセンタ210全体での消費電力をあらわすように規定され、制約条件の元で最小化される対象である。
Figure 2017168664
上記式(1)のうち、wは、下記式(2)によって規定される。wは、具体的には、i番目のラック220のj番目のサーバ111が実行する仮想マシンの合計サイズwijを要素として並べたベクトルである。wの要素の数は、配置する仮想マシンの種類や数ではなく、サーバ111の数に対応し、N×Sである。このため、wの要素の数は、配置する仮想マシンの種類や数が変化しても、変化しない。
Figure 2017168664
上記式(1)のうち、vは、下記式(3)によって規定される。vは、具体的には、i番目のラック220のj番目のサーバ111の電源がオンであるかオフであるかを示す、vijを要素として並べたベクトルである。vijの値が0であればサーバ111への電源投入がなくサーバ111の電源がオフであり、vijの値が1であればサーバ111への電源投入がありサーバ111の電源がオンであることを示す。vの要素の数は、配置する仮想マシンの種類や数ではなく、サーバ111の数に対応し、N×Sである。このため、vの要素の数は、配置する仮想マシンの種類や数が変化しても、変化しない。
Figure 2017168664
上記式(1)のうち、θTは、下記式(4)によって規定される。θTは、具体的には、wの各要素についての係数となるパラメータθw 1,1〜θw N,Sを要素とし、vの各要素についての係数となるパラメータθv 1,1〜θv N,Sを要素とし、定数1についての係数となるθbを要素として並べたベクトルである。
Figure 2017168664
ここで、上記式(1)のwと上記式(4)のθw 1,1〜θw N,Sとによって、サーバ111が実行する仮想マシンの合計サイズに対するデータセンタ210全体での消費電力があらわされるようにする。このため、θw 1,1〜θw N,Sには、サーバ111が実行する仮想マシンの単位サイズあたりのデータセンタ210全体での消費電力への影響量をより精度よくあらわす値が設定されることが好ましい。
また、上記式(1)のvと上記式(4)のθv 1,1〜θv N,Sとによって、サーバ111への電源投入の有無に対するデータセンタ210全体の消費電力があらわされるようにする。このため、θv 1,1〜θv N,Sには、サーバ111への電源投入の有無によるデータセンタ210全体での消費電力への影響量をより精度よくあらわす値が設定されることが好ましい。
また、上記式(1)の定数1と上記式(4)のθbによって、wやvに関わらない定数であって、データセンタ210全体の消費電力のうち常時消費される消費電力があらわされるようにする。このため、θbには、データセンタ210全体での常時消費される消費電力をより精度よくあらわす値が設定されることが好ましい。
これによれば、配置される仮想マシンの種類や数に関わらずパラメータの個数が変化せず、かつ、パラメータに好ましい値が設定されればデータセンタ210全体での消費電力を精度よくあらわすことができる目的関数が規定される。さらに、上記目的関数に対して、制約条件が下記式(5)〜式(10)によって規定される。
下記式(5)は、xn,i,jが、「0」か「1」かのいずれかの値をとる離散変数であることを示す制約条件である。xn,i,jは、n番目の仮想マシンが、i番目のラック220のj番目のサーバ111に割り当てられているか否かを示す。xn,i,jは、i番目のラック220のj番目のサーバ111でn番目の仮想マシンが実行されるときに1であり、n番目の仮想マシンが実行されないときに0である。換言すれば、下記式(5)は、仮想マシンの配置をあらわすことができる。下記式(5)により、xn,i,jが「0,1」以外の値をとらないようにする。
Figure 2017168664
下記式(6)は、上述したvi,jが、「0」か「1」かのいずれかの値をとる離散変数であることを示す制約条件である。vi,jは、i番目のラック220のj番目のサーバ111への電源投入があり電源がオンであるときに1であり、電源投入がなく電源がオフであるときに0である。換言すれば、下記式(6)は、サーバ111の電源がオンであるかオフであるかをあらわすことができる。下記式(6)により、変数vijが、「0,1」以外の値をとらないようにする。
Figure 2017168664
下記式(7)は、各々のサーバ111に関するxn,i,jの総和が「1」になることを示す制約条件である。このため、上記式(5)を考慮すれば、各々のサーバ111のうち、いずれか1つのサーバ111に関する変数xn,i,jが「1」になり、残余のサーバ111に関する変数xn,i,jが「0」になる。換言すれば、下記式(7)は、n番目の仮想マシンはいずれか1つのサーバ111に割り当てられることを示し、2つ以上のサーバ111に割り当てられる場合やサーバ111に割り当てられない場合がないことをあらわすことができる。
Figure 2017168664
下記式(8)は、i番目のラック220のj番目のサーバ111が実行する仮想マシンの合計サイズwijが、配置済みの仮想マシンの合計サイズw0 ijと、追加で配置される仮想マシンのサイズτnとの和であることを示す制約条件である。換言すれば、下記式(8)は、追加で仮想マシンを配置した後に、i番目のラック220のj番目のサーバ111が実行することになる仮想マシンの合計サイズwijをあらわすことができる。
Figure 2017168664
下記式(9)は、i番目のラック220のj番目のサーバ111が実行する仮想マシンの合計サイズwijが、i番目のラック220のj番目のサーバ111に配置可能な仮想マシンの最大サイズLij以下であることを示す制約条件である。換言すれば、下記式(9)は、仮想マシンを追加しても実行することができないサーバ111に仮想マシンを追加しないことをあらわすことができる。
Figure 2017168664
下記式(10)は、i番目のラック220のj番目のサーバ111の電源がオンである場合にはi番目のラック220のj番目のサーバ111に1個以上の仮想マシンが配置されることを示す制約条件である。また、下記式(10)は、i番目のラック220のj番目のサーバ111に仮想マシンが配置されない場合にはi番目のラック220のj番目のサーバ111の電源をオフにすることを示す制約条件でもある。
Figure 2017168664
ここで、上述したように、混合整数計画問題の目的関数に用いられるパラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbには、データセンタ210全体での消費電力の低減化を図る観点から好ましい値が設定されることが望まれる。このため、逐次的なパラメータ推定方法を用いて、混合整数計画問題を解く都度、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbを好ましい値に近づくように更新する。このとき、逐次的なパラメータ推定方法には、下記(M−1)および(M−2)のような性質がある。
(M−1)パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値が、データセンタ210全体での消費電力の低減化を図る観点から好ましい値に比較的近い場合がある。この場合では、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbが、データセンタ210全体での消費電力の低減化を図る観点から好ましい値に近づくまでにかかる時間または処理量が低減化される傾向がある。
(M−2)パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値が、データセンタ210全体での消費電力の低減化を図る観点から好ましい値から比較的遠い場合がある。この場合では、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbが、データセンタ210全体での消費電力の低減化を図る観点から好ましい値に近づくまでにかかる時間または処理量が増大化しやすい傾向がある。結果としてこの場合では、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbが、データセンタ210全体での消費電力の低減化を図る観点から好ましい値に近づくまでの間、データセンタ210全体での消費電力を低減化することが難しくなる。
このため、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値についても、データセンタ210全体での消費電力の低減化を図る観点から好ましい値に比較的近い値を用いることが好ましい。そこで、データセンタ210全体での消費電力について説明し、データセンタ210全体での消費電力を低減する観点から好ましい値に比較的近くなる、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値について説明する。
ここで、データセンタ210全体での消費電力について説明するために、データセンタ210に設置されたサーバ111、空調設備112となる空調室内機231および空調室外機232、電源設備113が有する消費電力に関する性質について説明する。例えば、サーバ111は、消費電力に関して下記(S−1)〜(S−3)のような性質を有する。
(S−1)サーバ111において仮想マシンが1個でも実行されるときにはサーバ111の電源がオンになり、サーバ111において仮想マシンが実行されないときにはサーバ111の電源がオフになる。
(S−2)サーバ111の電源がオンになるとサーバ111において一定の電力が消費される。
(S−3)サーバ111において実行される仮想マシンの合計サイズが増えると負荷が高くなり、実行される仮想マシンの合計サイズに応じて消費電力が増える。
また、例えば、電源設備113は、消費電力に関して下記(U−1)および(U−2)のような性質を有する。
(U−1)ラック220内のサーバ111の動作状態に関わらず、ラック220内の電源設備113において常に一定の電力が消費される。
(U−2)ラック220内のサーバ111の合計消費電力が増えると、ラック220内のサーバ111の合計消費電力に応じてラック220内の電源設備113の消費電力が増える。
また、例えば、空調室内機231は、消費電力に関して下記(C−1)および(C−2)のような性質を有する。
(C−1)空調室内機231において常に一定の電力が消費される。
(C−2)k番目の空調室内機231に流入する熱流量が増えると、k番目の空調室内機231の消費電力が増える。
また、例えば、空調室外機232は、消費電力に関して下記(C−3)および(C−4)のような性質を有する。
(C−3)k番目の空調室外機232に流入する熱流量は、k番目の空調室内機231から排出される熱流量に等しい。
(C−4)k番目の空調室外機232から排出される熱流量が増えると、k番目の空調室外機232の消費電力が増える。
以上、データセンタ210に設置されたサーバ111、空調設備112となる空調室内機231および空調室外機232、電源設備113が、上述したような消費電力に関する性質を有する。このため、データセンタ210全体での消費電力は、下記式(11)によって規定されることになる。
Figure 2017168664
上記式(11)は、データセンタ210に設置されたサーバ111、空調室内機231および空調室外機232、電源設備113が有する性質に基づき、図11〜図17の各種情報が示す定数を用いて、データセンタ210全体での消費電力を示した数式である。ここでは、図11〜図17の各種情報が示す定数の説明については、図11〜図17と重複するため、省略する。さらに、データセンタ210における熱結合は、下記(Q−1)〜(Q−3)の性質を有する。
(Q−1)各空調室内機231から排出される熱流量は、各空調室内機231に流入する熱流量に、当該空調室内機231で発生した熱流量(すなわち、消費電力)を足したものである。ここで、(Q−1)の性質は、例えば、下記式(12)によって規定される。
Figure 2017168664
(Q−2)各空調室内機231に流入する熱流量は、各ラック220から排出される熱流量である。(Q−2)の性質は、例えば、下記式(13)によって規定される。
Figure 2017168664
(Q−3)各ラック220から排出される熱流量は、各ラック220に流入する熱流量に、当該ラック220で発生した熱流量(すなわち、消費電力)を足したものである。(Q−3)の性質は、例えば、下記式(14)によって規定される。
Figure 2017168664
ここで、以上説明した、上記式(11)によって規定されたデータセンタ210全体での消費電力を、上記式(12)〜式(14)を参照して、上記式(1)によって規定されたデータセンタ210全体での消費電力と比較する。これにより、上記式(1)のパラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値は、下記式(15)〜式(17)によって規定される。
Figure 2017168664
Figure 2017168664
Figure 2017168664
これにより、混合整数計画問題に用いられるパラメータを、比較的好ましい初期値から始めることができる。これにより、配置探索装置100は、混合整数計画問題に用いられるパラメータを好ましい値に近づける間も、混合整数計画問題に用いられるパラメータとして比較的好ましい値を用いて、データセンタ210全体での消費電力を低減化することができる。
その後、配置探索装置100は、上記式(5)〜式(10)の制約条件を満たすように、上記式(15)〜式(17)のパラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値を用いて、上記式(1)の目的関数を最小化する解を求める。上記式(1)の目的関数を最小化する解は、例えば、下記式(18)によって規定される。
Figure 2017168664
そして、配置探索装置100は、求めた解に基づいて、複数のサーバ111に複数の仮想マシンを配置する。一方で、電力計240は、混合整数計画問題の解に基づき複数のサーバ111に複数の仮想マシンが配置された状態におけるデータセンタ210全体での消費電力を計測し、計測したデータセンタ210全体での消費電力を配置探索装置100に送信する。以下の説明では、計測したデータセンタ210全体での消費電力を「実消費電力」と表記する場合がある。
(配置探索装置100が混合整数計画問題のパラメータを更新する具体的な流れ)
上述したように、混合整数計画問題の目的関数に用いられるパラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbには、データセンタ210全体での消費電力の低減化を図る観点から好ましい値が設定されることが望まれる。このため、配置探索装置100は、逐次的なパラメータ推定方法を用いて、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbを更新する。
例えば、逐次最小二乗法は、下記式(19)および式(20)によって規定される。pは、データセンタ210全体での実消費電力を示す。θTξ*は、データセンタ210全体での計算上の消費電力を示す。このため、下記式(19)および式(20)によって、データセンタ210全体での計算上の消費電力が、データセンタ210全体での実消費電力に近づくように、パラメータが更新されることになる。
Figure 2017168664
Figure 2017168664
パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbを最初に更新する際には、上記式(20)のPの初期値は、例えば、下記式(21)によって規定される。I2NS+1は、サイズが2NS+1の単位行列である。γは、比較的大きな正の値である。パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbを2回目以降に更新する際には、Pについても更新された値を用いる。
Figure 2017168664
これにより、配置探索装置100は、逐次的なパラメータ推定方法により、混合整数計画問題に用いられるパラメータを、より好ましい値へと更新することができる。結果として、配置探索装置100は、より好ましい値に更新されたパラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbを用いて、上記式(1)の目的関数を最小化する解を求めることができる。そして、配置探索装置100は、データセンタ210全体での消費電力を効果的に低減することができる。
具体的には、配置探索装置100は、データセンタ全体での消費電力を目的関数とする混合整数計画問題として、上記式(1)の目的関数および上記式(5)〜式(10)の制約条件を規定している。そして、配置探索装置100は、上記式(1)の目的関数に用いられるパラメータとして、逐次的に、より好ましい値を用いることができる。また、配置探索装置100は、上記式(5)〜式(10)の制約条件に用いられる係数として、予め正確な値が判明している係数を用いることができる。
これらのことから、配置探索装置100は、より好ましいパラメータや正確な係数を用いた混合整数計画問題を規定することができ、混合整数計画問題の目的関数がより正確にデータセンタ210全体での消費電力をあらわすようにすることができる。結果として、配置探索装置100は、混合整数計画問題を解くことにより、データセンタ210全体での消費電力を効果的に低減することができる。
ところで、例えば、αij、βij、λk、μk、κk、ηi、εi、ψki、qsup,iなどをパラメータとして、データセンタ210全体での消費電力を目的関数とする混合整数計画問題を定式化し、消費電力の低減化を図る場合が考えられる。しかしながら、この場合では、αij、βij、λk、μk、κk、ηi、εi、ψki、qsup,iなどを精度よく求めることが難しいため、データセンタ210全体での消費電力を効果的に低減することが難しい傾向がある。
一方で、αij、βij、λk、μk、κk、ηi、εi、ψki、qsup,iは、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値を算出するために用いる場合には有効である傾向がある。そこで、配置探索装置100は、αij、βij、λk、μk、κk、ηi、εi、ψki、qsup,iを直接パラメータとして用いず、パラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbの初期値を求める際に用いるようにしている。これにより、配置探索装置100は、αij、βij、λk、μk、κk、ηi、εi、ψki、qsup,iを直接パラメータとして用いる場合に比べて、データセンタ210全体での消費電力を効果的に低減しやすくすることができる。
(配置探索装置100が混合整数計画問題のパラメータを更新した結果の一例)
次に、図19を用いて、配置探索装置100が混合整数計画問題のパラメータを更新した結果の一例について説明する。
図19は、配置探索装置100が混合整数計画問題のパラメータを更新した結果の一例を示す説明図である。以上に示したように、配置探索装置100は、上述した混合整数計画問題の解を求める都度、上述した逐次的最小二乗法によって上述した混合整数計画問題の目的関数に用いられるパラメータθw 1,1〜θw N,S、θv 1,1〜θv N,S、θbを更新していく。
図19の例では、パラメータθbについて説明するが、他のパラメータについても同様である。以下の説明では、パラメータθbの値であって、データセンタ210全体での消費電力への影響を精度よくあらわし、データセンタ210全体での消費電力の低減化を図る観点から好ましい値を「パラメータθbの真値」と表記する場合がある。
図19に示すように、逐次最小二乗法によって更新されるにつれて、パラメータθbの値は、パラメータθbの真値に近づいていく。これにより、配置探索装置100は、逐次的なパラメータ推定方法により、混合整数計画問題に用いられるパラメータを、より好ましい値へと更新していくことができる。
また、パラメータθbの初期値を上記式(14)によって規定した場合、パラメータθbの初期値を0にした場合に比べて、パラメータθbの真値に近づくまでにかかる時間や処理量が低減化される。これにより、配置探索装置100は、混合整数計画問題に用いられるパラメータとして比較的好ましくない値を用いてしまう回数を低減化することができ、データセンタ210全体での消費電力を低減化することができる。
(仮想マシンの配置処理手順)
次に、図20を用いて、仮想マシンの配置処理手順について説明する。
図20は、仮想マシンの配置処理手順の一例を示すフローチャートである。図20において、まず、配置探索装置100は、仮想マシンの配置が開始されると、仮想マシンの配置の種類が、追加配置、初期配置、および再配置のいずれであるかを判定する(ステップS2001)。
次に、配置探索装置100は、判定結果に基づいて、記憶部1801に記憶された定数および変数の値を読み出し、目的関数および制約条件を設定する(ステップS2002)。そして、配置探索装置100は、読み出した定数および変数、設定した目的関数および制約条件に基づいて、ソルバーによって混合整数計画問題を解き、解を求める(ステップS2003)。
次に、配置探索装置100は、求めた解に基づいて、仮想マシンを配置する(ステップS2004)。そして、配置探索装置100は、仮想マシンを配置した状態におけるデータセンタ210全体での実消費電力を取得する(ステップS2005)。
次に、配置探索装置100は、取得した実消費電力に基づいて、混合整数計画問題のパラメータを更新する(ステップS2006)。そして、配置探索装置100は、仮想マシンの配置処理を終了する。これにより、配置探索装置100は、データセンタ210全体での消費電力が低減化されるように仮想マシンを配置することができる。
以上説明したように、配置探索装置100によれば、パラメータの初期値に、第1の性能情報、第2の性能情報、第3の性能情報、および、熱結合情報のうち、少なくともいずれかに基づき設定された初期値を用いることができる。そして、配置探索装置100によれば、複数のサーバ111を有する施設110全体での消費電力を最適化するように、パラメータを用いて複数のサーバ111への複数の仮想マシンの配置を求めることができる。また、配置探索装置100によれば、逐次的なパラメータ推定方法によりパラメータを更新することができる。
これによれば、配置探索装置100は、逐次的なパラメータ推定方法により、混合整数計画問題に用いられるパラメータを、比較的好ましい初期値から始めて、より好ましい値へと更新していくことができる。これにより、配置探索装置100は、混合整数計画問題に用いられるパラメータが好ましい値に近づくまでにかかる時間の低減化を図ることができる。結果として、配置探索装置100は、混合整数計画問題に用いられるパラメータとして比較的好ましくない値を用いてしまう回数を低減化することができ、施設110全体での消費電力を低減化することができる。
また、配置探索装置100によれば、パラメータを用いてサーバ111が実行する仮想マシンの合計サイズの関数として記述された、施設110全体での消費電力を目的関数とする混合整数計画問題を用いることができる。そして、配置探索装置100によれば、混合整数計画問題を解き、混合整数計画問題の解に基づいて配置を求めることができる。これにより、配置探索装置100は、配置する仮想マシンの種類や数に関わらずパラメータの数が変化しない混合整数計画問題を用いることができ、最小二乗法によってパラメータを更新可能にすることができる。
また、配置探索装置100によれば、第1〜第3の性能情報、および、熱結合情報に基づき設定された、サーバ111が使用する演算リソースに対する施設110全体の消費電力に関する初期値を含むパラメータの初期値を用いることができる。これにより、配置探索装置100は、サーバ111が使用する演算リソースに対する施設110全体の消費電力に関するパラメータを、比較的好ましい値から始めることができる。そして、配置探索装置100は、サーバ111が実行する仮想マシンの合計サイズに対する施設110全体の消費電力に関するパラメータが、施設110全体での消費電力を低減化する観点から好ましい値に近づくまでにかかる時間を低減化することができる。
また、配置探索装置100によれば、第1〜第3の性能情報、および、熱結合情報に基づき設定された、サーバ111の電源投入の有無に対する施設110全体の消費電力に関する初期値を含むパラメータの初期値を用いることができる。これにより、配置探索装置100は、サーバ111の電源投入の有無に対する施設110全体の消費電力に関するパラメータを、比較的好ましい値から始めることができる。そして、配置探索装置100は、サーバ111の電源投入の有無に対する施設110全体の消費電力に関するパラメータが、施設110全体での消費電力を低減化する観点から好ましい値に近づくまでにかかる時間を低減化することができる。
また、配置探索装置100によれば、パラメータの初期値は、第2および第3の性能情報、および、熱結合情報に基づき設定された、施設110全体での常時消費される消費電力に関する初期値を含むパラメータの初期値を用いることができる。これにより、配置探索装置100は、施設110全体での常時消費される消費電力に関するパラメータを、比較的好ましい値から始めることができる。そして、配置探索装置100は、施設110全体での常時消費される消費電力に関するパラメータが、施設110全体での消費電力を低減化する観点から好ましい値に近づくまでにかかる時間を低減化することができる。
なお、本実施の形態で説明した配置探索方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本配置探索プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本配置探索プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)複数のサーバを有する施設における、前記複数のサーバへの複数の仮想マシンの配置を探索するプログラムであって、
前記複数のサーバへの前記複数の仮想マシンの配置に関するパラメータの初期値を、前記複数のサーバの消費電力に関する第1の性能情報、前記施設に設置された空調設備の消費電力に関する第2の性能情報、前記施設に配置された電源設備の消費電力に関する第3の性能情報、および、前記複数のサーバ間および前記複数のサーバと前記空調設備との間の熱結合に関する熱結合情報のうち、少なくともいずれかに基づき設定し、
逐次的なパラメータ推定方法により前記施設全体の消費電力を最適化するように、前記パラメータを更新する、
処理をコンピュータに実行させることを特徴とする配置探索プログラム。
(付記2)前記パラメータを用いて前記サーバが実行する仮想マシンの合計サイズの関数として記述された、前記サーバでの消費電力と前記空調設備での消費電力と前記電源設備での消費電力との合計消費電力を目的関数とする混合整数計画問題を解き、前記混合整数計画問題の解に基づいて前記配置を求める、
処理を前記コンピュータに実行させることを特徴とする付記1に記載の配置探索プログラム。
(付記3)前記設定する処理は、
前記第1の性能情報、前記第2の性能情報、前記第3の性能情報、および、前記熱結合情報に基づき、前記サーバが実行する仮想マシンの合計サイズに対する前記施設全体の消費電力に関する初期値を含む、前記パラメータの初期値を設定する、ことを特徴とする付記1または2に記載の配置探索プログラム。
(付記4)前記設定する処理は、
前記第1の性能情報、前記第2の性能情報、前記第3の性能情報、および、前記熱結合情報に基づき、前記サーバが電源投入の有無に対する前記施設全体の消費電力に関する初期値を含む、前記パラメータの初期値を設定する、ことを特徴とする付記1〜3のいずれか一つに記載の配置探索プログラム。
(付記5)前記設定する処理は、
前記第2の性能情報、前記第3の性能情報、および、前記熱結合情報に基づき、前記施設全体での常時消費される消費電力に関する初期値を含む、前記パラメータの初期値を設定する、ことを特徴とする付記1〜4のいずれか一つに記載の配置探索プログラム。
(付記6)複数のサーバを有する施設における、前記複数のサーバへの複数の仮想マシンの配置を探索する方法であって、
前記複数のサーバへの前記複数の仮想マシンの配置に関するパラメータの初期値を、前記複数のサーバの消費電力に関する第1の性能情報、前記施設に設置された空調設備の消費電力に関する第2の性能情報、前記施設に配置された電源設備の消費電力に関する第3の性能情報、および、前記複数のサーバ間および前記複数のサーバと前記空調設備との間の熱結合に関する熱結合情報のうち、少なくともいずれかに基づき設定し、
逐次的なパラメータ推定方法により前記施設全体での消費電力を最適化するように、前記パラメータを更新する、
処理をコンピュータが実行することを特徴とする配置探索方法。
(付記7)複数のサーバを有する施設における、前記複数のサーバへの複数の仮想マシンの配置を探索する装置であって、
前記複数のサーバへの前記複数の仮想マシンの配置に関するパラメータの初期値を、前記複数のサーバの消費電力に関する第1の性能情報、前記施設に設置された空調設備の消費電力に関する第2の性能情報、前記施設に配置された電源設備の消費電力に関する第3の性能情報、および、前記複数のサーバ間および前記複数のサーバと前記空調設備との間の熱結合に関する熱結合情報のうち、少なくともいずれかに基づき設定し、
逐次的なパラメータ推定方法により前記施設全体での消費電力を最適化するように、前記パラメータを更新する、
制御部を有することを特徴とする配置探索装置。
100 配置探索装置
110 施設
200 電子計算機システム
210 データセンタ
220 ラック
231 空調室内機
232 空調室外機
240 電力計
300 バス
301 CPU
302 メモリ
303 I/F
304 ディスクドライブ
305 ディスク
400 データセンタ構造情報
500 最大サイズ定義情報
600 配置済みサイズ情報
700 追加配置数情報
800 仮想マシンサイズ情報
900 パラメータ情報
1000 定数情報
1100 動作消費電力情報
1200 ベース消費電力情報
1300 室内機情報
1400 室外機情報
1500 電源設備情報
1600 熱流量関係情報
1700 供給熱流量情報
1801 記憶部
1802 管理部
1803 判定部
1804 求解部
1805 配置部
1806 推定部

Claims (7)

  1. 複数のサーバを有する施設における、前記複数のサーバへの複数の仮想マシンの配置を探索するプログラムであって、
    前記複数のサーバへの前記複数の仮想マシンの配置に関するパラメータの初期値を、前記複数のサーバの消費電力に関する第1の性能情報、前記施設に設置された空調設備の消費電力に関する第2の性能情報、前記施設に配置された電源設備の消費電力に関する第3の性能情報、および、前記複数のサーバ間および前記複数のサーバと前記空調設備との間の熱結合に関する熱結合情報のうち、少なくともいずれかに基づき設定し、
    逐次的なパラメータ推定方法により前記施設全体の消費電力を最適化するように、前記パラメータを更新する、
    処理をコンピュータに実行させることを特徴とする配置探索プログラム。
  2. 前記パラメータを用いて前記サーバが実行する仮想マシンの合計サイズの関数として記述された、前記サーバでの消費電力と前記空調設備での消費電力と前記電源設備での消費電力との合計消費電力を目的関数とする混合整数計画問題を解き、前記混合整数計画問題の解に基づいて前記配置を求める、
    処理を前記コンピュータに実行させることを特徴とする請求項1に記載の配置探索プログラム。
  3. 前記設定する処理は、
    前記第1の性能情報、前記第2の性能情報、前記第3の性能情報、および、前記熱結合情報に基づき、前記サーバが実行する仮想マシンの合計サイズに対する前記施設全体の消費電力に関する初期値を含む、前記パラメータの初期値を設定する、ことを特徴とする請求項1または2に記載の配置探索プログラム。
  4. 前記設定する処理は、
    前記第1の性能情報、前記第2の性能情報、前記第3の性能情報、および、前記熱結合情報に基づき、前記サーバが電源投入の有無に対する前記施設全体の消費電力に関する初期値を含む、前記パラメータの初期値を設定する、ことを特徴とする請求項1〜3のいずれか一つに記載の配置探索プログラム。
  5. 前記設定する処理は、
    前記第2の性能情報、前記第3の性能情報、および、前記熱結合情報に基づき、前記施設全体での常時消費される消費電力に関する初期値を含む、前記パラメータの初期値を設定する、ことを特徴とする請求項1〜4のいずれか一つに記載の配置探索プログラム。
  6. 複数のサーバを有する施設における、前記複数のサーバへの複数の仮想マシンの配置を探索する方法であって、
    前記複数のサーバへの前記複数の仮想マシンの配置に関するパラメータの初期値を、前記複数のサーバの消費電力に関する第1の性能情報、前記施設に設置された空調設備の消費電力に関する第2の性能情報、前記施設に配置された電源設備の消費電力に関する第3の性能情報、および、前記複数のサーバ間および前記複数のサーバと前記空調設備との間の熱結合に関する熱結合情報のうち、少なくともいずれかに基づき設定し、
    逐次的なパラメータ推定方法により前記施設全体での消費電力を最適化するように、前記パラメータを更新する、
    処理をコンピュータが実行することを特徴とする配置探索方法。
  7. 複数のサーバを有する施設における、前記複数のサーバへの複数の仮想マシンの配置を探索する装置であって、
    前記複数のサーバへの前記複数の仮想マシンの配置に関するパラメータの初期値を、前記複数のサーバの消費電力に関する第1の性能情報、前記施設に設置された空調設備の消費電力に関する第2の性能情報、前記施設に配置された電源設備の消費電力に関する第3の性能情報、および、前記複数のサーバ間および前記複数のサーバと前記空調設備との間の熱結合に関する熱結合情報のうち、少なくともいずれかに基づき設定し、
    逐次的なパラメータ推定方法により前記施設全体での消費電力を最適化するように、前記パラメータを更新する、
    制御部を有することを特徴とする配置探索装置。
JP2018507964A 2016-03-30 2016-03-30 配置探索プログラム、配置探索方法、および配置探索装置 Active JP6699720B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/060572 WO2017168664A1 (ja) 2016-03-30 2016-03-30 配置探索プログラム、配置探索方法、および配置探索装置

Publications (2)

Publication Number Publication Date
JPWO2017168664A1 true JPWO2017168664A1 (ja) 2019-02-07
JP6699720B2 JP6699720B2 (ja) 2020-05-27

Family

ID=59962722

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018507964A Active JP6699720B2 (ja) 2016-03-30 2016-03-30 配置探索プログラム、配置探索方法、および配置探索装置

Country Status (3)

Country Link
US (1) US11137817B2 (ja)
JP (1) JP6699720B2 (ja)
WO (1) WO2017168664A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023105557A1 (ja) * 2021-12-06 2023-06-15 日本電信電話株式会社 電力量低減制御装置、電力量低減制御方法、電力量低減制御システム、および、プログラム

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06337705A (ja) * 1993-03-29 1994-12-06 Kobe Steel Ltd 焼却炉制御方法
JP2002349325A (ja) * 2001-03-19 2002-12-04 Unisia Jecs Corp 内燃機関の空燃比制御装置
JP2011039889A (ja) * 2009-08-14 2011-02-24 Kddi Corp ネットワーク運用管理方法及びネットワーク運用管理装置
WO2013042615A1 (ja) * 2011-09-22 2013-03-28 富士通株式会社 電子計算機システム及び仮想マシン配置方法
JP2013058257A (ja) * 2010-09-16 2013-03-28 Hitachi Ltd 情報処理システムの運用管理方法、運用管理プログラムおよび運用管理装置、ならびに情報処理システム
JP2013087991A (ja) * 2011-10-14 2013-05-13 Fuji Electric Co Ltd 熱源制御装置、空調システム、熱源制御プログラムおよび熱源制御方法
JP2013196062A (ja) * 2012-03-15 2013-09-30 Fujitsu Ltd 情報処理装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4563825B2 (ja) 2005-01-25 2010-10-13 株式会社日立産機システム 冷凍機の運転方法及び冷凍機を備えて成る設備
JP4724730B2 (ja) 2008-04-09 2011-07-13 株式会社日立製作所 情報処理システムの運用管理方法、運用管理プログラム、および運用管理装置、ならびに情報処理システム
WO2010032501A1 (ja) 2008-09-17 2010-03-25 株式会社日立製作所 情報処理システムの運用管理方法
US8397088B1 (en) * 2009-07-21 2013-03-12 The Research Foundation Of State University Of New York Apparatus and method for efficient estimation of the energy dissipation of processor based systems
JP5544967B2 (ja) * 2010-03-24 2014-07-09 富士通株式会社 仮想マシン管理プログラム及び仮想マシン管理装置
JP5900599B2 (ja) * 2012-02-20 2016-04-06 富士通株式会社 電子計算機システム及び仮想マシン配置方法
WO2014178850A1 (en) * 2013-04-30 2014-11-06 Empire Technology Development, Llc Reactive loop sensing in multi-datacenter deployments

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06337705A (ja) * 1993-03-29 1994-12-06 Kobe Steel Ltd 焼却炉制御方法
JP2002349325A (ja) * 2001-03-19 2002-12-04 Unisia Jecs Corp 内燃機関の空燃比制御装置
JP2011039889A (ja) * 2009-08-14 2011-02-24 Kddi Corp ネットワーク運用管理方法及びネットワーク運用管理装置
JP2013058257A (ja) * 2010-09-16 2013-03-28 Hitachi Ltd 情報処理システムの運用管理方法、運用管理プログラムおよび運用管理装置、ならびに情報処理システム
WO2013042615A1 (ja) * 2011-09-22 2013-03-28 富士通株式会社 電子計算機システム及び仮想マシン配置方法
JP2013087991A (ja) * 2011-10-14 2013-05-13 Fuji Electric Co Ltd 熱源制御装置、空調システム、熱源制御プログラムおよび熱源制御方法
JP2013196062A (ja) * 2012-03-15 2013-09-30 Fujitsu Ltd 情報処理装置

Also Published As

Publication number Publication date
JP6699720B2 (ja) 2020-05-27
US20190025899A1 (en) 2019-01-24
US11137817B2 (en) 2021-10-05
WO2017168664A1 (ja) 2017-10-05

Similar Documents

Publication Publication Date Title
US20210224114A1 (en) Capacity Analysis Using Closed-System Modules
Tang et al. Thermal-aware task scheduling for data centers through minimizing heat recirculation
US8374928B2 (en) Data center power cost accounting system
US9418179B2 (en) System and method for predicting transient cooling performance for data center
JP4724730B2 (ja) 情報処理システムの運用管理方法、運用管理プログラム、および運用管理装置、ならびに情報処理システム
US9429921B2 (en) Method and system for energy control management
US8155793B2 (en) System and method for controlling air conditioning facilities, and system and method for power management of computer room
US8788224B2 (en) Virtual machine placement for minimizing total energy cost in a datacenter
US20150227397A1 (en) Energy efficient assignment of workloads in a datacenter
JP6175371B2 (ja) 電子計算機システム及び仮想マシン配置方法
JP6193393B2 (ja) 分散コンピューティングシステムのための電力の最適化
BRPI0812116B1 (pt) método e sistema para proporcionar uma representação de uma capacidade de um recurso de central de dados
Mahbod et al. Energy saving evaluation of an energy efficient data center using a model-free reinforcement learning approach
JP5874297B2 (ja) 熱源制御装置、空調システム、熱源制御プログラムおよび熱源制御方法
Wessing et al. Comparing asynchronous and synchronous parallelization of the SMS-EMOA
Liu et al. Scenario-based multi-objective robust scheduling for a semiconductor production line
JP6455937B2 (ja) シミュレーション装置、シミュレーション方法及びプログラム
JP6699720B2 (ja) 配置探索プログラム、配置探索方法、および配置探索装置
Lin et al. Bicriteria scheduling problem for unrelated parallel machines with release dates
Erden et al. A hybrid lumped capacitance-CFD model for the simulation of data center transients
Zhao et al. Appraising redundancy in facility layout
Aghaee et al. Process-variation and temperature aware SoC test scheduling technique
JP6724635B2 (ja) プログラム、管理方法、管理装置および情報処理システム
Chen* et al. Dynamic state-dependent dispatching for wafer fabrication
vor dem Berge et al. CoolEmAll: Models and tools for planning and operating energy efficient data centres

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181002

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181002

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200107

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200323

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200413

R150 Certificate of patent or registration of utility model

Ref document number: 6699720

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150