KR101261354B1 - Method of controlling virtualization based cpu cooling and computing apparatus performing the same - Google Patents

Method of controlling virtualization based cpu cooling and computing apparatus performing the same Download PDF

Info

Publication number
KR101261354B1
KR101261354B1 KR1020120021477A KR20120021477A KR101261354B1 KR 101261354 B1 KR101261354 B1 KR 101261354B1 KR 1020120021477 A KR1020120021477 A KR 1020120021477A KR 20120021477 A KR20120021477 A KR 20120021477A KR 101261354 B1 KR101261354 B1 KR 101261354B1
Authority
KR
South Korea
Prior art keywords
cpu
temperature
power consumption
cooling fan
speed
Prior art date
Application number
KR1020120021477A
Other languages
Korean (ko)
Inventor
임성수
오진수
이호림
Original Assignee
국민대학교산학협력단
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 국민대학교산학협력단 filed Critical 국민대학교산학협력단
Priority to KR1020120021477A priority Critical patent/KR101261354B1/en
Priority to PCT/KR2012/009080 priority patent/WO2013129754A1/en
Application granted granted Critical
Publication of KR101261354B1 publication Critical patent/KR101261354B1/en

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/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
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • 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/3215Monitoring of peripheral devices
    • 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/451Execution arrangements for user interfaces
    • 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/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • 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)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Cooling Or The Like Of Electrical Apparatus (AREA)

Abstract

PURPOSE: A virtualization-based CPU(Central Processing Unit) cooling method and a computing apparatus for the same are provided to efficiently cool down a CPU through a regression analysis-based power model considering a thermal effect. CONSTITUTION: A management virtual machine(132) includes a CPU monitoring module(210), a power model management module(220), a CPU cooler monitoring module(230), and a management module(240). The CPU monitoring module monitors the temperature of a specific CPU(112). The control module(220) provides a proper power model about power consumption by a CPU cooler(114) and performance improvement of the specific CPU through CPU cooling. The cooler monitoring module monitors the speed of the CPU cooler. The management module provides an interface of the management virtual machine for monitoring or controlling the CPU and the CPU cooler. [Reference numerals] (114) CPU cooler; (132) Management virtual machine; (210) CPU monitoring module; (220) Control module; (230) Cooler monitoring module; (240) Management module

Description

가상화 기반의 CPU 쿨링 제어 방법 및 이를 수행하는 컴퓨팅 장치{METHOD OF CONTROLLING VIRTUALIZATION BASED CPU COOLING AND COMPUTING APPARATUS PERFORMING THE SAME}TECHNICAL FIELD [0001] The present invention relates to a virtualization-based CPU cooling control method, and a computing device performing the virtualization-based CPU cooling control method.

본 출원은 CPU 쿨링 제어 기술에 관한 것으로, 보다 상세하게는, 효율적인 CPU 쿨링을 통해서 전력 소모량을 감소시킬 수 있는 가상화 기반의 CPU 쿨링 제어 방법 및 이를 수행하는 컴퓨팅 장치에 관한 것이다.
The present invention relates to a CPU cooling control technique, and more particularly, to a virtualization-based CPU cooling control method capable of reducing power consumption through efficient CPU cooling and a computing device performing the method.

CPU(Central Processing Unit) 쿨링은 발열로 인한 성능 저하를 방지하기 위하여 수행되는 것으로, CPU 쿨러를 사용한다. CPU 쿨러는 CPU에 제공되는 전원이 아닌 다른 전원을 통해 구동되며, CPU 쿨링이 필요없는 경우에도 동작될 수 있다.CPU (Central Processing Unit) cooling is performed in order to prevent performance degradation due to heat generation, and a CPU cooler is used. The CPU cooler is powered by a power source other than the power supplied to the CPU, and can be operated even when CPU cooling is not required.

최근 컴퓨팅 장치는 가상화를 도입하여 단일의 물리 장치상에 적어도 하나의 가상 머신을 구축하고 있다. 여기에서, 단일의 물리 장치는 적어도 하나의 CPU를 포함할 수 있다.Recently, computing devices have introduced virtualization to build at least one virtual machine on a single physical device. Here, a single physical device may include at least one CPU.

한국공개특허 제10-2001-0011151호는 응답 속도가 빠른 열전 모듈을 씨피유 냉각 소자로 활용하여 씨피유가 고출력 모드로 동작하여 온도가 급격히 상승할 경우에도 이를 신속하게 냉각시킬 수 있도록 하는 씨피유 냉각 장치 및 방법을 개시한다.Korean Patent Laid-Open Publication No. 10-2001-0011151 discloses a cube-oil cooling device that uses a thermoelectric module with a high response speed as a cube-cooling device so that the cube oil operates in a high output mode and can rapidly cool the temperature even when the temperature rises sharply. / RTI >

한국공개특허 제10-2004-0052010호는 팬 커버를 솔더링 등과 같은 방법으로 히트파이프에 일체화시킴으로써 방열면적을 극대화할 수 있는 전자칩 냉각장치를 개시한다.
Korean Patent Laid-Open No. 10-2004-0052010 discloses an electronic chip cooling apparatus capable of maximizing a heat radiation area by integrating a fan cover with a heat pipe by a method such as soldering.

한국특허공개 제10-2001-0011151호Korean Patent Publication No. 10-2001-0011151 한국공개특허 제10-2004-0052010호Korean Patent Publication No. 10-2004-0052010

본 출원은 효율적인 CPU 쿨링을 통해서 전력 소모량을 감소시킬 수 있는 가상화 기반의 CPU 쿨링 제어 방법 및 이를 수행하는 컴퓨팅 장치를 제공하고자 한다. 예를 들어, 본 출원은 CPU 쿨링에 의한 성능 증가와 CPU 쿨러에 의한 전력 소모 간의 적절한 협정(trade off)를 제공할 수 있다.The present invention provides a virtualization-based CPU cooling control method capable of reducing power consumption through efficient CPU cooling and a computing device performing the method. For example, the present application can provide a proper tradeoff between increased performance due to CPU cooling and power consumption by the CPU cooler.

본 출원은 회귀 분석(regression analysis) 기반의 열적 효과를 고려한 전력 모델을 통해서 효율적 CPU 쿨링을 제공할 수 있는 가상화 기반의 CPU 쿨링 제어 방법 및 이를 수행하는 컴퓨팅 장치를 제공하고자 한다.
The present application provides a virtualization-based CPU cooling control method capable of providing efficient CPU cooling through a power model considering thermal effects based on regression analysis, and a computing device performing the method.

