U.S. patent application number 12/260704 was filed with the patent office on 2009-05-21 for virtual cooling infrastructure.
Invention is credited to Cullen E. Bash, Chandrakant Patel, Amip J. Shah, Ratnesh Kumar Sharma, Chih C. Shih.
Application Number | 20090132097 12/260704 |
Document ID | / |
Family ID | 40642814 |
Filed Date | 2009-05-21 |
United States Patent
Application |
20090132097 |
Kind Code |
A1 |
Sharma; Ratnesh Kumar ; et
al. |
May 21, 2009 |
VIRTUAL COOLING INFRASTRUCTURE
Abstract
A virtual cooling infrastructure includes a demand manager
having logical descriptions of a plurality of heat loads and the
demand manager is configured to determine cooling load demands of
the heat loads. The infrastructure also includes a capacity manager
having logical descriptions of a plurality of cooling system
components configured to supply cooling resources to cool the heat
loads. The infrastructure further includes a service operator
configured to map the cooling resources of the cooling system
components to the cooling load demands of the heat loads.
Inventors: |
Sharma; Ratnesh Kumar;
(Union City, CA) ; Shah; Amip J.; (Santa Clara,
CA) ; Bash; Cullen E.; (Los Gatos, CA) ;
Patel; Chandrakant; (Fremont, CA) ; Shih; Chih
C.; (San Jose, CA) |
Correspondence
Address: |
HEWLETT PACKARD COMPANY
P O BOX 272400, 3404 E. HARMONY ROAD, INTELLECTUAL PROPERTY ADMINISTRATION
FORT COLLINS
CO
80527-2400
US
|
Family ID: |
40642814 |
Appl. No.: |
12/260704 |
Filed: |
October 29, 2008 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
60989335 |
Nov 20, 2007 |
|
|
|
Current U.S.
Class: |
700/300 |
Current CPC
Class: |
G05D 23/1917 20130101;
G06F 1/20 20130101; H05K 7/20836 20130101 |
Class at
Publication: |
700/300 |
International
Class: |
G05D 23/00 20060101
G05D023/00 |
Claims
1. A virtual cooling infrastructure comprising: a demand manager
having logical descriptions of a plurality of heat loads, wherein
the demand manager is configured to determine cooling load demands
of the heat loads; a capacity manager having logical descriptions
of a plurality of cooling system components configured to supply
cooling resources to cool the heat loads; and a service operator
configured to map the cooling resources of the cooling system
components to the cooling load demands of the heat loads.
2. The virtual cooling infrastructure according to claim 1, wherein
the capacity manager is further configured to identify capacity
limitations of the cooling system components and to allocate the
cooling resources based upon the cooling load demands determined by
the demand manager within the capacity limitations of the cooling
system components.
3. The virtual cooling infrastructure according to claim 1, wherein
the service operator is further configured to receive policy
constraints and to at least one of prioritize placement of the heat
loads in a structure and modify the mapping of the cooling
resources to the cooling load demands, or vice versa, based upon
the policy constraints.
4. The virtual cooling infrastructure according to claim 3, wherein
the service operator is further configured to monitor operations of
sources of the heat loads and the cooling system components to
substantially ensure that the policy constraints are being
maintained.
5. The virtual cooling infrastructure according to claim 1, wherein
the demand manager is further configured to process a plurality of
demand inputs to determine a plurality of demand outputs/capacity
inputs, and wherein the demand manager is further configured to
convey the demand outputs/capacity inputs to the capacity
manager.
6. The virtual cooling infrastructure according to claim 5, wherein
the demand manager is further configured to determine costs
associated with the demand outputs/capacity inputs and to provide
the service operator with the determined costs, and wherein the
service operator is further configured to determine whether one or
more policy constraints maintainable based upon the determined
costs.
7. The virtual cooling infrastructure according to claim 1, wherein
the logical descriptions of the cooling system components comprise
logical descriptions of one or more of physical descriptions,
respective capacities, cooling capabilities, actual run times,
projected run times, and reliabilities of the plurality of cooling
system components.
8. The virtual cooling infrastructure according to claim 1, wherein
the logical descriptions of the cooling system components comprise
at least one of resources associated with operating the cooling
infrastructures and costs associated with operating the cooling
infrastructures.
9. The virtual cooling infrastructure according to claim 1, wherein
the demand manager, the capacity manager, and the service operator
form part of a single overlay in an integrated cooling management
system.
10. A method of managing a virtual cooling infrastructure to
efficiently allocate cooling resources, said virtual cooling
infrastructure comprising a demand manager, a service operator, and
a capacity manager, said method comprising: in the demand manager,
creating logical descriptions of a plurality of heat loads; and
determining cooling load demands of the heat loads; in the capacity
manager, creating logical descriptions of a plurality of cooling
system components configured to supply cooling resources to cool
the heat loads; and in the service operator, mapping the cooling
resources of the cooling system components to the cooling load
demands of the heat loads or vice versa.
11. The method according to claim 10, said method further
comprising: in the capacity manager, identifying capacity
limitations of the cooling system components; and allocating the
cooling resources based upon the cooling load demands determined by
the demand manager within the capacity limitations of the cooling
system components.
12. The method according to claim 10, said method further
comprising: in the service operator, receiving policy constraints;
at least one of prioritizing placement of the heat loads and
modifying the mapping of the cooling resources based upon the
policy constraints.
13. The method according to claim 10, said method further
comprising: in the demand manager, determining costs associated
with cooling the determined cooling load demands in cooling the
heat loads; and in the service operator; determining whether one or
more policy constraints are maintainable based upon the costs
determined by the demand manager.
14. A computer readable storage medium on which is embedded one or
more computer programs, said one or more computer programs
implementing a method of managing a virtual cooling infrastructure
to efficiently allocate cooling resources, said virtual cooling
infrastructure comprising a demand manager, a service operator, and
a capacity manager, said one or more computer programs comprising a
set of instructions for: in the demand manager, creating logical
descriptions of a plurality of heat loads; and determining cooling
load demands of the heat loads; in the capacity manager, creating
logical descriptions of a plurality of cooling system components
configured to supply cooling resources to cool the heat loads; and
in the service operator, mapping the cooling resources of the
cooling system components to the cooling load demands of the heat
loads.
15. The computer readable storage medium according to claim 14,
said one or more computer programs further including a set of
instructions for: in the capacity manager, identifying capacity
limitations of the cooling system components; and allocating the
cooling resources based upon the cooling load demands determined by
the demand manager within the capacity limitations of the cooling
system components; and in the service operator, receiving policy
constraints; and at least one of prioritizing the workloads placed
on the heat loads and modifying the mapping of the cooling
resources based upon the policy constraints.
Description
CROSS-REFERENCES
[0001] The present application shares some common subject matter
with co-pending Provisional Patent Application Ser. No. 60/989,335
(Attorney Docket No. 200702605-1), entitled "Data Center
Synthesis", filed on Nov. 20, 2007, the disclosure of which is
hereby incorporated by reference in its entirety.
BACKGROUND
[0002] There has been a substantial increase in the number of data
centers, which may be defined as locations, for instance, rooms
that house computer systems arranged in a number of racks. The
computer systems are typically designed to perform jobs such as,
providing Internet services or performing various calculations. In
addition, data centers typically include cooling systems to
substantially maintain the computer systems within desired
thermodynamic conditions.
[0003] In addition to the number of data centers being increased,
there has also been a large increase in the sizes and densities of
the data centers. One result of this increase in size and density
is that the data centers are becoming ever more complex and thus
more difficult for human operators to manage efficiently.
Virtualization at the hardware and software levels of the computer
systems housed in the data centers have provided some benefits by
allowing consolidation and driving higher levels of resource
utilization. Typically, however, virtualization of the computer
systems has also contributed to the growth in complexity and human
operator intervention. Moreover, conventional virtualization of the
computer systems typically does not factor the thermodynamic
conditions in the data centers.
[0004] It would therefore be beneficial to have a virtualization
infrastructure that enables efficient operation and cooling of the
computer systems, while substantially minimizing human operator
involvement and meeting performance goals.
BRIEF DESCRIPTION OF THE DRAWINGS
[0005] Features of the present invention will become apparent to
those skilled in the art from the following description with
reference to the figures, in which:
[0006] FIG. 1 shows a simplified block diagram of a system for
provisioning cooling resources in a structure, according to an
embodiment of the invention;
[0007] FIG. 2A illustrates a process diagram of a demand manager
depicted in FIG. 1, according to an embodiment of the
invention;
[0008] FIG. 2B illustrates a process diagram of a service operator
and a capacity manager depicted in FIG. 1, according to an
embodiment of the invention;
[0009] FIG. 3 shows a facility architecture employing the virtual
cooling infrastructure depicted in FIG. 1, according to an
embodiment of the invention;
[0010] FIG. 4 shows a flow diagram of a method of managing a
virtual cooling infrastructure, according to an embodiment of the
invention; and
[0011] FIG. 5 shows a block diagram of a computing apparatus
configured to implement or execute the virtual cooling
infrastructure depicted in FIG. 1, according to an embodiment of
the invention.
DETAILED DESCRIPTION
[0012] For simplicity and illustrative purposes, the present
invention is described by referring mainly to an exemplary
embodiment thereof. In the following description, numerous specific
details are set forth in order to provide a thorough understanding
of the present invention. It will be apparent however, to one of
ordinary skill in the art, that the present invention may be
practiced without limitation to these specific details. In other
instances, well known methods and structures have not been
described in detail so as not to unnecessarily obscure the present
invention.
[0013] Disclosed herein is a virtual cooling infrastructure and a
method of managing the virtual cooling infrastructure to
efficiently allocate cooling resources, for instance, in a data
center, manufacturing facility, or other structure containing heat
loads. The virtual cooling infrastructure includes a demand
manager, a capacity manager, and a service operator. The demand
manager is configured to create logical descriptions of the heat
loads and to determine cooling load demands of the heat loads. The
capacity manager is configured to create logical descriptions of a
plurality of cooling system components configured to supply cooling
resources directly or indirectly to the heat loads. In addition,
the service operator is configured to map the cooling resources to
the cooling load demands of the heat loads or vice versa.
[0014] Through implementation of the virtual cooling infrastructure
and method disclosed herein, cooling resources and heat loads are
virtualized to provide improved utilization of a given
environmental control infrastructure. In addition, the virtual
cooling infrastructure and method enable thermal management targets
to be achieved within the infrastructural and thermodynamic
constraints existing at each of various stages and aggregation
levels in a structure containing heat loads. In one regard, the
virtual cooling infrastructure and method disclosed herein provide
a scalable framework in which various algorithms for distribution,
control, negotiation, etc., of cooling resource provisioning may be
applied. In another regard, the virtual cooling infrastructure and
method disclosed herein seamlessly automates the management of
diverse individual cooling resources with the overall service
delivery infrastructure of structures containing heat loads, such
as, data centers, manufacturing facilities, housing structures,
motorized vehicles, etc.
[0015] With reference first to FIG. 1, there is shown a simplified
block diagram of a system 100 for provisioning cooling resources in
a structure, according to an example. It should be understood that
the system 100 may include additional elements and that some of the
elements described herein may be removed and/or modified without
departing from a scope of the system 100.
[0016] As shown, the system 100 includes a virtual cooling
infrastructure 102, which may comprise software, firmware, and/or
hardware and is configured to virtualize capacity outputs of
cooling system components 120 based upon virtualized heat load
demand inputs or vice versa. Generally speaking, the virtualization
of the cooling system components 120, as well as virtualization of
heat loads 125 enables improved utilization of a given
environmental control infrastructure. The virtualization of the
cooling system components 120 and the heat loads 125 may generally
be defined as the creation of logical descriptions of the cooling
system components 120 and the heat loads 125. In addition, the
virtualization may also be defined as including the creation of
logical descriptions of cooling resources available from the
cooling system components 120 and the heat loads 125.
[0017] The heat loads 125 generally comprise heat generated by
computer equipment, such as servers, networking equipment, storage
devices, etc., components contained in the computer equipment, such
as processors, power supplies, disk drives, etc., manufacturing
equipment, such as drills, presses, robots, forming machines, etc.,
as well as any other heat generating elements, including, humans or
other animals. The heat loads 125 may also comprise heat loads 125
generated by combinations of elements, such as, all of the servers
housed in a single rack, all of the fabrication machines located in
a particular area, etc. The heat loads 125 may be generated by any
of the elements during performance of workloads, or when the
elements are in an operational state. Thus, by way of particular
example to heat loads 125 generated by computer equipment, the heat
loads 125 may be generated when the computer equipment perform, for
instance, computational jobs, graphics rendering operations,
various server applications, data storage operations, switching
operations, etc.
[0018] The cooling system components 120 generally include any
reasonably suitable apparatus or combination of apparatuses, for
instance, air conditioning units, heat exchangers, chilled water
supplies, fans, blowers, etc., for supplying cooling fluid directly
or indirectly to dissipate at least some of the heat loads 125. By
way of example, the cooling system components 120 may thus be
defined to include some or all of components forming a
refrigeration cycle to cool the cooling fluid. The cooling system
components 120 may also be defined to include particular elements
within other cooling elements, such as, a heat exchanger, a fan,
etc., contained in within an air conditioning unit. The cooling
system components 120 may also include secondary cooling
components, such as, a cooling tower, that may not directly supply
cooling resources to the heat loads, but may nonetheless be an
integral part of the overall cooling infrastructure.
[0019] The virtual cooling infrastructure 102 is depicted as
including a demand manager 104, a service operator 106, and a
capacity manager 108. The virtual cooling infrastructure 102
generally comprises logical representations of the heat loads 125
and the cooling system components 120, configured to perform
various functions described herein below. In one example, the
virtual cooling infrastructure 102 comprises software stored on a
computer-readable storage medium, which may be implemented by a
controller of a computing device. In another example, the virtual
cooling infrastructure 102 comprises an overlay in an integrated
cooling management system.
[0020] In instances where the virtual cooling infrastructure 102
comprises software, the virtual cooling infrastructure 102 may be
stored on a computer readable storage medium in any reasonably
suitable descriptive language and may be executed by the processor
of a computing device (not shown). In these instances, the demand
manager 104, the service operator 106, and the capacity manager 108
may comprise software modules or other programs or algorithms
configured to perform the functions described herein below.
[0021] In addition, or alternatively, the virtual cooling
infrastructure 102 may comprise firmware or hardware components. In
these instances, the virtual cooling infrastructure 102 may
comprise a circuit or other apparatus configured to perform the
functions described herein. In addition, the demand manager 104,
the service operator 106, and the capacity manager 108 may comprise
one or more of software modules and hardware modules, such as one
or more circuits.
[0022] As shown in FIG. 1, the virtual cooling infrastructure 102
is configured to receive input from an input source 130. The input
source 130 may comprise a computing device, a storage device, a
user-input device, etc., through or from which data may be inputted
into the virtual cooling infrastructure 102. In addition, the
virtual cooling infrastructure 102 and the input source 130 may
form part of the same or different computing device.
[0023] The data inputted from or through the input source 130 may
include, for instance, workload demand inputs (heat loads), cooling
system component descriptions, workload constraints, cooling system
component constraints, etc. The data may also include costs, which
may be economic and/or environmental costs, associated with cooling
the heat loads generated in performing the workloads. The virtual
cooling infrastructure 102 may utilize the data as the data is
received or may store the data in a data store 140, which may
comprise a combination of volatile and non-volatile memory, such as
DRAM, EEPROM, MRAM, flash memory, and the like. In addition, or
alternatively, the data store 140 may comprise a device configured
to read from and write to a removable media, such as, a floppy
disk, a CD-ROM, a DVD-ROM, or other optical or magnetic media.
[0024] The input source 130 may also comprise one or more
apparatuses configured to detect one or more conditions, such as,
temperature, pressure, airflow characteristics, power consumption,
etc. In addition, or alternatively, the input source 130 may
comprise a database that stores historical data pertaining to the
one or more conditions. In addition or alternatively, the input
source 130 may comprise software and/or hardware configured to
model or predict one or more environmental conditions. In any
event, the virtual cooling infrastructure 102 may utilize the one
or more detected conditions in creating logical representations of
the heat loads 125 and the cooling system components 120.
[0025] The virtual cooling infrastructure 102 may output data
pertaining to the determined capacity outputs. In addition, or
alternatively, the virtual cooling infrastructure 102 may output
instructions for implementing the determined capacity outputs to an
output 150. The output 150 may comprise, for instance, a display
configured to display the determined capacity outputs, a fixed or
removable storage device on which the determined capacity outputs
are stored, a connection to a network over which the identified set
of components may be communicated, a connection to one or more of
the cooling system components 120, a connection to one or more
machines that generate the heat loads 125, etc.
[0026] Various operations that the demand manager 104, the service
operator 106, and the capacity manager 108 are operable to perform
will be described with respect to the following process diagrams
200 and 220 respectively depicted in FIGS. 2A and 2B. It should be
understood that the process diagrams 200 and 220 may include
additional elements and that some of the elements described herein
may be removed and/or modified without departing from respective
scopes of the process diagrams 200 and 220.
[0027] Turning first to FIG. 2A, there is shown a process diagram
200 of the demand manager 104, according to an example. As shown
therein, the demand manager 104 receives heat load constraints 202
and demand inputs 204. In addition, the demand manager 104 outputs
demand outputs/capacity inputs 206.
[0028] The heat load constraints 202 may include, for instance,
criticalities of the workloads that generate the heat loads 125,
provisions set forth in a service level agreement (SLA),
infrastructure capacity, etc. The provisions set forth in an SLA
may include security requirements, uptime requirements, delivery
dates, etc., of one or more of the workloads.
[0029] The demand inputs 204 may include, for instance,
characteristics of the machines that generate the heat loads 125,
characteristics of the workloads that are performed to generate the
heat loads 125, etc. The characteristics of the machines that
generate the heat loads 125 may include cooling load requirements
of the heat loads 125 generated during performance of current
and/or future workloads, placements of the heat loads 125 in a
structure, durations of the heat loads 125, the costs associated
with the cooling load requirements, etc. The characteristics of the
workloads that generate the heat loads 125 may include, for
instance, the resource requirements for performing the workloads,
the types of workloads to be performed, etc.
[0030] In one regard, the demand manager 104 is configured to
forecast how the heat loads 125 are likely to change with time, for
instance, based upon historical workload trends. In another regard,
the demand manager 104 is configured to implement a recovery plan
in the event that one or more of the cooling system components 120
and/or the machines that generate the heat loads 125 fail.
[0031] The demand manager 104 is configured to process the heat
load constraints 202 and the demand inputs 204 to determine at
least one demand output 206. The at least one demand output 206 may
include, for instance, a cooling load estimate of the heat loads
125, locations of the heat loads 125, the estimated durations of
the heat loads 125, costs, which may include either or both of
economic and environmental costs, associated with deploying the
machines, which generate the heat loads 125, zone designations of
the heat loads 125, thermal management limits, etc. As discussed
with respect to FIG. 2B, the demand outputs 206 are equivalent to
the capacity inputs 206 that are inputted into the service operator
106.
[0032] According to an example, the demand manager 104 is
configured to convert the demand inputs into cooling loads and the
physical locations where the cooling loads are going to be needed.
The demand manager 104 is thus configured to translate the heat
load 125 demand into actual cooling load demand. In addition, the
demand manager 104 is configured to determine costs, which may
include either or both of economic and environmental costs,
associated with the actual cooling load demand, while remaining
within the thermal management limits of the cooling system
components 120.
[0033] With respect now to FIG. 2B, there is shown a process
diagram 220 of the service operator 106 and the capacity manager
108, according to an example. As shown therein, the capacity
manager 108 receives cooling system inputs 222. The cooling system
inputs 222 may include, for instance, descriptions of the cooling
system components 120, descriptions of the resources that the
cooling system components 120 require to operate, an operating cost
function of the cooling system components 120, etc. The
descriptions of the cooling system components 120 may comprise the
physical descriptions of the cooling system components 120, such
as, the available capacities, the maximum capacities, run times,
reliabilities, etc. The descriptions of the resources may include,
for instance, descriptions of power, heat, water, airflow, etc.,
that the cooling system components 120 require during their
operations. The operating cost function may include, for instance,
a determination of the economic impact of operating the cooling
system components 120 overtime. In addition, the operating cost
function may be in monetary terms or in terms of environmental
impact, such as, exergy, carbon footprint, etc.
[0034] The capacity manager 108 is further configured to allocate
cooling resources from the specific cooling system components 120
based upon the cooling loads determined by the demand manager 104
and as conveyed as the capacity inputs 206, or vice versa. In other
words, the capacity manager 108 is configured to determine
operating levels for the cooling system components 120 to
adequately cool the heat loads 125 while staying within the heat
load constraints 202 and other constraints, such as, capacity
limitations, of the cooling system components 120. Alternatively,
the capacity manager 108 is configured to determine the placement
and/or magnitudes of the heat loads 125 while staying within
operational limits of the cooling system components.
[0035] As also shown in FIG. 2B, the service operator 106 receives
the demand outputs/capacity inputs 206 from the demand manager 104,
which may have been determined as discussed above with respect to
the workflow diagram 200. In addition, the service operator 106
receives the cooling resource allocation determined by the capacity
manager 108. Generally speaking, the service operator 106 is
configured to map out the demand outputs/capacity inputs 206 to the
cooling resource allocation determined by the capacity manager 108,
or to map out the cooling resource allocation to the demand
outputs/capacity inputs 206. In other words, the service operator
106 works with the capacity manager 108 to provide the capacity
allocation, zone identification, power estimate, COP estimate, TCO,
utilization, etc., of the cooling resources supplied by the cooling
system components 120.
[0036] The service operator 106 thus operates in a relatively more
intelligent manner as compared with conventional localized cooling
system controllers because the service operator 106 factors
considerations that have relevance to a broader range of machines
that generate the heat loads 125 and cooling system components 120.
Moreover, the service operator 106 monitors the operations of the
machines that generate the heat loads 125 and the cooling system
components 120 to substantially ensure that one or more policies
are being maintained. In one respect, this monitoring function
performed by the service operator 106 enables the demand manager
104 and the capacity manager 108 to perform the functions described
herein without having to also perform the monitoring function.
[0037] In addition, the service operator 106 is programmed to
operate with an understanding that the cooling resources provided
by the cooling system components 120 are limited and may thus
prioritize the order in which the workloads are performed to also
prioritize the order in which the heat loads 125 are generated.
More particularly, the service operator 106 negotiates the
prioritization of the workloads based upon a plurality of inputs
and constraints and the capacities of the cooling system components
120. In one regard, the service operator 106 is able to perform
these negotiations because it receives global information
pertaining to the capacities of the cooling system components 120
and the heat load 125 demands.
[0038] The capacity outputs 224 may include, for instance,
allocation of capacity utilization among the cooling system
components 120, identification of zones associated with the cooling
system components 120, estimation of power consumed by the cooling
system components 120, calculation of the coefficient of
performance (COP) of the cooling system components 120, calculation
of the total cost of ownership (TCO) in implementing the cooling
system components 120, calculation of the utilization of the
cooling system components 120, etc.
[0039] Generally speaking, the service operator 106 is configured
to determine placement of the heat loads 125, for instance, which
of the machines are to receive which workloads, and to map
resources supplied by the cooling system components 120 according
to a prioritized arrangement. Alternatively, the service operator
106 is configured to determine resources supplied by the cooling
system components 120 and to map placement of the heat loads 125
according to a prioritized arrangement. By way of example, if the
service operator 106 requires a capacity of 50 kW to cool a number
of heat loads 125, the service operator 106 queries the capacity
manager 108 to determine whether 50 kW of capacity is available.
The capacity manager 108 determines whether there is 50 kW of
available capacity and responds to the service operator 106. If the
capacity manager 108 responds that 50 kW of capacity is
unavailable, the service operator 108 attempts to determine another
allocation of workload and cooling resources in order to perform
the workload while remaining within the available cooling resource
capacity limitations.
[0040] In another example, when a fault occurs in one or more of
the cooling system components 120, such that the capacity of the
cooling system components 120 is reduced, the service operator 106
is configured to inform the demand manager 104 of the reduction in
cooling resources. In this example, the demand manager 104 may
determine which of the heat loads 125 are to be reduced to mitigate
potential damages caused by the reduction in available cooling
resources.
[0041] Turning now to FIG. 3, there is shown a facility
architecture 300 employing the virtual cooling infrastructure 102
depicted in FIG. 1, according to an example. It should be
understood that the facility architecture 300 may include
additional elements and that some of the elements described herein
may be removed and/or modified without departing from a scope of
the facility architecture 300.
[0042] As shown in FIG. 3, the facility architecture 300 includes
an integrated structure manager 302, a workload manager 304, a
system manager 306, and a facility manager 308. The integrated
structure manager 302 is configured to supply the virtual cooling
infrastructure 102 with information pertaining to various policies
that the virtual cooling infrastructure 102 is intended to follow.
The policies may include, for instance, provisions set forth in a
service level agreement (SLA), power usage goals, workload
performance goals, etc.
[0043] The system manager 306 receives workload information on the
heat loads 125 and forwards the heat load information to the demand
manager 104 of the virtual cooling infrastructure 102. The system
manager 306 also receives information pertaining to desired
utilization of power levels for machines that generate the heat
loads 125 from the integrated structure manager 302. The facility
manager 308 receives cooling resource information from the cooling
system components 120, such as, the level of capacity remaining in
the cooling system components 120. The facility manager 308 also
receives power usage information from power delivery devices 310
configured to supply power to the cooling system components 120.
The facility manager 308 forwards this information to the capacity
manager 108 of the virtual cooling infrastructure 102.
[0044] As discussed above, the demand manager 104 estimates the
cooling load required by the heat loads 125 and the capacity
manager 108 allocates cooling resources to the heat loads 125 based
upon the available capacities of the cooling system components 120,
while remaining within the capacity limitations of the cooling
system components 120. In addition, or alternatively, the capacity
manager 108 allocates cooling resources first and the demand
manager 104 allocates heat loads 125 based upon the allocated
cooling resources. In any regard, the service operator 106 is
configured to monitor the heat loads 125 and the cooling resource
provisioning to substantially ensure that various policies are
being met.
[0045] As further shown in FIG. 3, the virtual cooling
infrastructure 102 may communicate instructions to the facility
manager 308 to vary operations of the cooling system components 120
based upon various factors, including, for instance, allocation of
the cooling resources (capacity), utilization levels, coefficient
of performance (COP), etc. In addition, the virtual cooling
infrastructure 102 may also communicate information pertaining to
service handling, for instance, passage of a service from one
component of an infrastructure to another, to the facility manager
308.
[0046] The virtual cooling infrastructure 102 also communicates
information pertaining to various metrics and cooling resource
allocation zones to the integrated structure manager 302. The
various metrics may include, for instance, cooling load estimates,
workload locations, workload durations, zones of workload
placement, thermal management limits, cost of deployment, etc. In
addition, the integrated structure manager 302 may forward this
information to the workload manager 304, which is configured to
control placement of workloads that generates the heat loads
125.
[0047] In addition, or alternatively, although not shown, the
virtual cooling infrastructure 102 may be implemented as a single
overlay in an integrated cooling management system.
[0048] With reference now to FIG. 4, there is shown a flow diagram
of a method 400 of managing a virtual cooling infrastructure 102 to
efficiently allocate cooling resources, according to an example. It
should be apparent to those of ordinary skill in the art that the
method 400 represents a generalized illustration and that other
steps may be added or existing steps may be removed, modified or
rearranged without departing from a scope of the method 400.
[0049] The description of the method 400 is made with reference to
the cooling provisioning system 100 illustrated in FIG. 1, and thus
makes reference to the elements cited therein. It should, however,
be understood that the method 400 is not limited to the elements
set forth in the cooling provisioning system 100. Instead, it
should be understood that the method 400 may be practiced by a
system having a different configuration than that set forth in the
system 100.
[0050] As shown in FIG. 4, at step 402, in the demand manager 104,
logical descriptions of a plurality of heat loads 125 are created.
In addition, at step 404, cooling load demands of the heat loads
125 are determined.
[0051] At step 406, in the capacity manager 108, logical
descriptions of a plurality of cooling system components 120
configured to supply cooling resources to cool the heat loads 125
are created. In addition, at step 408, the capacity manager 108 is
configured to identify capacity limitations of the cooling system
components 120. Moreover, at step 410, the capacity manager 108 may
allocate the cooling resources based upon the cooling load demands
determined by the demand manager 104 within the capacity
limitations of the cooling system components 120.
[0052] At step 412, in the service operator 106, the cooling
resources of the cooling system components 120 are mapped to the
cooling load demands of the heat loads 125. Alternatively, at step
412, in the service operator 106, the cooling load demands of the
heat loads 125 are mapped to the cooling resources of the cooling
system components 120. The step of mapping may include either of
these mapping operations. In addition, at step 414, the service
operator 106 may receive policy constraints and at step 416, may at
least one of prioritize the placement of the heat loads 125 and
modify the mapping of the cooling resources based upon the policy
constraints. Prioritization of the placement of the heat loads 125
may comprise, for instance, determining which machines are to be
operated and thus generate the heat loads 125 are and when the
machines are to be operated and thus generate the heat loads
125.
[0053] At step 418 the virtual cooling infrastructure 102 may
output data pertaining to the mapping of the cooling resources,
data pertaining to the placement of the heat loads 125, data
pertaining to the costs associated with the placement of the heat
loads 125 and the cooling resource allocations, etc. In addition,
or alternatively, at step 418, the virtual cooling infrastructure
102 may output instructions to one or more of the machines that
generate the heat loads 125 and the cooling system components 120
to implement the mapping of the cooling resources, the heat load
125 placement determinations, etc.
[0054] Although not explicitly depicted in FIG. 4, the demand
manager 104 may further determine costs associated with cooling the
heat loads 125 and the service operator 106 may determine whether
one or more policy constraints are maintainable based upon the
costs determined by the demand manager 104.
[0055] Some or all of the operations set forth in the method 400
may be contained as a utility, program, or subprogram, in any
desired computer accessible medium. In addition, the method 400 may
be embodied by a computer program, which can exist in a variety of
forms both active and inactive. For example, they may exist as
software program(s) comprised of program instructions in source
code, object code, executable code or other formats. Any of the
above may be embodied on a computer readable medium.
[0056] Exemplary computer readable storage devices include
conventional computer system RAM, ROM, EPROM, EEPROM, and magnetic
or optical disks or tapes. Exemplary computer readable signals,
whether modulated using a carrier or not, are signals that a
computer system hosting or running the computer program can be
configured to access, including signals downloaded through the
Internet or other networks. Concrete examples of the foregoing
include distribution of the programs on a CD ROM or via Internet
download. In a sense, the Internet itself, as an abstract entity,
is a computer readable medium. The same is true of computer
networks in general. It is therefore to be understood that any
electronic device capable of executing the above-described
functions may perform those functions enumerated above.
[0057] FIG. 5 illustrates a block diagram of a computing apparatus
500 configured to implement or execute the virtual cooling
infrastructure 102 depicted in FIG. 1, according to an example. In
this respect, the computing apparatus 500 may be used as a platform
for executing one or more of the functions described hereinabove
with respect to the virtual cooling infrastructure 102.
[0058] The computing apparatus 500 includes a processor 502 that
may implement or execute some or all of the steps described in the
method 400. Commands and data from the processor 502 are
communicated over a communication bus 504. The computing apparatus
500 also includes a main memory 506, such as a random access memory
(RAM), where the program code for the processor 502, may be
executed during runtime, and a secondary memory 508. The secondary
memory 508 includes, for example, one or more hard disk drives 510
and/or a removable storage drive 512, representing a floppy
diskette drive, a magnetic tape drive, a compact disk drive, etc.,
where a copy of the program code for the method 400 may be
stored.
[0059] The removable storage drive 510 reads from and/or writes to
a removable storage unit 514 in a well-known manner. User input and
output devices may include a keyboard 516, a mouse 518, and a
display 520. A display adaptor 522 may interface with the
communication bus 504 and the display 520 and may receive display
data from the processor 502 and convert the display data into
display commands for the display 520. In addition, the processor(s)
502 may communicate over a network, for instance, the Internet,
LAN, etc., through a network adaptor 524.
[0060] It will be apparent to one of ordinary skill in the art that
other known electronic components may be added or substituted in
the computing apparatus 500. It should also be apparent that one or
more of the components depicted in FIG. 5 may be optional (for
instance, user input devices, secondary memory, etc.).
[0061] What has been described and illustrated herein is a
preferred embodiment of the invention along with some of its
variations. The terms, descriptions and figures used herein are set
forth by way of illustration only and are not meant as limitations.
Those skilled in the art will recognize that many variations are
possible within the scope of the invention, which is intended to be
defined by the following claims--and their equivalents--in which
all terms are meant in their broadest reasonable sense unless
otherwise indicated.
* * * * *