실시예들 중에서, 가상화 기반의 CPU 쿨링 제어 방법은 적어도 하나의 CPU(Central Processing Unit) 및 쿨링 팬으로 구현된 CPU 쿨러를 포함하는 컴퓨팅 장치에 의하여 운영되는 적어도 하나의 가상화 머신 중 하나인 관리 가상 머신에서 수행된다. 상기 방법은 (a) 특정 CPU에서 열적 효과로 인한 전력 소모가 발생하지 않으면 상기 특정 CPU에 대응하는 쿨링 팬의 속도를 낮추는 단계 및 (b) 상기 특정 CPU의 온도가 CPU 쓰로틀링(throttling) 온도에 일정 범위 이내로 접근하면 상기 쿨링 팬의 속도 높임으로 인한 전력 소모를 방지하는 것보다 상기 CPU 쓰로틀링을 방지하는 것에 우선순위를 부여하는 단계를 포함한다.Among the embodiments, the virtualization-based CPU cooling control method includes a management virtual machine (CPU) that is one of at least one virtual machine operated by a computing device including at least one CPU (Central Processing Unit) and a CPU cooler implemented as a cooling fan Lt; / RTI > The method comprises the steps of: (a) lowering the speed of the cooling fan corresponding to the specific CPU if power consumption due to a thermal effect does not occur in a specific CPU, and (b) if the temperature of the specific CPU is lower than the CPU throttling temperature And prioritizing the prevention of CPU throttling rather than preventing power consumption due to the speed increase of the cooling fan when approaching within a certain range.

일 실시예에서, 상기 (a) 단계는 상기 특정 CPU의 온도가 상기 열적 효과로 인한 전력 소모가 발생하는 온도에 해당하는 제1 임계치 온도 이하이면 상기 쿨링 팬의 속도를 일정 속도만큼 낮추는 단계를 더 포함할 수 있다. In one embodiment, the step (a) further includes lowering the speed of the cooling fan by a predetermined speed when the temperature of the specific CPU is lower than a first threshold temperature corresponding to a temperature at which power consumption due to the thermal effect occurs, .

상기 (b) 단계는 상기 특정 CPU의 온도가 CPU 쓰로틀링(CPU throttling) 온도와 연관된 제2 임계치 온도 이상이면 상기 쿨링 팬의 속도를 일정 속도만큼 높이는 단계를 더 포함할 수 있다. 상기 제2 임계치 온도는 상기 CPU 쓰로틀링 온도로부터 일정 온도 이하에 해당할 수 있다.The step (b) may further include increasing the speed of the cooling fan by a predetermined speed if the temperature of the specific CPU is equal to or higher than a second threshold temperature associated with a CPU throttling temperature. The second threshold temperature may correspond to a temperature less than a predetermined temperature from the CPU throttling temperature.

상기 (b) 단계는 상기 특정 CPU의 온도가 상기 제2 임계치 온도를 미만이면 상기 쿨링 팬의 속도 높임으로 인한 전력 소모량(이하, 제1 전력 소모량)과 상기 열적 효과로 인한 전력 소모량(이하, 제2 전력 소모량)을 측정하는 단계를 더 포함할 수 있다. 상기 (b) 단계는 상기 제1 전력 소모량이 상기 제2 전력 소모량보다 높지 않다면 상기 쿨링 팬의 속도를 상기 일정 속도만큼 높이는 단계를 더 포함할 수 있다. 상기 (b) 단계는 상기 제1 전력 소모량이 상기 제2 전력 소모량보다 높다면 상기 쿨링 팬의 이전 속도를 유지하는 단계를 더 포함할 수 있다.Wherein the step (b) comprises: if the temperature of the specific CPU is less than the second threshold temperature, the power consumption due to the speed increase of the cooling fan (hereinafter referred to as the first power consumption) and the power consumption due to the thermal effect 2 < / RTI > power consumption). The step (b) may further include increasing the speed of the cooling fan by the predetermined speed if the first power consumption is not higher than the second power consumption. The step (b) may further include maintaining the previous speed of the cooling fan if the first power consumption is higher than the second power consumption.

일 실시예에서, 상기 열적 효과로 인한 전력 소모가 발생하는 온도와 상기 CPU 쓰로틀링 온도는 상기 특정 CPU에 대하여 미리 결정될 수 있다.In one embodiment, the temperature at which power consumption due to the thermal effect occurs and the CPU throttling temperature may be predetermined for the particular CPU.

상기 방법은 쿨링 효과를 확인할 수 있도록 일정 시간 경과 후 상기 (a) 단계 및 상기 (b) 단계를 반복하는 단계를 더 포함할 수 있다.The method may further include repeating the steps (a) and (b) after a predetermined time elapses so that the cooling effect can be confirmed.

실시예들 중에서, 가상화 기반의 CPU 쿨링 제어를 수행하는 컴퓨팅 장치는 적어도 하나의 CPU(Central Processing Unit) 및 쿨링 팬으로 구현된 CPU 쿨러를 포함하고, 적어도 하나의 가상화 머신 중 하나인 관리 가상 머신을 운영하여 가상화 기반의 CPU 쿨링 제어를 수행한다. 상기 컴퓨팅 장치는 (a) 특정 CPU에서 열적 효과로 인한 전력 소모가 발생하지 않으면 상기 특정 CPU에 대응하는 쿨링 팬의 속도를 낮추고, (b) 상기 특정 CPU의 온도가 CPU 쓰로틀링(throttling) 온도에 접근하면 상기 쿨링 팬의 속도 높임으로 인한 전력 소모를 방지하는 것보다 상기 CPU 쓰로틀링을 방지하는 것에 우선순위를 부여한다.Among the embodiments, a computing device that performs virtualization-based CPU cooling control includes at least one CPU (Central Processing Unit) and a CPU cooler implemented as a cooling fan, and the management virtual machine, which is one of at least one virtual machine, And executes CPU cooling control based on virtualization. (B) if the temperature of the specific CPU is lower than the throttling temperature of the CPU; and (c) if the power consumption of the specific CPU is lower than the predetermined threshold, The priority is given to prevent CPU throttling rather than to prevent power consumption due to the speed increase of the cooling fan.

실시예들 중에서, 컴퓨팅 장치는 적어도 하나의 가상화 머신 중 하나인 관리 가상 머신을 운영하는 적어도 하나의 CPU(Central Processing Unit) 및 상기 적어도 하나의 CPU에 대응하고 쿨링 팬으로 구현된 적어도 하나의 CPU 쿨러를 포함하고, 상기 관리 가상 머신은 (a) 특정 CPU에서 열적 효과로 인한 전력 소모가 발생하지 않으면 상기 특정 CPU에 대응하는 쿨링 팬의 속도를 낮추고, (b) 상기 특정 CPU의 온도가 CPU 쓰로틀링(throttling) 온도에 접근하면 상기 쿨링 팬의 속도 높임으로 인한 전력 소모를 방지하는 것보다 상기 CPU 쓰로틀링을 방지하는 것에 우선순위를 부여하는 가상화 기반의 CPU 쿨링 제어를 수행한다.
In one embodiment, the computing device comprises at least one central processing unit (CPU) operating a management virtual machine, which is one of at least one virtual machine, and at least one CPU cooler corresponding to the at least one CPU and implemented as a cooling fan Wherein the management virtual machine lowers the speed of a cooling fan corresponding to the specific CPU if power consumption due to a thermal effect does not occur in a specific CPU, and (b) based CPU cooling control that prioritizes preventing the CPU from throttling rather than preventing power consumption due to the speed increase of the cooling fan when the temperature of the cooling fan approaches the throttling temperature.

본 출원의 가상화 기반의 CPU 쿨링 제어 방법 및 이를 수행하는 컴퓨팅 장치는 효율적인 CPU 쿨링을 통해서 전력 소모량을 감소시킬 수 있다.The virtualization-based CPU cooling control method and the computing device performing the virtualization-based method of the present application can reduce power consumption through efficient CPU cooling.

본 출원의 가상화 기반의 CPU 쿨링 제어 방법 및 이를 수행하는 컴퓨팅 장치는 컴퓨팅 장치의 전력 효율과 성능을 함께 향상시킬 수 있다.
The virtualization-based CPU cooling control method and the computing device performing the virtualization-based application of the present application can improve both the power efficiency and the performance of the computing apparatus.

도 1은 개시된 기술의 일 실시예에 따른 가상화 기반의 컴퓨팅 장치를 설명하는 블록도이다.
도 2는 도 1에 있는 관리 가상 머신을 설명하는 블록도이다.
도 3은 도 1에 있는 관리 가상 머신에 의한 가상화 기반의 CPU 쿨링 제어 과정을 설명하는 흐름도이다.
1 is a block diagram illustrating a virtualization-based computing device in accordance with one embodiment of the disclosed technology.
2 is a block diagram illustrating the management virtual machine of FIG.
FIG. 3 is a flowchart illustrating a virtualization-based CPU cooling control process performed by the management virtual machine shown in FIG.

개시된 기술에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 개시된 기술의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 개시된 기술의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 개시된 기술에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The description of the disclosed technique is merely an example for structural or functional explanation and the scope of the disclosed technology should not be construed as being limited by the embodiments described in the text. That is, the embodiments are to be construed as being variously embodied and having various forms, so that the scope of the disclosed technology should be understood to include equivalents capable of realizing technical ideas. Also, the purpose or effect of the disclosed technology should not be construed as being limited thereby, as it does not mean that a particular embodiment must include all such effects or merely include such effects.

한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.Meanwhile, the meaning of the terms described in the present application should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.The terms "first "," second ", and the like are intended to distinguish one element from another, and the scope of the right should not be limited by these terms. For example, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is to be understood that when an element is referred to as being "connected" to another element, it may be directly connected to the other element, but there may be other elements in between. On the other hand, when an element is referred to as being "directly connected" to another element, it should be understood that there are no other elements in between. On the other hand, other expressions that describe the relationship between components, such as "between" and "between" or "neighboring to" and "directly adjacent to" should be interpreted as well.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.It should be understood that the singular " include "or" have "are to be construed as including a stated feature, number, step, operation, component, It is to be understood that the combination is intended to specify that it does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In each step, the identification code (e.g., a, b, c, etc.) is used for convenience of explanation, the identification code does not describe the order of each step, Unless otherwise stated, it may occur differently from the stated order. That is, each step may occur in the same order as described, may be performed substantially concurrently, or may be performed in reverse order.

개시된 기술은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한, 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The disclosed technique may be embodied as computer readable code on a computer readable recording medium, and the computer readable recording medium may include any type of recording device that stores data that can be read by a computer system . Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and also implemented in the form of a carrier wave (for example, transmission over the Internet) . In addition, the computer-readable recording medium may be distributed over network-connected computer systems so that computer readable codes can be stored and executed in a distributed manner.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 개시된 기술이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
All terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the disclosed technology belongs, unless otherwise defined. Commonly used predefined terms should be interpreted to be consistent with the meanings in the context of the related art and can not be interpreted as having ideal or overly formal meaning unless explicitly defined in the present application.

도 1은 개시된 기술의 일 실시예에 따른 가상화 기반의 컴퓨팅 장치를 설명하는 블록도이다.1 is a block diagram illustrating a virtualization-based computing device in accordance with one embodiment of the disclosed technology.

도 1을 참조하면, 가상화 기반의 컴퓨팅 장치(100)는 적어도 하나의 CPU(Central Processing unit)(112)와 CPU 쿨러(114)를 포함하는 CPU 풀(110), 메모리(120) 및 적어도 하나의 가상 머신(130)을 포함한다.1, a virtualization-based computing device 100 includes a CPU pool 110 including at least one central processing unit (CPU) 112 and a CPU cooler 114, a memory 120, and at least one And a virtual machine 130.

CPU 풀(110)은 적어도 하나의 CPU(112)와 CPU 쿨러(114)를 포함하고, 운영체제 등에 의하여 할당 또는 반납되는 자원에 해당한다. 예를 들어, 특정 작업이 많은 연산량을 요구하면 운영체제는 특정 작업에 상대적으로 많은 수의 CPU를 할당할 수 있고, 특정 작업이 적은 연산량을 요구하면 운영체제는 특정 작업에 상대적으로 적은 수의 CPU를 할당할 수 있다. 한편, 여기에서, CPU 쿨러(114)는 쿨링 팬으로 구현되고, 해당 CPU(112)의 발열에 따라 쿨링 팬의 속도는 제어될 수 있다. 이러한 쿨링 팬의 제어는 도 2 및 도 3을 참조하여 설명한다.The CPU pool 110 includes at least one CPU 112 and a CPU cooler 114, and corresponds to a resource allocated or returned by an operating system or the like. For example, if a particular task requires a large amount of computation, the operating system may allocate a relatively large number of CPUs to a particular task, and if a particular task requires a small amount of computation, the operating system may allocate a relatively small number of CPUs can do. Here, the CPU cooler 114 is implemented as a cooling fan, and the speed of the cooling fan can be controlled in accordance with the heat generated by the CPU 112. The control of this cooling fan will be described with reference to Figs. 2 and 3. Fig.

메모리(120)는 적어도 하나의 CPU(112) 간의 통신 또는 적어도 하나의 CPU(112)와 다른 장치 간의 통신을 위한 공유 메모리 또는 적어도 하나의 CPU(112)에 의한 데이터 저장을 위한 로컬 메모리로서 사용될 수 있다. 일 실시예에서, 메모리(120)는 휘발성 메모리, 비휘발성 메모리 또는 이들의 조합으로 구현될 수 있다.The memory 120 may be used as a local memory for data storage by at least one CPU 112 or shared memory or at least one CPU 112 for communication between at least one CPU 112 and another device have. In one embodiment, the memory 120 may be implemented as volatile memory, non-volatile memory, or a combination thereof.

적어도 하나의 가상 머신(130)은 컴퓨팅 장치(100)에 의하여 운영되는 소프트웨어로 구현될 수 있다. 적어도 하나의 가상 머신(140) 각각은 사용자의 입장에서 별개의 물리적인 장치로 인식될 수 있고, 적어도 하나의 가상 머신(140) 중 하나는 CPU 쿨링을 제어하는 관리 가상 머신(132)에 해당한다. 즉, 관리 가상 머신(132)는 적어도 하나의 가상 머신(140) 중 하나에 해당하고, CPU 쿨러(120)에 있는 쿨링 팬의 속도를 제어한다.
At least one virtual machine 130 may be implemented in software operated by the computing device 100. Each of the at least one virtual machine 140 may be recognized as a separate physical device from the user's perspective and one of the at least one virtual machine 140 corresponds to a managed virtual machine 132 that controls CPU cooling . That is, the management virtual machine 132 corresponds to one of the at least one virtual machine 140 and controls the speed of the cooling fan in the CPU cooler 120.

도 2는 도 1에 있는 관리 가상 머신을 설명하는 블록도이다.2 is a block diagram illustrating the management virtual machine of FIG.

도 2를 참조하면, 관리 가상 머신(132)은 CPU 모니터링 모듈(210), 전력모델 관리모듈(220), CPU 쿨러 모니터링 모듈(230) 및 관리 모듈(240)을 포함한다.Referring to FIG. 2, the management virtual machine 132 includes a CPU monitoring module 210, a power model management module 220, a CPU cooler monitoring module 230, and a management module 240.

CPU 모니터링 모듈(210)은 특정 CPU(112a)에서 발생하는 온도를 모니터링한다. 일 실시예에서, 온도는 특정 CPU(112a)에 내장된 센서 또는 외부에 장착된 센서를 통해서 측정될 수 있고, CPU 모니터링 모듈(210)은 해당 센서를 통해 특정 CPU(112a)에서 발생하는 온도를 인식할 수 있다.The CPU monitoring module 210 monitors the temperature generated by the specific CPU 112a. In one embodiment, the temperature may be measured through a sensor embedded in a particular CPU 112a or an externally mounted sensor, and the CPU monitoring module 210 may determine the temperature generated by the particular CPU 112a via the sensor Can be recognized.

제어 모듈(220)은 CPU 쿨링에 의한 특정 CPU(112a)의 성능 증가와 CPU 쿨러(114)에 의한 전력 소모 간의 적절한 전력모델을 제시한다. 보다 상세하게, 제어 모듈(220)은 회귀 분석(regression analysis) 기반의 열적 효과를 고려한 전력 모델을 통해서 효율적인 CPU 쿨링을 수행할 수 있는 전력모델을 제시한다. 이를 위하여, 제어 모듈(220)은 세 가지의 자료구조를 관리할 수 있다. 제1 자료구조는 적어도 하나의 CPU(112) 각각의 제1 임계치 온도에 관한 정보를 관리하는데 사용되고, 제2 자료구조는 적어도 하나의 CPU(112) 각각의 현재 온도에 따른 전력 소모량에 관한 정보를 관리하는데 사용되며, 제3 자료구조는 적어도 하나의 CPU 쿨러(114)에 있는 쿨링 팬의 속도에 따른 전력소모량에 관한 정보를 관리하는데 사용된다. 제1 내지 제3 자료구조들 모두는 정적인 테이블들에 해당할 수 있고, 제1 임계치 온도, 현재 온도에 따른 전력 소모량 및 쿨링 팬에 따른 전력 thahfifd은 특정 CPU(112a)에 대하여 미리 결정될 수 있다.The control module 220 presents an appropriate power model between increased performance of the particular CPU 112a by CPU cooling and power consumption by the CPU cooler 114. [ More specifically, the control module 220 provides a power model capable of performing efficient CPU cooling through a power model that considers thermal effects based on regression analysis. To this end, the control module 220 can manage three data structures. The first data structure is used for managing information on the first threshold temperature of each of the at least one CPU 112 and the second data structure is used for managing information about the power consumption according to the current temperature of each of the at least one CPU 112 And the third data structure is used to manage information about the power consumption of the at least one CPU cooler 114 in accordance with the speed of the cooling fan. All of the first to third data structures may correspond to static tables, and the first threshold temperature, the power consumption according to the current temperature, and the power thahfifd according to the cooling fan may be predetermined for the specific CPU 112a .

쿨러 모니터링 모듈(230)은 특정 CPU 쿨러(114a)의 속도를 모니터링한다. 일 실시예에서, 쿨러 모니터링 모듈(230)은 쿨링 팬에 의하여 소모되는 전력소모량을 기초로 특정 CPU 쿨러(114a)의 속도를 모니터링할 수 있다.The cooler monitoring module 230 monitors the speed of the specific CPU cooler 114a. In one embodiment, the cooler monitoring module 230 may monitor the speed of a particular CPU cooler 114a based on the power consumption consumed by the cooling fan.

관리 모듈(240)은 CPU(112)와 CPU 쿨러(114)를 모니터링하거나 또는 제어하기 위하여 관리 가상 머신(132)에 대한 인터페이스를 제공한다. 즉, 관리 모듈(240)은 특정 CPU(112a)의 온도나 특정 CPU 쿨러(114a)의 속도를 알아내는 인터페이스의 역할을 수행할 수 있고, 특정 CPU 쿨러(114a)의 속도를 제어하는 인터페이스의 역할을 수행할 수 있다.The management module 240 provides an interface to the management virtual machine 132 for monitoring or controlling the CPU 112 and the CPU cooler 114. That is, the management module 240 can serve as an interface for determining the temperature of the specific CPU 112a or the speed of the specific CPU cooler 114a, and serves as an interface for controlling the speed of the specific CPU cooler 114a Can be performed.

이하, 도 3을 참조하여, 관리 가상 머신(132)에 의한 가상화 기반의 CPU 쿨링 제어 과정을 설명한다.
Hereinafter, a virtualization-based CPU cooling control process performed by the management virtual machine 132 will be described with reference to FIG.

도 3은 도 1에 있는 관리 가상 머신에 의한 가상화 기반의 CPU 쿨링 제어 과정을 설명하는 흐름도이다.FIG. 3 is a flowchart illustrating a virtualization-based CPU cooling control process performed by the management virtual machine shown in FIG.

도 3에서, 제어 모듈(220)은 CPU 쿨링 효과를 확인하기 위하여 특정 시간(예를 들어, 5분) 동안 대기한다(단계 S310). 일 실시예에서, 특정 시간은 고정될 수 있다. 이러한 고정은 쿨링 제어 과정을 주기적으로 수행되도록 할 수 있다. 다른 일 실시예에서, 특정 시간은 가변될 수 있다. 이러한 가변은 특정 CPU(112a)의 온도 변화폭을 기초로 결정될 수 있다. 예를 들어, 온도 변화폭이 특정 임계치(예를 들어, 20도) 이상이면 제어 모듈(220)은 즉각적으로 대기를 멈출 수 있다.In Figure 3, the control module 220 waits for a certain amount of time (e.g., five minutes) to confirm the CPU cooling effect (step S310). In one embodiment, the specific time may be fixed. Such fixing can cause the cooling control process to be performed periodically. In another embodiment, the specific time may be variable. Such a variable can be determined based on the temperature variation range of the specific CPU 112a. For example, if the temperature change range is greater than or equal to a certain threshold value (e.g., 20 degrees), the control module 220 can immediately stop the standby.

제어 모듈(220)은 CPU 모니터링 모듈(210)로부터 특정 CPU(112a)의 현재 온도를 얻을 수 있다(단계 S315). 일 실시예에서, CPU 모니터링 모듈(210)은 관리 모듈(240)를 통해서 적어도 하나의 CPU(112)에 대한 온도를 계속해서 측정할 수 있고, 제어 모듈(220)의 요구에 따라 특정 CPU(112a)에 대한 현재 온도를 제공할 수 있다. 여기에서, CPU 모니터링 모듈(210)은 적어도 하나의 CPU(112) 각각을 위한 현재 온도 테이블을 유지할 수 있다. 다른 일 실시예에서, CPU 모니터링 모듈(210)은 제어 모듈(220)의 요구에 따라 특정 CPU(112a)의 현재 온도를 측정한 후 특정 CPU(112a)의 현재 온도를 제공할 수 있다.The control module 220 can obtain the current temperature of the specific CPU 112a from the CPU monitoring module 210 (step S315). In one embodiment, the CPU monitoring module 210 can continuously measure the temperature for at least one CPU 112 via the management module 240 and can determine the temperature of the particular CPU 112a ) ≪ / RTI > Here, the CPU monitoring module 210 can maintain the current temperature table for each of the at least one CPU 112. [ In another embodiment, the CPU monitoring module 210 may measure the current temperature of the particular CPU 112a according to the request of the control module 220 and then provide the current temperature of the particular CPU 112a.

제어 모듈(220)은 특정 CPU(112a)의 현재 온도가 특정 CPU(112a)에서 열적 효과(thermal effect)로 인한 전력 소모가 발생하는 온도(이하, 제1 임계치 온도)를 초과하는지 여부를 결정한다(단계 S320). 즉, 제어 모듈(220)은 특정 CPU(112a)에서 열적 효과로 인한 전력 소모가 발생하는지 여부를 결정한다. 일 실시예에서, 제어 모듈(220)은 적어도 하나의 CPU(112) 각각에 대한 제1 임계치 온도를 관리할 수 있고, 특정 CPU(112a)의 현재 온도가 수신되면 특정 CPU(112a)의 현재 온도와 특정 CPU(112a)의 제1 임계치 온도를 비교할 수 있다.The control module 220 determines whether or not the current temperature of the specific CPU 112a exceeds a temperature at which power consumption due to a thermal effect occurs in the specific CPU 112a (hereinafter referred to as a first threshold temperature) (Step S320). That is, the control module 220 determines whether power consumption due to the thermal effect occurs in the specific CPU 112a. In one embodiment, the control module 220 may manage a first threshold temperature for each of the at least one CPU 112, and when the current temperature of the particular CPU 112a is received, the current temperature of the particular CPU 112a And the first threshold temperature of the specific CPU 112a.

한편, 단계 S315 및 S316과 다른 실시예로서, CPU 모니터링 모듈(210)은 적어도 하나의 CPU(112) 각각에 대한 제1 임계치 온도를 관리할 수 있고, 관리 모듈(240)를 통해서 특정 CPU(112a)의 현재 온도를 얻어서 특정 CPU(112a)의 현재 온도와 특정 CPU(112a)의 제1 임계치 온도를 비교할 수 있다. 다음으로, CPU 모니터링 모듈(210)은 특정 CPU(112a)의 현재 온도가 특정 CPU(112a)의 제1 임계치 온도를 초과하면 제어 모듈(220)에 이러한 초과 정보를 통지할 수 있다.The CPU monitoring module 210 may manage the first threshold temperature for each of the at least one CPU 112 and may control the CPU 112a through the management module 240. For example, ) To compare the current temperature of the particular CPU 112a with the first threshold temperature of the particular CPU 112a. Next, the CPU monitoring module 210 can notify the control module 220 of this excess information when the current temperature of the specific CPU 112a exceeds the first threshold temperature of the specific CPU 112a.

제어 모듈(220)은 특정 CPU(112a)의 현재 온도가 특정 CPU(112a)의 제1 임계치 온도를 초과하지 않으면 관리 모듈(240)를 통해서 특정 CPU(112a)에 대응하는 CPU 쿨러(114a)에 있는 쿨링 팬의 속도를 낮춘다(단계 S325). 일 실시예에서, 제어 모듈(220)은 쿨링 팬의 속도를 일정 속도(예를 들어, 100 RPM)만큼 낮출 수 있다. 쿨러 모니터링 모듈(230)은 관리 모듈(240)를 통해서 쿨링 팬의 속도가 낮추어졌는지 여부를 모니터링하여 쿨링 팬의 속도 변경 여부를 결정한다(단계 S380). 일 실시예에서, 쿨러 모니터링 모듈(230)은 쿨링 팬에 의하여 소모되는 전력소모량을 기초로 쿨링 팬의 속도 변경 여부를 결정할 수 있다.The control module 220 controls the CPU cooler 114a corresponding to the specific CPU 112a via the management module 240 if the current temperature of the specific CPU 112a does not exceed the first threshold temperature of the specific CPU 112a Thereby lowering the speed of the cooling fan (step S325). In one embodiment, the control module 220 may lower the speed of the cooling fan by a certain rate (e.g., 100 RPM). The cooler monitoring module 230 monitors whether the speed of the cooling fan is lowered through the management module 240 to determine whether the speed of the cooling fan is changed (step S380). In one embodiment, the cooler monitoring module 230 may determine whether to change the speed of the cooling fan based on the amount of power consumed by the cooling fan.

결과적으로, 상기의 단계들 S320 및 S325에서, 제어 모듈(220)은 특정 CPU(112a)에서 열적 효과로 인한 전력 소모가 발생하지 않으면 특정 CPU(112a)에 대응하는 쿨링 팬의 속도를 낮춘다.As a result, in the above-described steps S320 and S325, the control module 220 lowers the speed of the cooling fan corresponding to the specific CPU 112a if power consumption due to the thermal effect does not occur in the specific CPU 112a.

제어 모듈(220)은 특정 CPU(112a)의 현재 온도가 특정 CPU(112a)의 제1 임계치 온도를 초과하면 특정 CPU(112a)의 현재 온도가 CPU 쓰로틀링(throttling) 온도에 일정 범위 이내(이하, 제2 임계치 온도)로 접근하는지 여부를 결정한다(단계 S330). 예를 들어, 일정 범위는 5도에 해당할 수 있고, 이러한 일정 범위는 CPU 쓰로틀링이 발생하는 것을 방지하기 위하여 설정될 수 있다. 여기에서, CPU 쓰로틀링은 동적 주파수 스케일링(dynamic voltage scaling)으로 알려져 있으며, 전력을 보전하거나 해당 CPU에 의하여 생성된 열량을 감소시키기 위하여 CPU의 주파수가 자동적으로 조절되는 기술을 의미한다.When the current temperature of the specific CPU 112a exceeds the first threshold temperature of the specific CPU 112a, the control module 220 determines that the current temperature of the specific CPU 112a is within a certain range of the CPU throttling temperature , The second threshold temperature) (step S330). For example, a certain range may correspond to 5 degrees, and such a range may be set to prevent CPU throttling from occurring. Here, CPU throttling is known as dynamic voltage scaling, which means that the frequency of the CPU is automatically adjusted to conserve power or reduce the amount of heat generated by the CPU.

제어 모듈(220)은 특정 CPU(112a)의 현재 온도가 제2 임계치 온도 이상이면 관리 모듈(240)를 통해서 특정 CPU(112a)에 대응하는 CPU 쿨러(114a)에 있는 쿨링 팬의 속도를 높인다(단계 S335). 일 실시예에서, 제어 모듈(220)은 쿨링 팬의 속도를 일정 속도(예를 들어, 100 RPM)만큼 높일 수 있다. 쿨러 모니터링 모듈(230)은 관리 모듈(240)를 통해서 쿨링 팬의 속도가 높아졌는지 여부를 모니터링하여 쿨링 팬의 속도 변경 여부를 결정한다(단계 S380). The control module 220 increases the speed of the cooling fan in the CPU cooler 114a corresponding to the specific CPU 112a through the management module 240 when the current temperature of the specific CPU 112a is equal to or higher than the second threshold temperature Step S335). In one embodiment, the control module 220 may increase the speed of the cooling fan by a certain rate (e.g., 100 RPM). The cooler monitoring module 230 monitors whether the speed of the cooling fan is increased through the management module 240 and determines whether the speed of the cooling fan is changed (step S380).

제어 모듈(220)은 특정 CPU(112a)의 현재 온도가 제2 임계치 온도 미만이면열적 효과로 인한 특정 CPU(112a)의 전력소모량과 특정 CPU 쿨러(114a)의 전력 소모량(즉, 쿨링 팬의 속도 높임으로 인한 전력 소모량)을 측정한다(단계 S340). 특정 CPU(112a)의 전력소모량은 CPU 모니터링 모듈(210)에 의하여 측정된 현재 온도를 기초로 결정될 수 있다. 특정 CPU 쿨러(114a)의 전력 소모량은 쿨러 모니터링 모듈(230)에 의하여 측정될 수 있다.The control module 220 determines that the current temperature of the specific CPU 112a is lower than the second threshold temperature and the power consumption of the specific CPU 112a due to the thermal effect and the power consumption of the specific CPU cooler 114a The power consumption due to the increase) is measured (step S340). The power consumption of the specific CPU 112a may be determined based on the current temperature measured by the CPU monitoring module 210. [ The power consumption of the specific CPU cooler 114a may be measured by the cooler monitoring module 230. [

제어 모듈(220)은 특정 CPU 쿨러(114a)의 전력 소모량이 특정 CPU(112a)의 전력소모량보다 높은지 여부를 결정한다(단계 S350). 그렇다면, 제어 모듈(220)은 특정 CPU 쿨러(114a)에 있는 쿨링 팬의 속도를 유지한다(단계 S360). 그렇지 않다면, 제어 모듈(220)은 특정 CPU 쿨러(114a)에 있는 쿨링 팬의 속도를 높인다(단계 S355).The control module 220 determines whether the power consumption of the specific CPU cooler 114a is higher than the power consumption of the specific CPU 112a (step S350). If so, the control module 220 maintains the speed of the cooling fan in the particular CPU cooler 114a (step S360). Otherwise, the control module 220 increases the speed of the cooling fan in the particular CPU cooler 114a (step S355).

결과적으로, 상기의 단계들 S330, S340, S350 및 S360에서, 제어 모듈(220)은 특정 CPU(112a)의 온도가 CPU 쓰로틀링 온도에 일정 범위 이내로 접근하면 특정 쿨러(114a)에 있는 쿨링 팬의 속도 높임으로 인한 전력 소모를 방지하는 것보다 CPU 쓰로틀링을 방지하는 것에 우선순위를 부여한다.As a result, in the above-described steps S330, S340, S350, and S360, when the temperature of the specific CPU 112a approaches the CPU throttling temperature within a certain range, the control module 220 determines that the temperature of the cooling fan in the specific cooler 114a Priority is given to preventing CPU throttling rather than preventing power consumption due to speed up.

한편, 단계 S380에서, 쿨링 팬의 속도 변경이 실패하면, 제어 모듈(220)은 쿨링 팬의 속도가 최대 또는 최소인지 여부를 결정한다(단계 S365). 그렇다면, 제어 모듈(220)은 특정 CPU 쿨러(114a)에 있는 쿨링 팬의 속도를 유지하고(단계 S360), 그렇지 않다면, 제어 모듈(220)은 쿨링 팬의 속도를 다시 제어하고(단계 S370) 쿨링 팬의 속도 변경이 성공하였는지 여부를 결정한다(단계 S380).On the other hand, if the speed change of the cooling fan fails in step S380, the control module 220 determines whether the speed of the cooling fan is the maximum or the minimum (step S365). If so, the control module 220 maintains the speed of the cooling fan in the particular CPU cooler 114a (step S360), otherwise the control module 220 controls the speed of the cooling fan again (step S370) It is determined whether or not the speed change of the fan has succeeded (step S380).

한편, 상기의 단계들 S310 내지 S380은 쿨링 효과를 확인할 수 있도록 단계S310에서 제시된 일정 시간 경과 후 반복된다.
The above steps S310 to S380 are repeated after a predetermined time period shown in step S310 so that the cooling effect can be confirmed.

상기에서는 본 출원의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 출원의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 출원을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made to the present invention without departing from the spirit and scope of the present invention as set forth in the following claims It can be understood that

100: 가상화 기반의 컴퓨팅 장치
110: CPU 풀 112: CPU(Central Processing unit
114: CPU 쿨러 120: 메모리
130: 적어도 하나의 가상 머신
100: Virtualization-based computing devices
110: CPU pool 112: CPU (Central Processing unit
114: CPU cooler 120: Memory
130: At least one virtual machine

Claims (11)

적어도 하나의 CPU(Central Processing Unit) 및 쿨링 팬으로 구현된 CPU 쿨러를 포함하는 컴퓨팅 장치에 의하여 운영되는 적어도 하나의 가상화 머신 중 하나인 관리 가상 머신에서 수행되는 가상화 기반의 CPU 쿨링 제어 방법에 있어서,
(a) 특정 CPU에서 열적 효과로 인한 전력 소모가 발생하지 않으면 상기 특정 CPU에 대응하는 쿨링 팬의 속도를 낮추는 단계; 및
(b) 상기 특정 CPU의 온도가 CPU 쓰로틀링(throttling) 온도에 일정 범위 이내로 접근하면 상기 쿨링 팬의 속도 높임으로 인한 전력 소모를 방지하는 것보다 상기 CPU 쓰로틀링을 방지하는 것에 우선순위를 부여하는 단계를 포함하는 가상화 기반의 CPU 쿨링 제어 방법.
A virtualization-based CPU cooling control method performed in a management virtual machine, which is one of at least one virtualization machine operated by a computing device including at least one CPU (Central Processing Unit) and a CPU cooler implemented as a cooling fan,
(a) lowering the speed of the cooling fan corresponding to the specific CPU if power consumption due to a thermal effect does not occur in a specific CPU; And
(b) when the temperature of the specific CPU approaches the CPU throttling temperature within a certain range, priority is given to preventing the CPU from being throttled rather than preventing power consumption due to the speed increase of the cooling fan A virtualization-based CPU cooling control method.
제1항에 있어서, 상기 (a) 단계는
상기 특정 CPU의 온도가 상기 열적 효과로 인한 전력 소모가 발생하는 온도에 해당하는 제1 임계치 온도 이하이면 상기 쿨링 팬의 속도를 일정 속도만큼 낮추는 단계를 더 포함하는 것을 특징으로 하는 가상화 기반의 CPU 쿨링 제어 방법.
The method of claim 1, wherein step (a)
Further comprising the step of lowering the speed of the cooling fan by a predetermined speed when the temperature of the specific CPU is lower than a first threshold temperature corresponding to a temperature at which power consumption due to the thermal effect occurs, Control method.
제2항에 있어서, 상기 (b) 단계는
상기 특정 CPU의 온도가 CPU 쓰로틀링(CPU throttling) 온도와 연관된 제2 임계치 온도 이상이면 상기 쿨링 팬의 속도를 일정 속도만큼 높이는 단계를 더 포함하는 것을 특징으로 하는 가상화 기반의 CPU 쿨링 제어 방법.
3. The method of claim 2, wherein step (b)
And increasing the speed of the cooling fan by a predetermined speed when the temperature of the specific CPU is equal to or higher than a second threshold temperature associated with the CPU throttling temperature.
제3항에 있어서, 상기 제2 임계치 온도는
상기 CPU 쓰로틀링 온도로부터 일정 온도 이하에 해당하는 것을 특징으로 하는 가상화 기반의 CPU 쿨링 제어 방법.
4. The method of claim 3, wherein the second threshold temperature
Wherein the CPU-throttling temperature is lower than a predetermined temperature from the CPU throttling temperature.
제3항에 있어서, 상기 (b) 단계는
상기 특정 CPU의 온도가 상기 제2 임계치 온도를 미만이면 상기 쿨링 팬의 속도 높임으로 인한 전력 소모량(이하, 제1 전력 소모량)과 상기 열적 효과로 인한 전력 소모량(이하, 제2 전력 소모량)을 측정하는 단계를 더 포함하는 것을 특징으로 하는 가상화 기반의 CPU 쿨링 제어 방법.
4. The method of claim 3, wherein step (b)
(Hereinafter, referred to as a first power consumption amount) due to the speed increase of the cooling fan and a power consumption amount (hereinafter referred to as a second power consumption amount) due to the thermal effect when the temperature of the specific CPU is less than the second threshold temperature Wherein the virtualization-based CPU cooling control method further comprises:
제5항에 있어서, 상기 (b) 단계는
상기 제1 전력 소모량이 상기 제2 전력 소모량보다 높지 않다면 상기 쿨링 팬의 속도를 상기 일정 속도만큼 높이는 단계를 더 포함하는 것을 특징으로 하는 가상화 기반의 CPU 쿨링 제어 방법.
6. The method of claim 5, wherein step (b)
And increasing the speed of the cooling fan by the predetermined speed if the first power consumption is not higher than the second power consumption.
제6항에 있어서, 상기 (b) 단계는
상기 제1 전력 소모량이 상기 제2 전력 소모량보다 높다면 상기 쿨링 팬의 이전 속도를 유지하는 단계를 더 포함하는 것을 특징으로 하는 가상화 기반의 CPU 쿨링 제어 방법.
7. The method of claim 6, wherein step (b)
And maintaining the previous speed of the cooling fan if the first power consumption is higher than the second power consumption.
제1항에 있어서, 상기 열적 효과로 인한 전력 소모가 발생하는 온도와 상기 CPU 쓰로틀링 온도는
상기 특정 CPU에 대하여 미리 결정된 것을 특징으로 하는 가상화 기반의 CPU 쿨링 제어 방법.
2. The method of claim 1, wherein the temperature at which power consumption due to the thermal effect occurs and the CPU throttling temperature
Wherein the predetermined CPU is determined in advance for the specific CPU.
제1항에 있어서,
쿨링 효과를 확인할 수 있도록 일정 시간 경과 후 상기 (a) 단계 및 상기 (b) 단계를 반복하는 단계를 더 포함하는 것을 특징으로 하는 가상화 기반의 CPU 쿨링 제어 방법.
The method according to claim 1,
Further comprising repeating the steps (a) and (b) after a lapse of a predetermined time so as to confirm the cooling effect.
적어도 하나의 CPU(Central Processing Unit) 및 쿨링 팬으로 구현된 CPU 쿨러를 포함하고, 적어도 하나의 가상화 머신 중 하나인 관리 가상 머신을 운영하여 가상화 기반의 CPU 쿨링 제어를 수행하는 컴퓨팅 장치에 있어서, 상기 컴퓨팅 장치는
(a) 특정 CPU에서 열적 효과로 인한 전력 소모가 발생하지 않으면 상기 특정 CPU에 대응하는 쿨링 팬의 속도를 낮추고,
(b) 상기 특정 CPU의 온도가 CPU 쓰로틀링(throttling) 온도에 접근하면 상기 쿨링 팬의 속도 높임으로 인한 전력 소모를 방지하는 것보다 상기 CPU 쓰로틀링을 방지하는 것에 우선순위를 부여하는 컴퓨팅 장치.
1. A computing device for performing virtualization-based CPU cooling control by operating a management virtual machine including at least one central processing unit (CPU) and a CPU cooler implemented as a cooling fan, the computing virtual machine being one of at least one virtual machine, The computing device
(a) if power consumption due to a thermal effect does not occur in a specific CPU, the speed of the cooling fan corresponding to the specific CPU is lowered,
(b) prioritizing preventing CPU throttling rather than preventing power consumption due to speeding up of the cooling fan when the temperature of the particular CPU approaches a CPU throttling temperature.
적어도 하나의 가상화 머신 중 하나인 관리 가상 머신을 운영하는 적어도 하나의 CPU(Central Processing Unit); 및
상기 적어도 하나의 CPU에 대응하고 쿨링 팬으로 구현된 적어도 하나의 CPU 쿨러를 포함하고,
상기 관리 가상 머신은 (a) 특정 CPU에서 열적 효과로 인한 전력 소모가 발생하지 않으면 상기 특정 CPU에 대응하는 쿨링 팬의 속도를 낮추고, (b) 상기 특정 CPU의 온도가 CPU 쓰로틀링(throttling) 온도에 접근하면 상기 쿨링 팬의 속도 높임으로 인한 전력 소모를 방지하는 것보다 상기 CPU 쓰로틀링을 방지하는 것에 우선순위를 부여하는 가상화 기반의 CPU 쿨링 제어를 수행하는 컴퓨팅 장치.
At least one central processing unit (CPU) operating a management virtual machine which is one of at least one virtual machine; And
And at least one CPU cooler corresponding to the at least one CPU and implemented as a cooling fan,
The management virtual machine lowers the speed of the cooling fan corresponding to the specific CPU if the power consumption due to the thermal effect does not occur in the specific CPU, (b) the temperature of the specific CPU is lower than the CPU throttling temperature Based CPU cooling control that prioritizes prevention of CPU throttling rather than preventing power consumption due to an increase in speed of the cooling fan.
KR1020120021477A 2012-02-29 2012-02-29 Method of controlling virtualization based cpu cooling and computing apparatus performing the same KR101261354B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020120021477A KR101261354B1 (en) 2012-02-29 2012-02-29 Method of controlling virtualization based cpu cooling and computing apparatus performing the same
PCT/KR2012/009080 WO2013129754A1 (en) 2012-02-29 2012-10-31 Method for virtualization-based control of cpu cooling, and computing apparatus for performing same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120021477A KR101261354B1 (en) 2012-02-29 2012-02-29 Method of controlling virtualization based cpu cooling and computing apparatus performing the same

Publications (1)

Publication Number Publication Date
KR101261354B1 true KR101261354B1 (en) 2013-05-07

Family

ID=48665601

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120021477A KR101261354B1 (en) 2012-02-29 2012-02-29 Method of controlling virtualization based cpu cooling and computing apparatus performing the same

Country Status (2)

Country Link
KR (1) KR101261354B1 (en)
WO (1) WO2013129754A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220011322A (en) 2020-07-21 2022-01-28 고려대학교 산학협력단 Ambient temperature aware VM allocation method and apparatus for virtualized heterogeneous data centers
US11921554B2 (en) 2021-09-09 2024-03-05 Samsung Electronics Co., Ltd. Apparatus and method for dynamic thermal management using frequency clamping and idle injection

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7334142B2 (en) * 2004-01-22 2008-02-19 International Business Machines Corporation Reducing power consumption in a logically partitioned data processing system with operating system call that indicates a selected processor is unneeded for a period of time
KR100818474B1 (en) * 2005-11-17 2008-04-02 엘지전자 주식회사 Apparatus and method of heat controlling for CPU
US20100030500A1 (en) * 2008-07-29 2010-02-04 Gamal Refai-Ahmed Regulation of Power Consumption for Application-Specific Integrated Circuits
KR101259548B1 (en) * 2008-12-22 2013-04-30 한국전자통신연구원 System and Method for Resource Management base of Virtualization and Computing System for Resource Management base of Virtualization

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220011322A (en) 2020-07-21 2022-01-28 고려대학교 산학협력단 Ambient temperature aware VM allocation method and apparatus for virtualized heterogeneous data centers
US11921554B2 (en) 2021-09-09 2024-03-05 Samsung Electronics Co., Ltd. Apparatus and method for dynamic thermal management using frequency clamping and idle injection

Also Published As

Publication number Publication date
WO2013129754A1 (en) 2013-09-06

Similar Documents

Publication Publication Date Title
KR101813435B1 (en) Energy efficiency aware thermal management in a multi-processor system on a chip
US9297559B2 (en) Adaptive thermoelectric cooling in a processor
KR101700567B1 (en) Intelligent multicore control for optimal performance per watt
US7484108B2 (en) Enhancing power delivery with transient running average power limits
TWI518586B (en) Collaborative processor and system performance and power management
TWI430079B (en) Apparatus, system and method for power management for multiple processor cores
KR101534450B1 (en) System and method for determining thermal management policy from leakage current measurement
TWI513343B (en) Apparatus and system for manging communication link and network connectivity in low power mode
US9411403B2 (en) System and method for dynamic DCVS adjustment and workload scheduling in a system on a chip
TW201600965A (en) Thermally adaptive quality-of-service levels
US8718835B2 (en) Optimized temperature-driven device cooling
US9274585B2 (en) Combined dynamic and static power and performance optimization on data centers
EP2607987A1 (en) Computing apparatus and system for remote control of operating states
US8963465B2 (en) Multi-pressure-quantity fan control system and computer system having the same
US10064141B2 (en) Core frequency/count decision-based thermal mitigation optimization for a multi-core integrated circuit
JP2016513322A (en) Control of power consumption by power supply unit during idle state
KR101261354B1 (en) Method of controlling virtualization based cpu cooling and computing apparatus performing the same
Careglio et al. Hardware Leverages for Energy Reduction in Large‐Scale Distributed Systems
WO2012009879A1 (en) Cassette network device and fan control method thereof
JP2012027655A (en) Information processor and power-saving memory management method
US20140281592A1 (en) Global Efficient Application Power Management
Lefurgy et al. Energy-efficient data centers and systems
JP5138641B2 (en) Power saving data transmission apparatus, method and program
JP2017084013A (en) Electric power management program, electric power management method, and electric power management unit

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170403

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180406

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190423

Year of fee payment: 7