KR20170021864A - 분산 컴퓨터 시스템에 전력 할당의 변화가 있을 때 중단될 수 있고 중단될 수 없는 작업들을 관리하는 방법들 및 장치 - Google Patents

분산 컴퓨터 시스템에 전력 할당의 변화가 있을 때 중단될 수 있고 중단될 수 없는 작업들을 관리하는 방법들 및 장치 Download PDF

Info

Publication number
KR20170021864A
KR20170021864A KR1020177002008A KR20177002008A KR20170021864A KR 20170021864 A KR20170021864 A KR 20170021864A KR 1020177002008 A KR1020177002008 A KR 1020177002008A KR 20177002008 A KR20177002008 A KR 20177002008A KR 20170021864 A KR20170021864 A KR 20170021864A
Authority
KR
South Korea
Prior art keywords
power
computer system
distributed computer
task
tasks
Prior art date
Application number
KR1020177002008A
Other languages
English (en)
Other versions
KR102207050B1 (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 인텔 코포레이션
Publication of KR20170021864A publication Critical patent/KR20170021864A/ko
Application granted granted Critical
Publication of KR102207050B1 publication Critical patent/KR102207050B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • 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/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3209Monitoring remote activity, e.g. over telephone lines or network connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4893Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/06Electricity, gas or water supply
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • H04L41/0833Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for reduction of network energy consumption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/78Architectures of resource allocation
    • H04L47/783Distributed allocation of resources, e.g. bandwidth brokers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/821Prioritising resource allocation or reservation requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/83Admission control; Resource allocation based on usage prediction
    • Y02B60/144
    • 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
    • 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
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them

Abstract

분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인지를 결정하는 동작, 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 중단하는 동작을 포함하는 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능한 명령어들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체가 제시된다.

Description

분산 컴퓨터 시스템에 전력 할당의 변화가 있을 때 중단될 수 있고 중단될 수 없는 작업들을 관리하는 방법들 및 장치{METHODS AND APPARATUS TO MANAGE JOBS THAT CAN AND CANNOT BE SUSPENDED WHEN THERE IS A CHANGE IN POWER ALLOCATION TO A DISTRIBUTED COMPUTER SYSTEM}
관련 출원들에 대한 상호 참조
본 출원은 발명의 명칭이 "SIMPLE POWER-AWARE SCHEDULER TO LIMIT POWER CONSUMPTION BY HPC SYSTEM WITHIN A BUDGET"이고, 2014년 8월 22일에 출원된 이전 미국 가특허 출원 제62/040,576호의 이득을 주장하며, 미국 가특허 출원은 이로써 전체적으로 참조로 포함된다.
본 출원은 발명의 명칭이 "METHODS AND APPARATUS TO ESTIMATE POWER PERFORMANCE OF A JOB THAT RUNS ON MULTIPLE NODES OF A DISTRIBUTED COMPUTER SYSTEM"이고, 2014년 12월 24일에 출원된 미국 특허 출원 제14/582,795호(대리인 사건 번호 42P73498); 발명의 명칭이 "METHOD AND APPARATUS TO GENERATE AND USE POWER, THERMAL AND PERFORMANCE CHARACTERISTICS OF NODES TO IMPROVE ENERGY EFFICIENCY AND REDUCING WAIT TIME FOR JOBS IN THE QUEUE"이고, 2014년 12월 24일에 출원된 미국 특허 출원 제14/582,783호(대리인 사건 번호 42P74562); 발명의 명칭이 "ADJUSTMENT OF EXECUTION OF TASKS"이고, 2014년 12월 24일에 출원된 미국 특허 출원 제14/582,979호(대리인 사건 번호 42P74563); 발명의 명칭이 "CONTROL OF POWER CONSUMPTION"이고, 2014년 12월 24일에 출원된 미국 특허 출원 제14/582,985호(대리인 사건 번호 42P74564); 발명의 명칭이 "FORECAST FOR DEMAND OF ENERGY"이고, 2014년 12월 24일에 출원된 미국 특허 출원 제14/582,988호(대리인 사건 번호 42P74565); 발명의 명칭이 "MANAGING POWER PERFORMANCE OF DISTRIBUTED COMPUTING SYSTEMS"이고, 2014년 12월 24일에 출원된 미국 특허 출원 제14/582,743호(대리인 사건 번호 42P74567); 발명의 명칭이 "PROFILING A JOB POWER AND ENERGY CONSUMPTION FOR A DATA PROCESSING SYSTEM"이고, 2014년 12월 24일에 출원된 미국 특허 출원 제14/582,756호(대리인 사건 번호 42P74568); 및 발명의 명칭이 "A POWER AWARE JOB SCHEDULER AND MANAGER FOR A DATA PROCESSING SYSTEM"이고, 2014년 12월 24일에 출원된 미국 특허 출원 제14/582,764호(대리인 사건 번호 42P74569)에 관한 것이다.
기술분야
본 개시내용의 실시예들은 일반적으로 컴퓨터 시스템들에서 전력 보존의 분야에 관한 것이다. 특히, 본 개시내용의 일 실시예는 분산 컴퓨터 시스템에 전력 할당의 변화가 있을 때 분산 컴퓨터 시스템의 작업들을 관리하는 것에 관한 것이다.
분산 컴퓨터 시스템은 작업으로 언급되는 계산 할당을 실행하기 위해 다수의 노드들의 동시 사용에 의해 병렬 컴퓨팅을 수행할 수 있다. 각각의 노드는 하나 이상의 프로세서들, 메모리, 운영 체제, 및 하나 이상의 입력/출력(input/output)(I/O) 구성요소들을 포함할 수 있다. 노드들은 고속 네트워크 패브릭을 통해 서로 통신할 수 있고 공유 파일 시스템들 또는 스토리지를 사용할 수 있다. 작업은 수천의 노드들을 통해 분산되는 수천의 병렬 작업들로 분할될 수 있다. 이러한 노드들은 1초에 수백 번 서로 동기화될 수 있다.
장래의 분산 컴퓨터 시스템들은 수십 메가와트의 전력을 요구하도록 기획되어, 그들의 전력 관리를 산업에서 가장 중요한 관심사가 되게 한다. 이러한 분산 컴퓨터 시스템들은 제한된 전력 및 에너지 수지들을 갖는 엑사스케일 성능을 산출하는 것으로 예상될 것이다. 현재 분산 컴퓨터 시스템들은 제한된 전력 및 에너지 수지들을 고수하기 위해 전력 캡핑을 적용할 수 있다. 그러나, 전력 캡핑에 상관없이, 분산 컴퓨터 시스템("시스템")에의 전력 할당은 감소될 수 있어서, 시스템에 의해 소비되는 전력이 시스템에 할당되는 전력을 초과한다.
시스템의 큐 내의 현재 실행하는 작업들, 중단된 작업들 및 새롭게 요청된 작업들의 관리는 시스템의 예상된 성능을 유지하고 시스템에 의해 소비되는 전력이 여전히 시스템에 할당되는 전력보다 미만인 것을 보장할 시에 중요하다. 시스템에 할당되는 전력이 변동됨에 따라, 하나 이상의 현재 실행하는 작업들을 중단 및/또는 종료하고, 하나 이상의 중단된 작업들을 재개하고 및/또는 하나 이상의 새로운 작업들을 이미 큐에서 시작하는 요구가 있을 수 있다. 게다가, 시스템은 특정 타입들의 작업들에 전력 할당에 관한 우선순위들을 고수하도록 요구될 수 있다.
본 발명의 실시예들은 동일한 참조부호들이 유사한 요소들을 지시하는 첨부 도면들의 도해들에서 예로서 예시되고 제한으로서 예시되지 않는다.
도 1은 복수의 입력들을 수신하는 HPC 시스템(100)의 예시적 블록도이다.
도 2는 HPC 시스템(100)을 포함하는 로직의 예시적 블록도이다.
도 3은 시스템에 의해 소비되는 전력이 시스템에 할당되는 전력을 초과할 때 HPC 시스템(100) 내에서 작업들을 관리하는 샘플 방법을 예시하는 흐름도이다.
도 4a 내지 도 4c는 HPC 시스템(100)에 의해 소비되는 전력이 HPC 시스템(100)에 할당되는 전력보다 미만이거나 그 전력과 거의 같을 때 하나 이상의 작업들을 관리하는 방법의 일 실시예를 예시하는 흐름도를 포함한다.
본 개시내용의 다양한 실시예들은 분산 컴퓨터 시스템에 의해 처리되는 작업들("현재 실행하는 작업들"), 분산 컴퓨터 시스템에 의해 중단되는 작업들("중단된 작업들") 및 분산 컴퓨터 시스템의 큐에 배치되는 새롭게 요청된 작업들("새로운 작업들")을 관리하는 것에 관한 것이다. 일 실시예에서, 작업들의 관리는 분산 컴퓨터 시스템이 하나 이상의 작업들을 중단하고 및/또는 종료하기 전에 하나 이상의 작업들에 의해 소비되는 전력을 감소시키려고 시도하는 것을 필요로 할 수 있다. 제2 실시예에서, 작업들의 관리는 분산 컴퓨터 시스템에 할당되는 전력이 감소될 때 분산 컴퓨터 시스템이 하나 이상의 작업들을 중단하고 및/또는 종료하는 것을 필요로 할 수 있다. 부가적으로, 작업들의 관리는 분산 컴퓨터 시스템이 하나 이상의 중단된 작업들을 재개하고 및/또는 하나 이상의 새로운 작업들을 시작하는 것을 허용할 수 있다. 작업들의 관리는 발명의 명칭이 "Methods and apparatus to estimate power performance of a job that runs on multiple nodes of a distributed computer system"인 미국 특허 출원 제14/582,795호(대리인 사건 번호 42P73498)에서 논의된 바와 같이 분산 컴퓨터 시스템에 의해 발생되는 추정값들에 의존할 수 있다. 분산 컴퓨터 시스템은 예를 들어 고성능 컴퓨팅(High Performance Computing)(HPC) 시스템일 수 있다. 본 개시내용의 일부 실시예들에서, 작업은 작업의 소유자에 의해 제시되는 바와 같이 작업에 공급되는 전력을 제한하는 전력 정책을 받을 수 있지만; HPC 시스템은 HPC 시스템에 의해 처리되는 작업드르이 조합에 의해 초과될 수 없는 전체 제한된 전력 수지를 가질 수 있고, 전체 제한된 전력 수지를 가질 가능성이 있다.
본 개시내용의 실시예들은 하나 이상의 현재 작업들이 중단되고 및/또는 종결되는 것을 시스템에 할당되는 전력의 감소가 필요로 하는지를 결정하는 것에 관한 것이다. 본 개시내용의 다른 실시예들은 HPC 시스템이 하나 이상의 중단된 작업들을 재개하고 및/또는 HPC 시스템의 큐에 대기하는 새로운 작업을 시작하는 것을 시스템에 할당되는 전력의 증가, 또는 이용가능 전력의 증가(예를 들어, 작업 완료 처리)가 허용하는지를 결정하는 것에 관한 것이다. 특정 실시예들은 어느 하나 이상의 작업들이 중단되고, 종료되고, 재개되고 및/또는 시작되는지를 결정할 때 HPC 시스템 내에서 특정 작업들 및/또는 작업 타입들의 우선순위들을 결정하는 것에 관한 것이다.
본 개시내용의 일부 실시예들은 시스템에 의해 소비되는 전력이 시스템에 할당되는 전력으로부터 미리 정의된 임계값(예를 들어, 시스템 가드대역) 내에 있을 때 하나 이상의 작업들의 전력 소비가 감소될 수 있는지를 결정하는 것에 관한 것이다. 하나 이상의 작업들에 의해 소비되는 전력은 가능한 한 가장 큰 수의 컴퓨트 노드들을 이용하기 위해 감소될 수 있다. 따라서, 일 실시예에서, 하나 이상의 작업들에 의해 소비되는 전력이 감소될 때, 검색된 전력은 비할당된 전력과 조합되고 새로운 작업을 시작하거나 중단된 작업을 재개하기 위해 사용될 수 있다.
도 1을 참조하면, 다양한 입력들을 수신하는 HPC 시스템의 예시적 블록도가 도시된다. HPC 시스템(100)은 하나 이상의 운영 체제(operating system)(OS) 노드들(101), 하나 이상의 컴퓨트 노드들(102), 하나 이상의 입력/출력(I/O) 노드들(103) 및 스토리지(104)를 포함한다. 고속 패브릭은 OS 노드(101), 컴퓨트 노드들(102) 및 I/O 노드들(103)을 통신 연결한다. 고속 패브릭은 하나 이상의 스위치들을 통해 상호연결되는 노드들의 네트워크 토폴로지일 수 있다. 일 실시예에서, 도 1에 예시된 바와 같이, I/O 노드들(103)은 스토리지(104)에 통신 연결된다. 스토리지(104)는 비영구적 스토리지 예컨대 휘발성 메모리(예를 들어, 임의의 타입의 랜덤 액세스 메모리(random access memory)(RAM)); 영구적 스토리지 예컨대 비휘발성 메모리(예를 들어, 판독 전용 메모리(read-only memory)(ROM), 전력 원조 RAM, 플래시 메모리, 상 변화 메모리 등), 고체 상태 드라이브, 하드 디스크 드라이브, 광 디스크 드라이브, 또는 휴대용 메모리 디바이스일 수 있다.
OS 노드(101)는 컴퓨트 노드들(102)에 액세스하기 위해 게이트웨이를 제공할 수 있다. 예를 들어, 컴퓨트 노드들(102) 상에서 처리하기 위한 작업을 제출하기 전에, 사용자는 OS 노드(101)를 통할 수 있는 HPC 시스템(100)에 로그인하도록 요구될 수 있다. 본 개시내용의 실시예들에서, OS 노드(101)는 사용자들에 의해 제출되는 작업들을 수락하고 컴퓨트 노드들(102)에 의해 처리되는 작업들의 론칭 및 관리를 원조할 수 있다. 일 실시예에서, OS 노드(101)는 발명의 명칭이 "Methods and apparatus to profile power and energy consumption by a job running in multiple nodes and uses shared resources of a distributed computer system(HPC)"인 미국 특허 출원 제14/582,756호(대리인 사건 번호 42P74568)에 설명된 바와 같은 전력 모니터(도시되지 않음); 전력 추정기(도시되지 않음); 및 발명의 명칭이 "Methods and apparatus to generate and use power, thermal and performance characteristics of nodes to improve energy efficiency and reducing wait time for jobs in the queue"인 미국 특허 출원 제14/582,783호(대리인 사건 번호 42P74562)에 설명된 바와 같은 전력 교정기(도시되지 않음)를 포함한다.
일 실시예에서, 컴퓨트 노드들(102)은 대량의 처리 및 계산 능력을 제공한다. I/O 노드들(103)은 입력을 HPC 시스템(100)에 제공하거나 HPC 시스템(100)으로부터 출력을 수신할 수 있는 컴퓨트 노드들(102)과 외부 디바이스들(예를 들어, 개별 컴퓨터들) 사이에 인터페이스를 제공할 수 있다.
시스템 전력 할당(Psys)은 예를 들어 유틸리티 관리 시설(예를 들어, 시스템 관리자 또는 관리 소프트웨어 예컨대 데이터센터 매니저에 의해 결정되는 바와 같음)에 의해 HPC 시스템(100)에 제공될 수 있다. 전형적으로, Psys는 HPC 시스템(100)이 작업들(120) 중 하나 이상을 실행하기 위해 사용하는 HPC 시스템(100)에 할당되는 제한된 양의 전력일 것이다. 작업들(120)은 HPC 시스템(100)으로 하나 이상의 사용자들에 의해 실행되도록 요청되는 하나 이상의 작업들을 포함한다. 각각의 작업은 아래에 상세히 논의되는 "전력 정책"을 포함한다. 전력 정책은 작업을 위한 전력을 할당할 시에 HPC 시스템(100)을 원조하고 HPC 시스템(100)에 의해 실행되는 하나 이상의 작업들(120)의 관리를 도울 것이다.
게다가, 관리 정책들(130)은 HPC 시스템(100)의 동작을 정의하는 지배적인 정책을 제공함으로써 작업들(120)을 실행하는 관리를 안내할 것이다. 관리 정책들(130)에 포함될 수 있는 정책들의 예들은 (1) 모든 하드웨어 및 소프트웨어 자원들의 이용을 최대화하는 것(예를 들어, 보다 소수의 작업들을 높은 전력에서 실행하고 자원들을 비사용된 상태로 방치하는 대신에, 가능한 한 많은 자원들을 사용하기 위해 가능한 한 많은 작업들을 실행함); (2) 전력 제한을 갖지 않는 작업이 모든 실행하는 작업들 중에서 최고 우선순위로 주어지는 것; 및/또는 (3) 중단된 작업들이 재개를 위해 더 높은 우선순위에 있는 것을 포함하지만, 이들에 제한되거나 한정되지 않는다. 그러한 관리 정책들은 HPC 시스템(100)이 하나 이상의 작업들을 스케줄링하고, 론칭하고, 중단하고 재론칭할 수 있는 방식을 지배한다.
전문용어
이하의 설명에서, 특정 전문용어는 본 발명의 특징들을 설명하기 위해 사용된다. 예를 들어, 특정 상황들에서, 용어들 "로직" 및 "엔진" 둘 다는 하나 이상의 기능들을 수행하도록 구성되는 하드웨어, 펌웨어 및/또는 소프트웨어를 나타낸다. 하드웨어로서, 로직(또는 엔진)은 데이터 처리 또는 저장 기능성을 갖는 회로를 포함할 수 있다. 그러한 회로의 예들은 마이크로프로세서, 하나 이상의 프로세서 코어들, 프로그램가능 게이트 어레이, 마이크로컨트롤러, 주문형 집적 회로, 무선 수신기, 송신기 및/또는 송수신기 회로, 반도체 메모리, 또는 조합 로직을 포함할 수 있지만, 이들에 제한되거나 한정되지 않는다.
로직(또는 엔진)은 하나 이상의 소프트웨어 모듈들의 형태인 소프트웨어, 예컨대 실행가능 애플리케이션의 형태인 실행가능 코드, 애플리케이션 프로그래밍 인터페이스(application programming interface)(API), 서브루틴, 함수, 절차, 애플릿, 서블릿, 루틴, 소스 코드, 목적 코드, 공유 라이브러리/동적 로드 라이브러리, 또는 하나 이상의 명령어들일 수 있다. 이러한 소프트웨어 모듈들은 임의의 타입의 적절한 비일시적 저장 매체, 또는 일시적 저장 매체(예를 들어, 전기, 광, 음향 또는 다른 형태의 전파 신호들 예컨대 반송파들, 적외선 신호들, 또는 디지털 신호들)에 저장될 수 있다. 비일시적 저장 매체의 예들은 프로그램가능 회로; 반도체 메모리; 비영구적 스토리지 예컨대 휘발성 메모리(예를 들어, 임의의 타입의 랜덤 액세스 메모리(RAM)); 영구적 스토리지 예컨대 비휘발성 메모리(예를 들어, 판독 전용 메모리(ROM), 전력 원조 RAM, 플래시 메모리, 상 변화 메모리 등), 고체 상태 드라이브, 하드 디스크 드라이브, 광 디스크 드라이브, 또는 휴대용 메모리 디바이스를 포함할 수 있지만, 이들에 제한되거나 한정되지 않는다. 펌웨어로서, 실행가능 코드는 영구적 스토리지에 저장된다.
용어 "전력 감시"는 HPC 시스템을 포함하는 구성요소들 중 하나 이상에 의해 전력 소비를 동적으로 측정하는 것으로서 해석되어야 한다. 취해지는 측정들은 예를 들어, HPC 시스템의 전체 전력 소비에 관한 통계를 제공할 뿐만 아니라, 개별 작업 및/또는 작업들의 그룹에 의해 전력 소비를 산출하기 위해 사용될 수 있다.
용어 "전력 정책"은 주어진 작업을 위해 전력의 할당 및 관리에 관한 안내를 제공하는 HPC 시스템에 제공되는 입력(예를 들어, 하나 이상의 파라미터들)으로서 해석되어야 한다. 입력은 작업 요청 제출의 일부로 제공될 수 있고 및/또는 개별 입력으로(예를 들어, 사용자 인터페이스 스크린 또는 구성 파일을 통해) 제공될 수 있다. 예를 들어, 입력은 다른 것들 중에서, (i) 작업이 전력 제한을 받을 수 있는지, (ii) 작업이 실행될 수 있는 최대 및/또는 최소 전력 및/또는 (iii) 작업을 처리하는 하나 이상의 노드들이 동작할 수 있는 최소 및/또는 최대 주파수를 표시할 수 있다.
용어 "노드"는 적어도, 시스템 메모리 및/또는 하나 이상의 입력/출력(I/O) 구성요소들과 임의로 그룹화되는 하나 이상의 프로세서들로 해석되어야 한다. 하나 이상의 프로세서들, 시스템 메모리 및 하나 이상의 I/O 구성요소들은 명세서 및 청구범위 도처에서 노드의 "구성요소들"로 언급될 수 있다. 명세서 및 청구범위 도처에서, 용어들 "프로세서", "컴퓨터 처리 유닛(computer processing unit)(CPU)", 및 "코어"는 교환가능하게 사용될 것이다.
용어 "작업"은 HPC 시스템 상에 수행되는 미리 결정된 산출들로 해석되어야 한다. 예를 들어, 사용자(예를 들어, 작업의 소유자)는 작업이 HPC에 의해 실행되는 것을 요청할 수 있으며 그것은 사용자가 사용자에 의해 제공되는 입력 파라미터들 및/또는 데이터에 따라 산출들을 수행하는 하나 이상의 컴퓨트 노드들을 갖도록 요청하고 있는 것을 의미한다. 작업 요청은 작업의 처리를 위해 사용되는 하나 이상의 산출들(예를 들어, 애플리케이션)을 지정할 수 있다.
용어 "시스템 전력(Psys)"은 예를 들어 시설 또는 데이터센터 매니저에 의해 HPC 시스템에 제공되는 전력의 양으로 해석되어야 한다. Psys은 HPC 시스템이 임의의 주어진 시간에 하나 이상의 작업들을 할당해야 하는 전체 양의 전력이다.
용어 "가드대역"은 HPC 시스템의 전력 수지의 관리를 원조하기 위해 메커니즘으로 해석되어야 한다. 일 실시예에서, 가드대역은 추가의 전력 할당일 수 있으며, 이 할당은 작업에 할당되는 전력의 미리 결정된 퍼센티지일 수 있다. 예를 들어, HPC 시스템이 작업에 할당하기 위해 3 MW의 전력을 가지면, HPC 시스템은 작업의 전력 소비가 3 MW를 초과하게 하는 산출들에서 스파이크를 방지하기 위해2.8 MW만을 할당하고 가드대역으로서 0.2 MW를 유지할 수 있다. 가드대역의 하나의 목적은 작업에 의한 일관된 전력 소비를 유지하는 것이다.
마지막으로, 본원에 사용되는 바와 같은 용어들 "또는" 및 "및/또는"은 임의의 하나의 또는 임의의 조합을 포함하거나 의미하는 것으로 이해되어야 한다. 따라서, "A, B 또는 C" 또는 "A, B 및/또는 C"는 "이하 중 어느 것: A; B; C; A 및 B; A 및 C; B 및 C; A, B 및 C"를 의미한다. 이러한 정의에 대한 예외는 요소들, 기능들, 단계들 또는 액트들의 조합이 일부 방식에서 본래 상호 배타적일 때에만 발생할 것이다.
본 발명은 고성능 컴퓨팅(HPC) 시스템과 같은 분산 컴퓨터 시스템의 전력 관리를 위해 이용될 수 있다. 특히, 본 개시내용의 실시예들은 HPC 시스템 내에서 노드들의 교정의 결과로서 각각의 작업에 대한 전력 소비의 추정값들에 기초하여 HPC 시스템에 실행되는 하나 이상의 작업들에 전력 할당을 관리하는 것에 관한 것이다. 본 발명은 많은 상이한 형태들의 실시예들에 민감하므로, 본 개시내용은 본 발명의 원리들의 일 예로 간주되도록 의도되고 본 발명을 도시되고 설명되는 특정 실시예들에 제한하도록 의도되지 않는다.
전력 인식 분산 컴퓨터 시스템
도 2를 참조하면, HPC 시스템(100)을 포함하는 로직의 예시적 블록도가 도시된다. 도 2에 예시되는 HPC 시스템(100)의 로직은 HPC 시스템(100)에 대한 전력 관리를 포함하고 전력 인식 작업 스케줄러(211) 및 전력 인식 작업 론처(212)를 포함하는 자원 매니저(210), 교정기(220), 추정기(230), 하나 이상의 작업 매니저들(240)(각각의 작업은 그 자체의 작업 매니저를 가질 것임), 작업(250), 사용자 정책들(205) 및 관리 정책들(130)을 포함한다. 일 실시예에서, 자원 매니저(210) 및 작업 매니저(240)는 작업 전력 데이터를 수집하도록 구성된다.
교정기(220)는 HPC 시스템(100) 내에서 각각의 노드의 전력, 열 방산 및 성능을 교정한다. 교정기(220)는 HPC 시스템(100) 내에서 노드들을 교정하는 복수의 방법들을 제공할 수 있다. 일 실시예에서, 교정기(100)는 HPC 시스템(100) 내의 모든 노드가 샘플 워크로드(예를 들어, 미니 애플리케이션, 애플리케이션의 일부 및/또는 테스트 스크립트)를 실행하는 제1 교정 방법을 제공할 수 있으므로 교정기(220)는 그 중에서도, 각각의 노드에 대한 (1) 평균 전력, (2) 최대 전력, 및 (3) 최소 전력을 결정하기 위해 미리 결정된 시간 간격에 하나 이상의 측정들(예를 들어, 소비되는 전력)을 샘플링할 수 있다. 게다가, 샘플 워크로드는 노드의 모든 동작 주파수에서 각각의 노드 상에 실행될 수 있다. 다른 실시예에서, 교정기(220)는 하나 이상의 노드들의 교정이 작업의 실시간 동안에 발생하는 제2 교정 방법을 제공할 수 있다. 그러한 상황에서, 교정기(220)는 작업이 실행(예를 들어, 처리)되고 있는 하나 이상의 노드들을 샘플링할 수 있다. 제2 방법에서, 교정기(220)는 실제 실시간 동안에 각각의 노드의 전력 측정들을 획득한다.
추정기(230)는 자원 매니저(210)가 하나 이상의 작업 소유자들(예를 들어, 사용자들)에 의해 요청되는 각각의 작업을 효율적으로 스케줄링하고 감시할 수 있게 하는 각각의 작업에 대한 전력 소비의 추정값들을 자원 매니저(210)에 제공한다. 추정기(220)는 예를 들어 교정기 데이터베이스에 저장되는 최대 및 평균 전력 값들에 기초하여 전력 소비 추정값을 제공할 수 있으며, 교정기 데이터베이스는 교정기(220)의 처리에 의해 파퓰레이션된다. 게다가, 각각의 작업을 위해 요구되는 최소 전력이 고려될 수 있다. 전력 소비 추정값을 생성하도록 추정기(230)에 의해 사용될 수 있는 다른 인자들은 작업의 소유자는 작업이 전력 제한을 받는 것을 작업 소유자가 허용하는지, 작업에 공급되는 전력을 제한하는 작업 전력 정책(예를 들어, 작업이 실행되는 미리 결정된 고정 주파수, 작업을 위해 요구되는 최소 전력, 또는 자원 매니저(210)에 의해 결정되는 가변 주파수들 및/또는 공급되는 전력), 작업에 대한 기동 전력, 작업이 실행되는 주파수, HPC 시스템(100)에 대한 이용가능 전력 및/또는 HPC 시스템(100)에 대한 할당된 전력을 포함하지만, 이들에 제한되거나 한정되지 않는다.
사용자(예를 들어, 작업의 소유자)에 의해 요청되는 각각의 작업은 사용자 정책(205)을 동반한다(또한 도 1에 예시됨). 사용자 정책은 적어도 작업(250)이 전력 제한을 받을 수 있는지에 관한 결정, 전력 제한이 허용되면 전력을 제한하는 정책(예를 들어, 고정 주파수, 요구되는 최소 전력, 또는 자원 매니저(210)에 의해 결정되는 가변 주파수 및/또는 전력), 및 작업(250)이 중단될 수 있는지를 포함한다.
일 실시예에서, 전력 인식 작업 스케줄러(211)는 작업에 대한 모드의 선택(예를 들어, 사용자 정책들(205) 내에 포함됨)을 수신하고, 모드에 기초하여 작업에 대한 이용가능 전력을 결정하고 이용가능 전력에 기초하여 작업에 대한 전력을 할당하도록 구성된다. 일 실시예에서, 전력 인식 작업 스케줄러(211)는 이용가능 전력에 기초하여 작업에 대한 균일한 주파수를 결정하도록 구성된다. 일 실시예에서, 전력 인식 작업 스케줄러(211)는 감시된 전력, 추정된 전력, 및 교정된 전력 중 적어도 하나에 기초하여 작업에 대한 이용가능 전력을 결정하도록 구성된다. 전력 인식 작업 스케줄러(211) 및 자원 매니저(210)는 아래에 더 상세히 설명되는 바와 같이, 전력 소비에 관한 정보를 수신하고, 전력 수지를 각각의 작업에 분배하고, 균일한 주파수 메커니즘을 구현하여 전력을 제한하도록 구성된다.
자원 매니저(210)는 수신된 전력 입력들, 예를 들어 사용자 정책들(205) 및 관리 정책들(206)에 기초하여 작업을 스케줄링하고 론칭하기 위해 전력 인식 작업 스케줄러(211) 및 전력 인식 작업 론처(212)를 사용한다. 일 실시예에서, 자원 매니저(210)는 하나 이상의 사용자들이 실행하기를 원하는 상호작용 및 배치 작업들을 위해 컴퓨트 및 I/O 자원들의 할당에 책임이 있는 소프트웨어 객체이다. 전형적으로, 자원 매니저(210)는 또한 작업 큐로부터 작업들을 스케줄링하는 것 및 스케줄링된 바와 같이 실행되는 작업들을 론칭하는 것에 책임이 있다. 작업 매니저(240)는 아래에 더 상세히 설명되는 바와 같이, 작업에 대한 할당된 전력 수지 내에서 벗어나지 않기 위해 작업을 제어하도록 구성된다. 일 실시예에서, 작업 매니저(240)는 작업이 론칭된 후에 하나 이상의 전력 정책들의 제약들 내에서 작업을 동작시키는 것에 책임이 있다. 일 실시예에서, 작업 매니저(240)는 사용자 및/또는 관리자 중 적어도 하나에 의해 지정되는 정책들에 따라 작업의 실행에 수반되는 모든 구성요소들(예를 들어, 노드들, 또는 다른 구성요소들)의 전력 성능을 제어하기 위해 사용된다. 전력 인식 작업 스케줄러(211) 및 작업 매니저(240).
도 3을 참조하면, 시스템에 의해 소비되는 전력이 시스템에 할당되는 전력을 초과할 때 HPC 시스템(100) 내에서 작업들을 관리하는 샘플 방법을 예시하는 흐름도가 도시된다. 도 3에 예시되는 각각의 블록은 하나 이상의 작업들을 중단하고 및/또는 하나 이상의 작업들을 종료함으로써 HPC 시스템(100) 내에서 작업들을 관리하는 방법(300)으로 수행되는 동작을 나타낸다. 방법(300)은 HPC 시스템(100)에 할당되는 전력이 감소될 때 HPC 시스템(100)의 작업들을 자동으로, 인간 상호작용 없이, 관리하려는 노력들로 컴퓨트 노드들(102) 상에서 작업 스케줄러(211), 작업 매니저(240) 및 추정기(220)에 의해 수행되는 동작들을 예시한다.
동작(301)에서, 방법(300)이 시작된다. 동작(302)에서, HPC 시스템(100)에 소비되는 전력(Pcsys)이 HPC 시스템(100)에 할당되는 전력(Psys) 이하인지에 관한 결정이 이루어진다. Psys가 Pcsys 초과일 때(동작(302)에서 예), HPC 시스템(100)은 HPC 시스템(100)에 전력 할당의 임의의 추가 변동들이 Psys 초과인 Pcsys를 야기하는지를 감시한다. Psys가 Pcsys 미만일 때(동작(302)에서 아니오), 모든 현재 작업들이 그들의 최저 전력 상태에서 동작하고 있는지에 관한 결정이 이루어진다(동작(303)). 일 실시예에서, 작업은 처리를 위한 최소 전력이 작업의 소유자에 의해 요청되고 작업이 요청되는 최소 전력에서 처리되고 있을 때 그것의 최저 전력 상태에서 동작할 수 있다. 다른 실시예에서, 사용자는 컴퓨트 노드들(102)이 작업을 처리하는 특정 주파수를 요청했을 수 있고 컴퓨트 노드들(102)의 전력 상태는 컴퓨트 노드들(102)이 요청된 주파수에서 동작하는 동안 주어진 작업에 대한 최저 전력 상태일 수 있다. 작업 매니저(240)가 작업의 주파수를 자동으로 조정하는(예를 들어 주파수를 컴퓨트 노드들(102)의 최저 동작 주파수로 낮추는) 다른 실시예에서, 작업은 그것의 최저 전력 상태에서 동작(예를 들어, 작업에 대한 전력의 최소 양을 소비)하고 있을 수 있다.
모든 현재 작업들이 그들의 최저 전력 상태에서 동작하고 있지 않을 때(동작(303)에서 아니오), HPC 시스템(100)은 하나 이상의 작업들의 동작 전력 상태 또는 전력 할당을 감소시킨다(동작(304)). 일 실시예에서, 각각의 작업의 최저 주파수는 HPC 시스템(100)과 연관되는 전력 정책들 및/또는 개별 작업을 분석하는 동안에 자원 매니저(210)에 의해 결정된다(예를 들어, 일 실시예에서, 최저 주파수에서 동작하는 것은 작업을 그것의 최저 전력 상태에 배치하는 전력의 최소 양을 소비할 수 있음). 다른 실시예에서, 작업은 전력 제한이 작업의 처리에 적용되지 않아야 하는 전력 정책을 가질 수 있다. 그러한 상황에서, 작업을 처리하는 컴퓨트 노드들(102)은 그들의 최고 주파수에서 항상 동작하고 가능한 전력의 최대 양을 소비하는 것이고; 따라서, 동작 주파수 및 전력 상태가 감소될 수 있다. 제2 실시예에서, 작업은 그러한 HPC 시스템(100)이 작업에 할당되는 전력 및/또는 작업을 처리하는 컴퓨트 노드들(102)의 동작 주파수를 설정하는 것을 허용하는 전력 정책을 가질 수 있다. 그러한 상황에서, HPC 시스템(100)은 컴퓨트 노드들(102)의 동작 주파수가 감소되는 것에 의해, 전력 상태를 감소시킬 수 있는지를 결정할 수 있다. 그 후에, Pcsys는 재산출되고(동작(305)) 방법(300)은 Pcsys가 Psys 이하인지를 결정하는 동작(302)으로 복귀된다.
모든 현재 작업들이 그들의 최저 전력 상태에서 동작하고 있을 때(동작(303)에서 예), 중단될 수 있는 작업을 실행하는 최저 우선순위가 식별된다(동작(306)). 일부 실시예들에서, 작업이 중단될 수 있는지는 작업의 소유자가 그러한 정책을 선택했는지, HPC 시스템(100)이 작업들의 중단에 관한 특정 정책들을 갖는지(예를 들어, 모든 작업들이 중단될 수 있음) 및/또는 작업이 체크포인팅을 지원하는지에 의존한다. 체크포인팅은 작업을 처리하는 진행을 보존하기 위해 작업의 상태를 절약하는 것을 수반한다. 하드웨어 또는 소프트웨어의 고장의 경우에, 체크포인팅은 작업이 마지막 알려진 워킹 상태로부터 재개되는 것을 허용한다. 일부 실시예들에서, 체크포인팅은 미리 정의된 간격들에, 작업의 중단 직전에 또는 둘 다에 발생할 수 있다. 동작(307)에서, 식별된 작업은 체크포인팅을 겪고, 동작(308)에서, 식별된 작업이 중단된다.
동작(309)에서, Pcsys는 최근에 중단된 작업을 고려하여 재산출된다. 용어 "재산출하는"은 컴퓨트 노드들(102) 중 하나 이상에 대한 하나 이상의 구성요소들을 측정하고, 교정기 데이터베이스를 참조하고, 추정기(230)로부터 새로운 전력 추정값을 요청하고 및/또는 하나 이상의 측정들에 기초하여 산출들을 수행하는 것을 의미할 수 있다. 동작(310)에서, Pcsys가 Psys 이하인지에 관한 결정이 이루어진다. Pcsys가 Psys 이하이면(동작(310)에서 예), 방법(300)은 완료된다(311).
Pcsys가 Psys 이하가 아니면(동작(310)에서 아니오), 모든 중단가능 작업들이 중단되었는지에 관한 결정이 이루어진다(동작(312)). 모든 중단가능 작업들이 중단되지 않았을 때(동작(312)에서 아니로), 방법(300)은 작업을 실행하는 최저 우선순위가 식별되는 동작(306)으로 복귀된다. 대안적으로, 모든 중단가능 작업들이 중단되었을 때(동작(312)에서 예), 최저 우선순위를 갖는 현재 작업이 식별된다(동작(313)). 동작(314)에서, 식별된 작업이 종료된다.
동작(315)에서, Pcsys는 최근에 종료된 작업을 고려하여 재산출된다. 동작(316)에서, Pcsys가 Psys 이하인지에 관한 결정이 이루어진다. Pcsys가 Psys 이하이면(동작(316)에서 예), 방법(300)은 완료된다(동작(317)).
Pcsys가 Psys 이하가 아니면(동작(316)에서 아니오), 모든 작업들이 종료되었는지에 관한 결정이 이루어진다(동작(318)). 모든 작업들이 종료되지 않았을 때(동작(318)에서 아니오), 방법(300)은 중단될 수 없는 최저 우선순위 작업을 식별하는 동작(313)으로 복귀된다. 모든 작업들이 종료되었을 때(동작(318)에서 예), HPC 시스템은 전력 오프로 강제된다(동작(319)).
도 4a 내지 도 4c는 HPC 시스템(100)(Pcsys)에 의해 소비되는 전력이 HPC 시스템(100)(Psys)에 할당되는 전력보다 미만이거나 이 전력과 거의 같을 때 하나 이상의 작업들을 관리하는 방법(400)의 일 실시예를 예시한다. 도 4a를 참조하면, 소비되는 전력이 시스템에 할당되는 전력 플러스 제1 시스템 가드대역과 시스템에 할당되는 전력 마이너스 제2 시스템 가드대역 사이에 있는지에 관한 결정이 이루어진다(동작(401)). 동작(401)의 결정이 긍정 응답을 초래할 때(동작(401)에서 예), 방법(400)은 동작(428)으로 취해지며, 동작(428)은 도 4c에 상세히 논의된다. 동작(401)의 결정이 부정 응답을 초래할 때(동작(401)에서 아니오), 소비되는 전력이 할당되는 전력 마이너스 제1 시스템 가드대역 미만인지에 관한 결정(동작(402)). Pcsys 및 Psys는 평균 값들, 예를 들어 시간에 따른 에너지의 소비의 평균 속도인 점이 주목되어야 한다. 시스템 가드대역들은 전력 소비에서 작은 변동들을 설명하는 목적을 서빙한다.
동작(402)에서의 결정이 긍정 결과를 초래할 때(동작(402)에서 예), 방법(400)은 동작(417)으로 취해지며, 동작(417)은 도 4b에서 상세히 논의된다. 동작(402)에서의 결정이 부정 결과를 초래할 때(동작(402)에서 아니오), 전력이 현재 작업들(예를 들어, HPC 시스템(100) 상에 현재 실행되고 있음) 중 하나 이상에 대해 감소될 수 있는지에 관한 결정(동작(403)). 전력이 하나 이상의 현재 작업들에 대해 감소될 수 있을 때(동작(403)에서 예), 전력이 감소되는 하나 이상의 현재 작업들이 식별된다(동작(404)). 전력을 감소시키는 예들은 상기 논의되었다. 동작(405)에서, 하나 이상의 식별된 현재 작업들의 전력은 감소되고 방법(400)은 그 후에 동작(401)으로 복귀된다.
하나 이상의 현재 작업들의 전력이 감소될 수 없을 때(동작(403)에서 아니오), 임의의 현재 작업들이 중단될 수 있는지에 관한 결정이 이루어진다(동작(406)). 하나 이상의 현재 작업들이 중단될 수 있을 때(동작(406)에서 예), 중단가능 작업들의 우선순위화된 리스트가 발생된다(동작(407)). 동작(408)에서, 발생된 리스트에 관한 최저 우선순위화된 중단가능 작업은 체크포인팅을 구현하도록 지시받는다. 체크포인팅이 완료될 때, 최저 우선순위화된 중단가능 작업이 중단될 것이다(동작(409)). 동작(410)에서, 소비되는 전력이 할당되는 전력 마이너스 제1 시스템 가드대역 이하인지에 관한 결정이 이루어진다. 소비되는 전력이 할당되는 전력 마이너스 제1 시스템 가드대역 이하일 때(동작(410)에서 예), 방법(400)은 동작(401)으로 복귀된다. 소비되는 전력이 할당되는 전력 마이너스 제1 시스템 가드대역 미만이 아닐 때(동작(410)에서 아니오), 방법(400)은 임의의 현재 작업들이 중단될 수 있는지를 결정하는 동작(406)으로 복귀된다.
현재 작업들이 중단될 수 없을 때(예를 들어, 사용자 정책들 및/또는 시스템 정책들이 그러한 액션을 방지하고 및/또는 현재 작업들이 체크포인팅을 지원하지 않음)(동작(406)에서 아니오), 하나 이상의 작업들이 현재 실행되고 있는지에 관한 결정이 이루어진다(동작(411)). 작업들이 HPC 시스템(100) 상에 현재 실행되고 있지 않을 때, HPC 시스템(100)은 전력 다운으로 강제되고(동작(412)), 그 후에, 방법(400)은 종료된다(동작(413)).
하나 이상의 작업들이 현재 실행되고 있을 때(동작(411)에서 예), 현재 작업들의 우선순위화된 리스트가 발생된다(동작(414)). 동작(415)에서, 발생된 리스트에 관한 최저 우선순위화된 작업이 종료된다(일 실시예에서, 리스트는 하나의 리스트에서 현재 실행하는 작업들 및 중단된 작업들 둘 다를 우선순위화할 수 있음). 동작(416)에서, 소비되는 전력이 할당되는 전력 마이너스 제1 시스템 가드대역 이하인지에 관한 결정이 이루어진다. 소비되는 전력이 할당되는 전력 마이너스 제1 시스템 가드대역 이하일 때(동작(416)에서 예), 방법(400)은 동작(401)으로 복귀된다. 소비되는 전력이 할당되는 전력 마이너스 제1 시스템 가드대역 이하가 아닐 때(동작(416)에서 아니오), 방법(400)은 현재 실행되는 임의의 작업들이 있는지를 결정하는 동작(411)으로 복귀된다.
도 4b를 참조하면, 도 4a의 동작(402)에서의 결정이 긍정 결과를 초래할 때(동작(402)에서 예), 선호도가 여분의 전력을 현재 작업들에 할당하는지에 관한 결정이 이루어진다(동작(417)). 일 실시예에서, 선호도는 사용자 정책들 및/또는 시스템 정책들로부터 유도될 수 있다. 선호도가 여분의 전력을 현재 작업들에 할당하기 위해 존재할 때(동작(417)에서 예), 여분의 전력은 현재 실행하는 작업들(동작(420))에 할당되고 방법(400)은 동작(401)으로 복귀된다.
여분의 전력은 복수의 방식들로 현재 실행하는 작업들에 할당될 수 있다. 자원 매니저(210)가 여분의 전력을 할당할 수 있는 방법들의 예들은 동일하게 각각의 현재 실행하는 작업 중에서, 최장 실행 시간 그 다음에 제2 최장(제1 작업이 그것의 최고 전력 상태에서 동작하고 있으면) 등을 갖는 현재 실행하는 작업, 최고 우선순위 그 다음 제2 최고 우선순위(제1 작업이 그것의 최고 전력 상태에서 동작하고 있으면) 등을 갖는 현재 실행하는 작업, 또는 비례적으로 각각의 현재 실행하는 작업(예를 들어, 각각의 작업에 대한 실행 기간에 비례함, 각각의 작업에 대한 우선순위에 비례함 등)을 포함하지만, 이들에 제한되거나 한정되지 않는다. 여분의 전력의 할당을 위한 작업들을 우선순위화하는 방법들의 예들은 현재 실행하는 작업들의 우선순위화된 리스팅, 각각의 현재 실행하는 작업이 실행되고 있었던 시간의 양, 각각의 현재 실행하는 작업의 전력 상태(예를 들어, 최저 전력 상태에서 실행되는 작업들과 최고 전력 상태 근방에서 실행되는 것들의 비교), 각각의 현재 실행하는 작업을 현재 처리하는 컴퓨트 노드들(102)의 수 및/또는 각각의 현재 실행하는 작업이 그것의 다음 전력 상태에서 실행되도록 요구할 수 있는 부가 전력의 양을 포함하거나, 이들에 제한되거나 한정되지 않는다.
선호도가 여분의 전력을 현재 작업들에 할당하기 위해 존재하지 않을 때(동작(417)에서 아니오), 임의의 비할당된 자원들이 이용가능한지에 관한 결정이 이루어진다(동작(418)). 자원들의 예들은 하나 이상의 컴퓨트 노드들 및/또는 하나 이상의 저장 디바이스들을 포함하지만, 이들에 제한되거나 한정되지 않는다. 비할당된 자원들이 이용가능하지 않을 때(동작(418)에서 아니오), 여분의 전력은 현재 실행하는 작업들에 할당되고(동작(419)) 방법(400)은 동작(401)으로 복귀된다. 비할당된 자원들이 다른 작업을 처리하는 것을 시작하기 위해 이용가능할 때(동작(418)에서 예), 작업 큐가 비어 있는지에 관한 결정이 이루어진다(동작(420)). HPC 시스템(100)은 시스템에 의해 처리되도록 대기하는 작업들에 대한 작업 큐들을 유지한다. 일 실시예에서, 작업 큐는 시스템 상에서 이전에 처리되었지만 중단되었던 작업들뿐만 아니라 시스템 상에서 처리를 여전히 시작해야 하는 새로운 작업들 둘 다를 포함할 수 있다. 대안 실시예는 개별 큐들을 포함할 수 있으며, 하나는 새로운 작업들에 대한 것이고 하나는 중단된 작업들에 대한 것이다. 본 개시내용은 작업 큐가 새로운 작업들 및/또는 중단된 작업들 둘 다를 포함할 수 있는 단일 큐인 것을 가정할 것이다.
작업 큐가 비어 있을 때(동작(420)에서 예), 여분의 전력은 현재 실행하는 작업들에 할당되고(동작(421)) 방법(400)은 동작(401)으로 복귀된다.
작업 큐가 비어 있지 않을 때(동작(420)에서 아니오), 큐 내의 다음 최고 우선순위 작업인 Jnext가 검색된다(동작(422)). 동작(423)에서, 충분한 자원들이 Jnext를 위해 이용가능한지(예를 들어, 컴퓨트 노드들(102)의 충분한 컴퓨트 노드들이 이용가능한지)에 관한 결정이 이루어진다. 충분한 자원들이 Jnext를 위해 이용가능하지 않을 때(동작(423)에서 아니오), 부가 작업들이 큐에 있는지에 관한 결정이 이루어진다(동작(427)). 더 많은 작업들이 큐에 존재할 때(동작(427)에서 예), 방법(400)은 큐로부터 다음 최고 우선순위 작업을 검색하는 동작(422)으로 복귀된다. 부가 작업들이 큐에 있지 않을 때(동작(427)에서 아니오), 여분의 전력은 현재 실행하는 작업들에 할당되고(동작(419)) 방법(400)은 그 뒤에 동작(401)으로 복귀된다.
그러나, 충분한 자원들이 Jnext를 위해 이용가능할 때(동작(423)에서 예), Jnext를 위한 전력 추정값이 검색된다(동작(424)). 전력 추정값은 추정기(230)에 의해 발생될 수 있다. 전력 추정값이 발생되었을 때, 비할당된 자원들 상에 Jnext를 실행하기 위해 충분한 비할당된 전력이 있는지에 관한 결정이 이루어진다(동작(425)). Jnext를 실행하기 위해 충분한 비할당된 전력이 있을 때(동작(425)에서 예), Jnext는 Jnext가 새로운 작업일 때 시작되거나 Jnext는 Jnext가 중단된 작업일 때 재개된다(동작(426)). Jnext를 실행하기 위해 충분한 비할당된 전력이 없을 때(동작(425)에서 아니오), 상기 논의된 바와 같이, 부가 작업들이 큐에 있는지에 관한 결정이 이루어진다(동작(427)).
도 4c를 참조하면, 동작(401)의 결정이 긍정 응답을 초래할 때(동작(401)에서 예), 작업들이 현재 큐에 있는지에 관한 결정이 이루어진다(동작(428)). 작업들이 현재 큐에 있지 않을 때(동작(428)에서 아니오), 방법(400)은 동작(401)으로 복귀된다. 작업들이 현재 큐에 있을 때(동작(428)에서 예), 임의의 현재 실행하는 작업들이 더 낮은 전력에서 동작될 수 있는지에 관한 결정(동작(429)). 임의의 현재 실행하는 작업들이 더 낮은 전력에서 동작될 수 있는지에 관한 결정은 부가 작업들(예를 들어, 큐에서 대기하는 하나 이상의 작업들)을 실행하기 위해 전력이 재할당될 수 있는지를 결정하기 위해 이루어진다.
현재 작업들이 더 낮은 전력에서 처리될 수 없을 때(동작(429)에서 아니오), 방법(400)은 동작(401)으로 복귀된다. 그러나, 하나 이상의 현재 작업들이 더 낮은 전력에서 동작될 때(동작(429)에서 예), 더 낮은 전력 상태들에서 현재 작업들을 동작시킴으로써, 이용가능해질 수 있는 전력의 양(Pfreed). Pfreed 플러스 시스템에 의해 할당되지 않은 임의의 전력은 새롭거나 중단된 작업에 재할당될 수 있다.
동작(431)에서, 하나 이상의 작업들에 대한 전력을 감소시킴으로써 이용가능해질 수 있는 부가 자원들이 결정된다. 그 후에, 동작(432)에서, Jnext는 작업 큐로부터 검색되고, 동작(433)에서, 전력 추정값(Pnext)은 Jnext로부터 발생된다. 작업 큐 및 검색(예를 들어, 우선순위에 기초한 조직 및 검색)은 상기 논의되었다. 유사하게, 전력 추정값의 발생은 또한 상기 논의되었다.
동작(434)에서, Jnext를 실행하기 위해 이용가능한 충분한 비할당된 자원들이 있는지에 관한 결정이 이루어진다. Jnext를 실행하기 위해 이용가능한 충분한 비할당된 자원들이 없을 때(동작(434)에서 아니오), 상기 논의된 바와 같이, 부가 작업들이 큐에 있는지에 관한 것이 결정이 이루어진다(동작(435)). 부가 작업들이 큐에 존재하지 않을 때(동작(435)에서 아니오), 방법(400)은 동작(400)으로 복귀된다. 부가 작업들이 큐에 존재할 때(동작(435)에서 예), 방법(400)은 큐로부터 다음 최고 우선순위 작업을 검색하는 동작(432)으로 복귀된다.
그러나, 작업을 실행하기 위해 이용가능 자원들(예를 들어, 이용가능 노드들 및 비할당된 전력)이 있을 때(동작(434)에서 예), 하나 이상의 작업들에 의해 소비되는 전력을 감소시킴으로써 이용가능해질 수 있는 부가 자원들이 결정된다(동작(432)). 동작(433)에서, 다음 최고 우선순위를 갖는 작업은 큐로부터 검색된다. 동작(434)에서, Jnext에 대한 전력 추정값은 (예를 들어, 추정기(230)로부터 추정값을 요청함으로써) 획득된다. 동작(435)에서, 하나 이상의 작업들에 의해 소비되는 전력을 감소시키는 것 없이 충분한 자원들이 Jnext를 실행하기 위해 이용가능한지에 관한 결정이 이루어진다.
충분한 자원들이 Jnext를 실행하기 위해 이용가능할 때(동작(434)에서 예), Jnext를 시작하도록 요구되는 전력(전력 추정값(Pnext)의 일부에 의해 표현됨)이 Pfreed 플러스 비할당된 전력 이하인지에 관한 결정이 이루어진다. Pnext는 Pfreed 플러스 비할당된 전력보다 초과일 때(동작(436)에서 아니오), 방법(400)은 큐에서 현재 대기하는 부가 작업들이 있는지를 결정하는 동작(435)으로 복귀된다. Pnext가 Pfreed 플러스 비할당된 전력 이하일 때(동작(436)에서 예), 하나 이상의 작업들의 전력은 많아야, Pnext만큼 감소되고(동작(437)), 그 후에, Jnext는 Jnext가 새로운 작업일 때 시작되거나 Jnext는 Jnext가 중단된 작업일 때 재개된다(동작(438)). 동작(438)에서 Jnext를 시작하면, 방법(400)은 동작(401)으로 복귀된다.
이하의 예들은 추가 실시예들과 관련된다:
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인지를 결정하는 동작, 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 및 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 중단하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인지를 결정하는 동작, 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 및 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 체크포인팅하는 동작, 최저 우선순위를 갖는 작업을 체크포인팅하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 중단하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인지를 결정하는 동작, 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 및 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 중단하는 동작 - 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중 제1 작업의 최저 전력 상태는 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중 제2 작업의 최저 전력 상태와 다름 - 를 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인지를 결정하는 동작, 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 중단하는 동작 및 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 중단한 후에, 분산 컴퓨터 시스템에 의해 소비되는 전력을 재산출하는 동작 - 분산 컴퓨터 시스템에 의해 모든 작업들 중 제1 작업의 최저 전력 상태는 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중 제2 작업의 최저 전력 상태와 다름 - 를 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인지를 결정하는 동작, 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 중단하는 동작, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 중단한 후에, 분산 컴퓨터 시스템에 의해 소비되는 전력을 재산출하는 동작 및 분산 컴퓨터 시스템에 의해 소비되는 전력을 재산출한 후에, 제2 최저 우선순위를 갖는 제2 작업을 중단하는 동작 - 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중 제1 작업의 최저 전력 상태는 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중 제2 작업의 최저 전력 상태와 다름 - 를 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인지를 결정하는 동작, 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 초과인 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 중단하는 동작 및 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 중단하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 소비되는 전력이 시스템에 할당되는 전력보다 초과인지를 결정하는 동작 및 분산 컴퓨터 시스템에 의해 소비되는 전력이 시스템에 할당되는 전력보다 초과인 것을 결정하는 것에 응답하여, 제2 최저 우선순위를 갖는 제2 작업을 종료하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 미만인지를 결정하는 동작, 분산 컴퓨터 시스템에 의해 소비되는 전력이 분산 컴퓨터 시스템에 할당되는 전력보다 미만인 것을 결정하는 것에 응답하여, 비할당된 자원들이 이용가능한지를 결정하는 동작, 비할당된 자원들이 이용가능한 것을 결정하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능한지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능할 때, 최고 우선순위 작업을 처리할 전력이 이용가능한지를 결정하는 동작 및 최고 우선순위 작업을 처리할 전력이 이용가능할 때, 최고 우선순위 작업을 시작하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인지를 결정하는 동작, 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것을 결정하는 것에 응답하여, 선호도가 여분의 전력을 작업 큐 내의 작업들에 할당하기 위해 존재하는지를 결정하는 동작, 선호도가 여분의 전력을 작업 큐 내의 작업들에 할당하기 위해 존재하지 않는 것을 결정하는 것에 응답하여, 비할당된 자원들이 이용가능한지를 결정하는 동작, 비할당된 자원들이 이용가능한 것을 결정하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능한지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능할 때, 최고 우선순위 작업을 처리할 전력이 이용가능한지를 결정하는 동작 및 최고 우선순위 작업을 처리할 전력이 이용가능할 때, 최고 우선순위 작업을 시작하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인지를 결정하는 동작, 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것을 결정하는 것에 응답하여, 선호도가 여분의 전력을 작업 큐 내의 작업들에 할당하기 위해 존재하는지를 결정하는 동작, 선호도가 여분의 전력을 작업 큐 내의 작업들에 할당하기 위해 존재하는 것을 결정하는 것에 응답하여, 여분의 전력을 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 할당하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인지를 결정하는 동작, 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것을 결정하는 것에 응답하여, 비할당된 자원들이 이용가능한지를 결정하는 동작, 비할당된 자원들이 이용가능한 것을 결정하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능한지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능할 때, 최고 우선순위 작업을 처리할 전력이 이용가능한지를 결정하는 동작 및 최고 우선순위 작업을 처리할 전력이 이용가능할 때, 최고 우선순위 작업을 시작하는 동작을 포함하며, 최고 우선순위 작업을 처리할 전력이 이용가능한지를 결정하는 동작은 최고 우선순위 작업을 처리하도록 요구되는 전력이 분산 컴퓨터 시스템에 할당되는 전력 마이너스 분산 컴퓨터 시스템에 의해 소비되는 전력 마이너스 제1 시스템 가드대역 미만인지를 결정하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인지를 결정하는 동작, 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것을 결정하는 것에 응답하여, 비할당된 자원들이 이용가능한지를 결정하는 동작, 비할당된 자원들이 이용가능한 것을 결정하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능한지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능할 때, 최고 우선순위 작업을 처리할 전력이 이용가능한지를 결정하는 동작, 및 최고 우선순위 작업을 처리할 전력이 이용가능할 때, 최고 우선순위 작업을 시작하는 동작을 포함하며, 최고 우선순위 작업을 처리할 전력이 이용가능한지를 결정하는 동작은 최고 우선순위 작업을 처리하도록 요구되는 전력이 분산 컴퓨터 시스템에 할당되는 전력 마이너스 분산 컴퓨터 시스템에 의해 소비되는 전력 마이너스 제1 시스템 가드대역 미만인지를 결정하는 동작을 포함하고 제1 시스템 가드대역은 분산 컴퓨터 시스템의 전력 소비의 변동들이 분산 컴퓨터 시스템에 할당되는 전력을 초과하는 것을 방지하기 위해 하나 이상의 작업들에 할당되지 않는 전력의 미리 정의된 양을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인지를 결정하는 동작, 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것을 결정하는 것에 응답하여, 비할당된 자원들이 이용가능한지를 결정하는 동작, 비할당된 자원들이 이용가능한 것을 결정하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능한지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능할 때, 최고 우선순위 작업을 처리할 전력이 이용가능한지를 결정하는 동작 및 최고 우선순위 작업을 처리할 전력이 이용가능할 때, 최고 우선순위 작업을 시작하는 동작을 포함하며, 최고 우선순위 작업을 시작하는 동작은 작업 큐로부터 새로운 작업을 시작하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인지를 결정하는 동작, 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것을 결정하는 것에 응답하여, 비할당된 자원들이 이용가능한지를 결정하는 동작, 비할당된 자원들이 이용가능한 것을 결정하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능한지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능할 때, 최고 우선순위 작업을 처리할 전력이 이용가능한지를 결정하는 동작 및 최고 우선순위 작업을 처리할 전력이 이용가능할 때, 최고 우선순위 작업을 시작하는 동작을 포함하며, 최고 우선순위 작업을 시작하는 동작은 작업 큐 내의 중단된 작업을 재개하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인지를 결정하는 동작, 분산 컴퓨터 시스템에 할당되는 전력이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것을 결정하는 것에 응답하여, 비할당된 자원들이 이용가능한지를 결정하는 동작, 비할당된 자원들이 이용가능한 것을 결정하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능한지를 결정하는 동작 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능할 때, 최고 우선순위 작업을 처리할 전력이 이용가능한지를 결정하는 동작 및 최고 우선순위 작업을 처리할 전력이 이용가능할 때, 최고 우선순위 작업을 시작하는 동작을 포함하며, 작업 큐는 (1) 하나 이상의 새로운 작업들 또는 (2) 하나 이상의 중단된 작업들 중 하나 또는 둘 다를 포함하도록 구성되는 우선순위화된 큐이다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 (1) 분산 컴퓨터 시스템에 할당되는 전력 마이너스 제1 시스템 가드대역이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것 및 (2) 분산 컴퓨터 시스템에 의해 소비되는 전력이 시스템에 할당되는 전력 플러스 제2 시스템 가드대역 미만인 것을 결정하는 동작, 프리드 전력을 산출하는 동작 - 프리드 전력은 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시킴으로써 작업 큐 내의 하나 이상의 작업들에 할당하기 위해 이용가능해질 수 있는 전력의 양이며, 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 프리드 전력을 산출하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인지를 결정하는 동작 - 비할당된 전력은 분산 컴퓨터 시스템에 할당되지만 분산 컴퓨터 시스템에 의해 처리되는 작업에 할당되지 않는 전력임 -, 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 동작 및 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인 것을 결정하는 것 및 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 것에 응답하여, 최고 우선순위 작업을 시작하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 (1) 분산 컴퓨터 시스템에 할당되는 전력 마이너스 제1 시스템 가드대역이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것 및 (2) 분산 컴퓨터 시스템에 의해 소비되는 전력이 시스템에 할당되는 전력 플러스 제2 시스템 가드대역 미만인 것을 결정하는 동작, 프리드 전력을 산출하는 동작 - 프리드 전력은 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시킴으로써 작업 큐 내의 하나 이상의 작업들에 할당하기 위해 이용가능해질 수 있는 전력의 양이며, 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 프리드 전력을 산출하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인지를 결정하는 동작 - 비할당된 전력은 분산 컴퓨터 시스템에 할당되지만 분산 컴퓨터 시스템에 의해 처리되는 작업에 할당되지 않은 전력임 -, 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 동작 및 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인 것을 결정하는 것 및 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 것에 응답하여, 최고 우선순위 작업을 시작하는 동작을 포함하며, 최고 우선순위 작업을 시작하는 동작은 작업 큐로부터 새로운 작업을 시작하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 (1) 분산 컴퓨터 시스템에 할당되는 전력 마이너스 제1 시스템 가드대역이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것 및 (2) 분산 컴퓨터 시스템에 의해 소비되는 전력이 시스템에 할당되는 전력 플러스 제2 시스템 가드대역 미만인 것을 결정하는 동작, 프리드 전력을 산출하는 동작 - 프리드 전력은 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시킴으로써 작업 큐 내의 하나 이상의 작업들에 할당하기 위해 이용가능해질 수 있는 전력의 양임 - 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 프리드 전력을 산출하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인지를 결정하는 동작 - 비할당된 전력은 분산 컴퓨터 시스템에 할당되지만 분산 컴퓨터 시스템에 의해 처리되는 작업에 할당되지 않은 전력임 -, 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 동작 및 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인 것을 결정하는 것 및 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 것에 응답하여, 최고 우선순위 작업을 시작하는 동작을 포함하며, 최고 우선순위 작업을 시작하는 동작은 작업 큐 내의 중단된 작업을 재개하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 (1) 분산 컴퓨터 시스템에 할당되는 전력 마이너스 제1 시스템 가드대역이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것 및 (2) 분산 컴퓨터 시스템에 의해 소비되는 전력이 시스템에 할당되는 전력 플러스 제2 시스템 가드대역 미만인 것을 결정하는 동작, 프리드 전력을 산출하는 동작 - 프리드 전력은 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시킴으로써 작업 큐 내의 하나 이상의 작업들에 할당하기 위해 이용가능해질 수 있는 전력의 양이며, 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 프리드 전력을 산출한 후에, 최고 우선순위 작업에 대한 전력 추정값을 발생시키는 동작, 전력 추정값을 산출하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인지를 결정하는 동작 - 비할당된 전력은 분산 컴퓨터 시스템에 할당되지만 분산 컴퓨터 시스템에 의해 처리되는 작업에 할당되지 않은 전력임 -, 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 동작 및 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인 것을 결정하는 것 및 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 것에 응답하여, 최고 우선순위 작업을 시작하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 (1) 분산 컴퓨터 시스템에 할당되는 전력 마이너스 제1 시스템 가드대역이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것 및 (2) 분산 컴퓨터 시스템에 의해 소비되는 전력이 시스템에 할당되는 전력 플러스 제2 시스템 가드대역 미만인 것을 결정하는 동작, 프리드 전력을 산출하는 동작 - 프리드 전력은 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시킴으로써 작업 큐 내의 하나 이상의 작업들에 할당하기 위해 이용가능해질 수 있는 전력의 양이며, 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 프리드 전력을 산출하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인지를 결정하는 동작 - 비할당된 전력은 분산 컴퓨터 시스템에 할당되지만 분산 컴퓨터 시스템에 의해 처리되는 작업에 할당되지 않은 전력임 -, 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 동작 및 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인 것을 결정하는 것 및 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 것에 응답하여, 최고 우선순위 작업을 시작하는 동작, 충분한 자원들이 최고 우선순위 작업을 처리하기 위해 이용가능하지 않고 충분한 자원들이 제2 최고 우선순위 작업을 처리하기 위해 이용가능할 때, 제2 최고 우선순위 작업을 시작하는 동작을 포함한다.
비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 저장하며, 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하고, 동작들은 (1) 분산 컴퓨터 시스템에 할당되는 전력 마이너스 제1 시스템 가드대역이 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것 및 (2) 분산 컴퓨터 시스템에 의해 소비되는 전력이 시스템에 할당되는 전력 플러스 제2 시스템 가드대역 미만인 것을 결정하는 동작, 프리드 전력을 산출하는 동작 - 프리드 전력은 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시킴으로써 작업 큐 내의 하나 이상의 작업들에 할당하기 위해 이용가능해질 수 있는 전력의 양이며, 작업은 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -, 프리드 전력을 산출하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인지를 결정하는 동작 - 비할당된 전력은 분산 컴퓨터 시스템에 할당되지만 분산 컴퓨터 시스템에 의해 처리되는 작업에 할당되지 않은 전력임 -, 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인 것을 결정하는 것에 응답하여, 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 동작 및 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만인 것을 결정하는 것 및 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 것에 응답하여, 최고 우선순위 작업을 시작하는 동작, 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 초과이고 제2 최고 우선순위 작업을 위해 요구되는 전력이 프리드 전력 플러스 비할당된 전력보다 미만일 때, 제2 최고 우선순위 작업을 시작하는 동작을 포함한다.
상술한 설명에서, 본 발명은 그것의 특정 예시적 실시예들을 참조하여 설명된다. 그러나, 첨부된 청구항들에 제시되는 바와 같이 본 발명의 더 넓은 사상 및 범위로부터 벗어나는 것 없이 다양한 수정들 및 변경들이 그것에 이루어질 수 있는 것은 분명할 것이다.

Claims (20)

  1. 명령어들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하며, 상기 동작들은,
    상기 분산 컴퓨터 시스템에 의해 소비되는 전력이 상기 분산 컴퓨터 시스템에 할당되는 전력보다 초과인지를 결정하는 동작;
    상기 분산 컴퓨터 시스템에 의해 소비되는 전력이 상기 분산 컴퓨터 시스템에 할당되는 전력보다 초과인 것을 결정하는 것에 응답하여, 상기 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는지를 결정하는 동작 - 작업은 상기 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -; 및
    상기 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는 것을 결정하는 것에 응답하여, 상기 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 중단하는 동작
    을 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  2. 제1항에 있어서,
    상기 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 상기 최저 우선순위를 갖는 작업을 중단하기 전에 및 상기 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들이 각각의 작업에 대한 최저 전력 상태에서 처리되고 있는 것을 결정하는 것에 응답하여, 상기 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 체크포인팅하는 동작을 더 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  3. 제1항에 있어서, 상기 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중 제1 작업의 최저 전력 상태는 상기 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중 제2 작업의 최저 전력 상태와 다른 비일시적 컴퓨터 판독가능 저장 매체.
  4. 제3항에 있어서,
    상기 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 상기 최저 우선순위를 갖는 작업을 중단한 후에, 상기 분산 컴퓨터 시스템에 의해 소비되는 전력을 재산출하는 동작을 더 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  5. 제4항에 있어서,
    상기 분산 컴퓨터 시스템에 의해 소비되는 전력을 재산출한 후에, 제2 최저 우선순위를 갖는 제2 작업을 중단하는 동작을 더 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  6. 제1항에 있어서,
    상기 분산 컴퓨터 시스템에 의해 처리되는 모든 작업들 중에서 최저 우선순위를 갖는 작업을 중단하는 것에 응답하여, 상기 분산 컴퓨터 시스템에 의해 소비되는 전력이 상기 시스템에 할당되는 전력보다 초과인지를 결정하는 동작; 및
    상기 분산 컴퓨터 시스템에 의해 소비되는 전력이 상기 시스템에 할당되는 전력보다 초과인 것을 결정하는 것에 응답하여, 제2 최저 우선순위를 갖는 제2 작업을 종료하는 동작을 더 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  7. 명령어들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 명령어들은 동작들을 수행하도록 하나 이상의 프로세서들에 의해 실행가능하며, 상기 동작들은,
    분산 컴퓨터 시스템에 의해 소비되는 전력이 상기 분산 컴퓨터 시스템에 할당되는 전력보다 미만인지를 결정하는 동작;
    분산 컴퓨터 시스템에 의해 소비되는 전력이 상기 분산 컴퓨터 시스템에 할당되는 전력보다 미만인 것을 결정하는 것에 응답하여, 비할당된 자원들이 이용가능한지를 결정하는 동작;
    비할당된 자원들이 이용가능한 것을 결정하는 것에 응답하여, 작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능한지를 결정하는 동작 - 작업은 상기 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -;
    작업 큐 내의 최고 우선순위 작업에 대한 충분한 자원들이 이용가능할 때, 상기 최고 우선순위 작업을 처리할 전력이 이용가능한지를 결정하는 동작; 및
    상기 최고 우선순위 작업을 처리할 전력이 이용가능할 때, 상기 최고 우선순위 작업을 시작하는 동작
    을 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  8. 제7항에 있어서,
    비할당된 자원들이 이용가능한지를 결정하기 전에 및 상기 분산 컴퓨터 시스템에 의해 소비되는 전력이 상기 분산 컴퓨터 시스템에 할당되는 전력보다 미만인 것을 결정하는 것에 응답하여, 선호도가 여분의 전력을 상기 작업 큐 내의 작업들에 할당하기 위해 존재하는지를 결정하는 동작을 더 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  9. 제8항에 있어서,
    선호도가 여분의 전력을 상기 작업 큐 내의 작업들에 할당하기 위해 존재하는 것을 결정하는 것에 응답하여, 여분의 전력을 상기 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 할당하는 동작을 더 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  10. 제7항에 있어서, 상기 최고 우선순위 작업을 처리할 전력이 이용가능한지를 결정하는 동작은 상기 최고 우선순위 작업을 처리하도록 요구되는 전력이 상기 분산 컴퓨터 시스템에 할당되는 전력 마이너스 상기 분산 컴퓨터 시스템에 의해 소비되는 전력 마이너스 제1 시스템 가드대역 미만인지를 결정하는 동작을 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  11. 제10항에 있어서, 상기 제1 시스템 가드대역은 상기 분산 컴퓨터 시스템의 전력 소비의 변동들이 상기 분산 컴퓨터 시스템에 할당되는 전력을 초과하는 것을 방지하기 위해 하나 이상의 작업들에 할당되지 않는 전력의 미리 정의된 양을 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  12. 제7항에 있어서, 상기 최고 우선순위 작업을 시작하는 동작은 상기 작업 큐로부터 새로운 작업을 시작하는 동작을 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  13. 제7항에 있어서, 상기 최고 우선순위 작업을 시작하는 동작은 상기 작업 큐 내의 중단된 작업을 재개하는 동작을 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  14. 제7항에 있어서, 상기 작업 큐는 (1) 하나 이상의 새로운 작업들 또는 (2) 하나 이상의 중단된 작업들 중 하나 또는 둘 다를 포함하도록 구성되는 우선순위화된 큐인 비일시적 컴퓨터 판독가능 저장 매체.
  15. 명령어들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 명령어들은 동작들을 수행하도록 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 실행가능하며, 상기 동작들은,
    (1) 상기 분산 컴퓨터 시스템에 할당되는 전력 마이너스 제1 시스템 가드대역이 상기 분산 컴퓨터 시스템에 의해 소비되는 전력보다 미만인 것 및 (2) 상기 분산 컴퓨터 시스템에 의해 소비되는 전력이 상기 시스템에 할당되는 전력 플러스 제2 시스템 가드대역 미만인 것을 결정하는 동작;
    프리드 전력(freed power)을 산출하는 동작 - 상기 프리드 전력은 상기 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시킴으로써 작업 큐 내의 하나 이상의 작업들에 할당하기 위해 이용가능해질 수 있는 전력의 양이며, 작업은 상기 분산 컴퓨터 시스템의 하나 이상의 프로세서들에 의해 수행되는 하나 이상의 산출들을 포함함 -;
    상기 프리드 전력을 산출하는 것에 응답하여, 상기 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 상기 프리드 전력 플러스 비할당된 전력보다 미만인지를 결정하는 동작 - 상기 비할당된 전력은 상기 분산 컴퓨터 시스템에 할당되지만 상기 분산 컴퓨터 시스템에 의해 처리되는 작업에 할당되지 않은 전력임 -;
    상기 작업 큐 내의 최고 우선순위 작업을 위해 요구되는 전력이 상기 프리드 전력 플러스 상기 비할당된 전력보다 미만인 것을 결정하는 것에 응답하여, 상기 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 동작; 및
    상기 분산 컴퓨터 시스템에 의해 처리되는 하나 이상의 작업들에 의해 소비되는 전력의 양을 감소시키는 것에 응답하여, 상기 최고 우선순위 작업을 시작하는 동작
    을 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  16. 제15항에 있어서, 상기 최고 우선순위 작업을 시작하는 동작은 상기 작업 큐로부터 새로운 작업을 시작하는 동작을 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  17. 제15항에 있어서, 상기 최고 우선순위 작업을 시작하는 동작은 상기 작업 큐 내의 중단된 작업을 재개하는 동작을 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  18. 제15항에 있어서,
    상기 최고 우선순위 작업을 위해 요구되는 전력이 상기 프리드 전력 플러스 상기 비할당된 전력보다 미만인지를 결정하기 전에, 상기 최고 우선순위 작업에 대한 전력 추정값을 발생시키는 동작을 더 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  19. 제15항에 있어서,
    충분한 자원들이 상기 최고 우선순위 작업을 처리하기 위해 이용가능하지 않고 충분한 자원들이 제2 최고 우선순위 작업을 처리하기 위해 이용가능할 때, 상기 제2 최고 우선순위 작업을 시작하는 동작을 더 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
  20. 제15항에 있어서,
    상기 최고 우선순위 작업을 위해 요구되는 전력이 상기 프리드 전력 플러스 상기 비할당된 전력보다 초과이고 제2 최고 우선순위 작업을 위해 요구되는 전력이 상기 프리드 전력 플러스 상기 비할당된 전력보다 미만일 때, 상기 제2 최고 우선순위 작업을 시작하는 동작을 더 포함하는 비일시적 컴퓨터 판독가능 저장 매체.
KR1020177002008A 2014-08-22 2015-06-18 분산 컴퓨터 시스템에 전력 할당의 변화가 있을 때 중단될 수 있고 중단될 수 없는 작업들을 관리하는 방법들 및 장치 KR102207050B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201462040576P 2014-08-22 2014-08-22
US62/040,576 2014-08-22
US14/582,772 2014-12-24
US14/582,772 US10289183B2 (en) 2014-08-22 2014-12-24 Methods and apparatus to manage jobs that can and cannot be suspended when there is a change in power allocation to a distributed computer system
PCT/US2015/036403 WO2016028374A1 (en) 2014-08-22 2015-06-18 Methods and apparatus to manage jobs that can and cannot be suspended when there is a change in power allocation to a distributed computer system

Publications (2)

Publication Number Publication Date
KR20170021864A true KR20170021864A (ko) 2017-02-28
KR102207050B1 KR102207050B1 (ko) 2021-01-25

Family

ID=55348281

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020177002070A KR102213555B1 (ko) 2014-08-22 2015-06-17 데이터 처리 시스템을 위한 전력 인식 작업 스케쥴러 및 관리자
KR1020177002008A KR102207050B1 (ko) 2014-08-22 2015-06-18 분산 컴퓨터 시스템에 전력 할당의 변화가 있을 때 중단될 수 있고 중단될 수 없는 작업들을 관리하는 방법들 및 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020177002070A KR102213555B1 (ko) 2014-08-22 2015-06-17 데이터 처리 시스템을 위한 전력 인식 작업 스케쥴러 및 관리자

Country Status (6)

Country Link
US (6) US20160054779A1 (ko)
EP (5) EP3183654A4 (ko)
JP (2) JP6701175B2 (ko)
KR (2) KR102213555B1 (ko)
CN (4) CN106537348B (ko)
WO (3) WO2016028371A1 (ko)

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8601473B1 (en) 2011-08-10 2013-12-03 Nutanix, Inc. Architecture for managing I/O and storage for a virtualization environment
US10134314B2 (en) * 2011-11-30 2018-11-20 Intel Corporation Reducing power for 3D workloads
US11243707B2 (en) 2014-03-12 2022-02-08 Nutanix, Inc. Method and system for implementing virtual machine images
US9870037B2 (en) * 2015-04-01 2018-01-16 Dell Products, L.P. Method and apparatus for collaborative power and thermal control of fan run time average power limiting
US9900164B2 (en) * 2015-06-10 2018-02-20 Cisco Technology, Inc. Dynamic power management
US10042410B2 (en) * 2015-06-11 2018-08-07 International Business Machines Corporation Managing data center power consumption
US10073659B2 (en) 2015-06-26 2018-09-11 Intel Corporation Power management circuit with per activity weighting and multiple throttle down thresholds
US10503230B2 (en) * 2015-11-25 2019-12-10 Electronics And Telecommunications Research Institute Method and apparatus for power scheduling
US10437304B2 (en) * 2016-03-15 2019-10-08 Roku, Inc. Brown out condition detection and device calibration
US10613947B2 (en) 2016-06-09 2020-04-07 Nutanix, Inc. Saving and restoring storage devices using application-consistent snapshots
CN106200612B (zh) * 2016-07-07 2019-01-22 百度在线网络技术(北京)有限公司 用于测试车辆的方法和系统
US11030003B2 (en) 2016-08-11 2021-06-08 Telefonaktiebolaget Lm Ericsson (Publ) Method and cloud management node for managing a data processing task
US10401940B2 (en) * 2016-10-10 2019-09-03 International Business Machines Corporation Power management in disaggregated computing systems
US10819599B2 (en) 2016-10-10 2020-10-27 International Business Machines Corporation Energy consumption as a measure of utilization and work characterization in a system
US11169592B2 (en) 2016-10-10 2021-11-09 International Business Machines Corporation SLA-based backup power management during utility power interruption in disaggregated datacenters
US10360077B2 (en) * 2016-10-10 2019-07-23 International Business Machines Corporation Measuring utilization of resources in datacenters
US10545560B2 (en) 2016-10-10 2020-01-28 International Business Machines Corporation Power management and utilization detection of computing components
US10838482B2 (en) 2016-10-10 2020-11-17 International Business Machines Corporation SLA-based power management in disaggregated computing systems
CN106779295A (zh) * 2016-11-18 2017-05-31 南方电网科学研究院有限责任公司 供电方案生成方法和系统
US20180165772A1 (en) * 2016-12-14 2018-06-14 Palo Alto Research Center Incorporated Tiered greening for large business operations with heavy power reliance
IT201700034731A1 (it) * 2017-03-29 2018-09-29 St Microelectronics Srl Modulo e metodo di gestione dell'accesso ad una memoria
US11687145B2 (en) * 2017-04-10 2023-06-27 Hewlett-Packard Development Company, L.P. Delivering power to printing functions
US10656700B2 (en) * 2017-07-10 2020-05-19 Oracle International Corporation Power management in an integrated circuit
WO2019014321A1 (en) * 2017-07-12 2019-01-17 Wiliot, LTD. ENERGY SENSITIVE COMPUTING SYSTEM
US10831252B2 (en) 2017-07-25 2020-11-10 International Business Machines Corporation Power efficiency-aware node component assembly
JP6874594B2 (ja) * 2017-08-24 2021-05-19 富士通株式会社 電源管理装置,ノード電源管理方法およびノード電源管理プログラム
US10917496B2 (en) * 2017-09-05 2021-02-09 Amazon Technologies, Inc. Networked storage architecture
JP6996216B2 (ja) * 2017-10-16 2022-01-17 コニカミノルタ株式会社 シミュレート装置、情報処理装置、装置設定方法および装置設定プログラム
KR102539044B1 (ko) * 2017-10-30 2023-06-01 삼성전자주식회사 시스템 온 칩의 구동 방법, 이를 수행하는 시스템 온 칩 및 이를 포함하는 전자 시스템
US10824522B2 (en) * 2017-11-27 2020-11-03 Nutanix, Inc. Method, apparatus, and computer program product for generating consistent snapshots without quiescing applications
US10725834B2 (en) 2017-11-30 2020-07-28 International Business Machines Corporation Job scheduling based on node and application characteristics
CN108052394B (zh) * 2017-12-27 2021-11-30 福建星瑞格软件有限公司 基于sql语句运行时间的资源分配的方法及计算机设备
US10627885B2 (en) * 2018-01-09 2020-04-21 Intel Corporation Hybrid prioritized resource allocation in thermally- or power-constrained computing devices
JP2019146298A (ja) * 2018-02-16 2019-08-29 富士ゼロックス株式会社 情報処理装置及びプログラム
US11169586B2 (en) * 2018-06-01 2021-11-09 Samsung Electronics Co., Ltd. Computing device and method of operating the same
US10936039B2 (en) * 2018-06-19 2021-03-02 Intel Corporation Multi-tenant edge cloud system power management
US11226667B2 (en) 2018-07-12 2022-01-18 Wiliot Ltd. Microcontroller operable in a battery-less wireless device
US11366753B2 (en) * 2018-07-31 2022-06-21 Marvell Asia Pte Ltd Controlling performance of a solid state drive
US11031787B2 (en) 2018-09-14 2021-06-08 Lancium Llc System of critical datacenters and behind-the-meter flexible datacenters
CN113168342B (zh) 2018-11-19 2023-12-26 阿里云计算有限公司 用于提供资源的方法和设备、计算机可读存储介质
WO2020227811A1 (en) 2019-05-15 2020-11-19 Upstream Data Inc. Portable blockchain mining system and methods of use
US11073888B2 (en) * 2019-05-31 2021-07-27 Advanced Micro Devices, Inc. Platform power manager for rack level power and thermal constraints
US11314558B2 (en) * 2019-07-23 2022-04-26 Netapp, Inc. Methods for dynamic throttling to satisfy minimum throughput service level objectives and devices thereof
US11809252B2 (en) * 2019-07-29 2023-11-07 Intel Corporation Priority-based battery allocation for resources during power outage
US11868106B2 (en) 2019-08-01 2024-01-09 Lancium Llc Granular power ramping
US11397999B2 (en) 2019-08-01 2022-07-26 Lancium Llc Modifying computing system operations based on cost and power conditions
CN110958389B (zh) * 2019-12-05 2021-12-14 浙江大华技术股份有限公司 一种摄像机的负载启动方法、设备、装置及存储介质
JP7367565B2 (ja) 2020-03-03 2023-10-24 富士通株式会社 電力制御装置および電力制御プログラム
US11307627B2 (en) * 2020-04-30 2022-04-19 Hewlett Packard Enterprise Development Lp Systems and methods for reducing stranded power capacity
US20210397476A1 (en) * 2020-06-18 2021-12-23 International Business Machines Corporation Power-performance based system management
KR102176028B1 (ko) * 2020-08-24 2020-11-09 (주)에오스와이텍 실시간 통합 모니터링 시스템 및 그 방법
KR102432007B1 (ko) * 2020-10-08 2022-08-12 인하대학교 산학협력단 모바일 엣지 컴퓨팅에서 엣지 서버 한도 전력 하에서 보상을 최대화하는 작업 오프로딩
CN114816025A (zh) * 2021-01-19 2022-07-29 联想企业解决方案(新加坡)有限公司 功率管理方法和系统
US20220342469A1 (en) * 2021-04-23 2022-10-27 Hewlett-Packard Development Company, L.P. Power budget profiles of computing devices
CN113434034B (zh) * 2021-07-08 2023-04-18 北京华恒盛世科技有限公司 利用深度学习调整计算任务cpu频率的大型集群节能方法
EP4137913A1 (en) * 2021-08-17 2023-02-22 Axis AB Power management in processing circuitry which implements a neural network
KR20230036589A (ko) * 2021-09-06 2023-03-15 삼성전자주식회사 시스템-온-칩 및 그의 동작 방법
KR102458919B1 (ko) * 2021-11-15 2022-10-26 삼성전자주식회사 적응적인 파워 조절을 수행하는 메모리 컨트롤러, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작방법
US11720256B2 (en) * 2021-12-15 2023-08-08 Dell Products L.P. Maximizing power savings using IO monitoring
US11972267B2 (en) * 2022-10-04 2024-04-30 International Business Machines Corporation Hibernation of computing device with faulty batteries
US11714688B1 (en) * 2022-11-17 2023-08-01 Accenture Global Solutions Limited Sustainability-based computing resource allocation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130016237A (ko) * 2010-03-25 2013-02-14 마이크로소프트 코포레이션 분산 컴퓨팅에서의 전력 공급 관리

Family Cites Families (115)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2264794B (en) 1992-03-06 1995-09-20 Intel Corp Method and apparatus for automatic power management in a high integration floppy disk controller
US5483656A (en) 1993-01-14 1996-01-09 Apple Computer, Inc. System for managing power consumption of devices coupled to a common bus
US5598537A (en) 1994-03-25 1997-01-28 Advanced Micro Devices, Inc. Apparatus and method for driving a bus to a docking safe state in a dockable computer system including a docking station and a portable computer
US5752050A (en) 1994-10-04 1998-05-12 Intel Corporation Method and apparatus for managing power consumption of external devices for personal computers using a power management coordinator
US5784628A (en) 1996-03-12 1998-07-21 Microsoft Corporation Method and system for controlling power consumption in a computer system
KR100285949B1 (ko) 1996-12-12 2001-04-16 윤종용 배터리 충전회로
US6125450A (en) 1996-12-19 2000-09-26 Intel Corporation Stop clock throttling in a computer processor through disabling bus masters
US5905900A (en) 1997-04-30 1999-05-18 International Business Machines Corporation Mobile client computer and power management architecture
JP2001109729A (ja) 1999-10-12 2001-04-20 Nec Corp マルチプロセッサシステムにおける消費電力制御装置および方法
US20020194251A1 (en) 2000-03-03 2002-12-19 Richter Roger K. Systems and methods for resource usage accounting in information management environments
US6760852B1 (en) 2000-08-31 2004-07-06 Advanced Micro Devices, Inc. System and method for monitoring and controlling a power-manageable resource based upon activities of a plurality of devices
US7143300B2 (en) 2001-07-25 2006-11-28 Hewlett-Packard Development Company, L.P. Automated power management system for a network of computers
AU2002317618A1 (en) * 2001-08-06 2003-02-24 Mercury Interactive Corporation System and method for automated analysis of load testing results
US6839854B2 (en) 2001-08-27 2005-01-04 Intel Corporation Voltage regulation for computer system components that increases voltage level when a component enters a sleep state as indicated by a power state status signal
US7111179B1 (en) 2001-10-11 2006-09-19 In-Hand Electronics, Inc. Method and apparatus for optimizing performance and battery life of electronic devices based on system and application parameters
DE60106467T2 (de) 2001-12-14 2006-02-23 Hewlett-Packard Development Co., L.P., Houston Verfahren zum Installieren Überwachungsagenten, System und Computerprogramm von Objekten in einem IT-Netz Überwachung
US20030163745A1 (en) 2002-02-27 2003-08-28 Kardach James P. Method to reduce power in a computer system with bus master devices
US7028200B2 (en) 2002-05-15 2006-04-11 Broadcom Corporation Method and apparatus for adaptive power management of memory subsystem
GB0211764D0 (en) 2002-05-22 2002-07-03 3Com Corp Automatic power saving facility for network devices
US7093146B2 (en) 2002-07-31 2006-08-15 Hewlett-Packard Development Company, L.P. Power management state distribution using an interconnect
US7403511B2 (en) 2002-08-02 2008-07-22 Texas Instruments Incorporated Low power packet detector for low power WLAN devices
US6971033B2 (en) 2003-01-10 2005-11-29 Broadcom Corporation Method and apparatus for improving bus master performance
US7418517B2 (en) 2003-01-30 2008-08-26 Newisys, Inc. Methods and apparatus for distributing system management signals
EP1480378A1 (en) * 2003-05-23 2004-11-24 Alcatel Method for setting up a generic protocol relationship between network elements in a telecom network
US6965776B2 (en) 2003-11-21 2005-11-15 Motorola, Inc. Portable communication device and network and methods therefore
US20050136961A1 (en) 2003-12-17 2005-06-23 Telefonaktiebolaget Lm Ericsson (Publ), Power control method
US7363517B2 (en) 2003-12-19 2008-04-22 Intel Corporation Methods and apparatus to manage system power and performance
US7406691B2 (en) * 2004-01-13 2008-07-29 International Business Machines Corporation Minimizing complex decisions to allocate additional resources to a job submitted to a grid environment
US7272741B2 (en) 2004-06-02 2007-09-18 Intel Corporation Hardware coordination of power management activities
US7418608B2 (en) 2004-06-17 2008-08-26 Intel Corporation Method and an apparatus for managing power consumption of a server
US7908313B2 (en) 2004-07-21 2011-03-15 The Mathworks, Inc. Instrument-based distributed computing systems
US7386739B2 (en) 2005-05-03 2008-06-10 International Business Machines Corporation Scheduling processor voltages and frequencies based on performance prediction and power constraints
US7444526B2 (en) 2005-06-16 2008-10-28 International Business Machines Corporation Performance conserving method for reducing power consumption in a server system
US7475262B2 (en) 2005-06-29 2009-01-06 Intel Corporation Processor power management associated with workloads
US7562234B2 (en) * 2005-08-25 2009-07-14 Apple Inc. Methods and apparatuses for dynamic power control
US7861068B2 (en) 2006-03-07 2010-12-28 Intel Corporation Method and apparatus for using dynamic workload characteristics to control CPU frequency and voltage scaling
US20070220293A1 (en) 2006-03-16 2007-09-20 Toshiba America Electronic Components Systems and methods for managing power consumption in data processors using execution mode selection
US8190682B2 (en) 2006-03-31 2012-05-29 Amazon Technologies, Inc. Managing execution of programs by multiple computing systems
US7539881B2 (en) 2006-04-15 2009-05-26 Hewlett-Packard Development Company, L.P. System and method for dynamically adjusting power caps for electronic components based on power consumption
US7555666B2 (en) 2006-05-04 2009-06-30 Dell Products L.P. Power profiling application for managing power allocation in an information handling system
US7827738B2 (en) * 2006-08-26 2010-11-09 Alexander Abrams System for modular building construction
US7694160B2 (en) * 2006-08-31 2010-04-06 Ati Technologies Ulc Method and apparatus for optimizing power consumption in a multiprocessor environment
RU2477524C2 (ru) * 2006-09-22 2013-03-10 Конинклейке Филипс Электроникс Н.В. Способы выбора признаков, использующие основанные на группе классификаторов генетические алгоритмы
US8370929B1 (en) * 2006-09-28 2013-02-05 Whitehat Security, Inc. Automatic response culling for web application security scan spidering process
US8055343B2 (en) 2006-10-20 2011-11-08 Cardiac Pacemakers, Inc. Dynamic battery management in an implantable device
US7844838B2 (en) * 2006-10-30 2010-11-30 Hewlett-Packard Development Company, L.P. Inter-die power manager and power management method
US7793126B2 (en) 2007-01-19 2010-09-07 Microsoft Corporation Using priorities and power usage to allocate power budget
JP4370336B2 (ja) 2007-03-09 2009-11-25 株式会社日立製作所 低消費電力ジョブ管理方法及び計算機システム
US7941681B2 (en) * 2007-08-17 2011-05-10 International Business Machines Corporation Proactive power management in a parallel computer
JP5029823B2 (ja) * 2007-09-06 2012-09-19 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置、消費電力管理システム、消費電力管理方法およびプログラム
JP4935595B2 (ja) 2007-09-21 2012-05-23 富士通株式会社 ジョブ管理方法、ジョブ管理装置およびジョブ管理プログラム
CN101419495B (zh) * 2007-10-22 2012-05-30 国际商业机器公司 降低计算机系统中i/o功率的方法和装置,以及计算机系统
US8046600B2 (en) 2007-10-29 2011-10-25 Microsoft Corporation Collaborative power sharing between computing devices
EP2208137A1 (en) * 2007-10-31 2010-07-21 International Business Machines Corporation Method, system and computer program for distributing a plurality of jobs to a plurality of computers
US8041521B2 (en) 2007-11-28 2011-10-18 International Business Machines Corporation Estimating power consumption of computing components configured in a computing system
US7971084B2 (en) * 2007-12-28 2011-06-28 Intel Corporation Power management in electronic systems
US8595516B2 (en) 2008-01-03 2013-11-26 Broadcom Corporation System and method for global power management in a power over ethernet chassis
US8793786B2 (en) * 2008-02-08 2014-07-29 Microsoft Corporation User indicator signifying a secure mode
US8001403B2 (en) 2008-03-14 2011-08-16 Microsoft Corporation Data center power management utilizing a power policy and a load factor
US8301742B2 (en) 2008-04-07 2012-10-30 International Business Machines Corporation Systems and methods for coordinated management of power usage and runtime performance in performance-managed computing environments
AU2008355092A1 (en) 2008-04-21 2009-10-29 Adaptive Computing Enterprises, Inc. System and method for managing energy consumption in a compute environment
US9405348B2 (en) * 2008-04-21 2016-08-02 Adaptive Computing Enterprises, Inc System and method for managing energy consumption in a compute environment
US7756652B2 (en) * 2008-04-24 2010-07-13 Oracle America, Inc. Estimating a power utilization of a computer system
US8296773B2 (en) * 2008-06-30 2012-10-23 International Business Machines Corporation Systems and methods for thread assignment and core turn-off for integrated circuit energy efficiency and high-performance
US8255709B2 (en) 2009-02-06 2012-08-28 Hewlett-Packard Development Company, L.P. Power budgeting for a group of computer systems using utilization feedback for manageable components
US8365175B2 (en) 2009-03-10 2013-01-29 International Business Machines Corporation Power management using dynamic application scheduling
US8589931B2 (en) 2009-03-18 2013-11-19 International Business Machines Corporation Environment based node selection for work scheduling in a parallel computing system
US9015726B2 (en) * 2009-04-03 2015-04-21 International Business Machines Corporation Scheduling jobs of a multi-node computer system based on environmental impact
US8984523B2 (en) 2009-05-26 2015-03-17 Telefonaktiebolaget L M Ericsson (Publ) Method for executing sequential code on the scalable processor at increased frequency while switching off the non-scalable processor core of a multicore chip
US8904394B2 (en) 2009-06-04 2014-12-02 International Business Machines Corporation System and method for controlling heat dissipation through service level agreement analysis by modifying scheduled processing jobs
US8276012B2 (en) 2009-06-30 2012-09-25 International Business Machines Corporation Priority-based power capping in data processing systems
JP2011013764A (ja) * 2009-06-30 2011-01-20 Hitachi Ltd 消費電力管理方法、消費電力管理システムおよびプログラム
US8589709B2 (en) 2009-07-23 2013-11-19 Carnegie Mellon University Systems and methods for managing power consumption and performance of a processor
US8443209B2 (en) 2009-07-24 2013-05-14 Advanced Micro Devices, Inc. Throttling computational units according to performance sensitivity
CN101694631B (zh) * 2009-09-30 2016-10-05 曙光信息产业(北京)有限公司 实时作业调度系统及方法
US8224993B1 (en) 2009-12-07 2012-07-17 Amazon Technologies, Inc. Managing power consumption in a data center
US8336056B1 (en) 2009-12-22 2012-12-18 Gadir Omar M A Multi-threaded system for data management
US8341441B2 (en) 2009-12-24 2012-12-25 International Business Machines Corporation Reducing energy consumption in a cloud computing environment
US8429433B2 (en) 2010-01-15 2013-04-23 International Business Machines Corporation Dynamically adjusting an operating state of a data processing system running under a power cap
US9052895B2 (en) 2010-04-07 2015-06-09 International Business Machines Power budget allocation in multi-processor systems
US8612984B2 (en) * 2010-04-28 2013-12-17 International Business Machines Corporation Energy-aware job scheduling for cluster environments
US8412479B2 (en) * 2010-06-29 2013-04-02 Intel Corporation Memory power estimation by means of calibrated weights and activity counters
US8589932B2 (en) * 2010-07-02 2013-11-19 International Business Machines Corporation Data processing workload control
US8464080B2 (en) 2010-08-25 2013-06-11 International Business Machines Corporation Managing server power consumption in a data center
US8694810B2 (en) 2010-09-22 2014-04-08 International Business Machines Corporation Server power management with automatically-expiring server power allocations
US8627322B2 (en) * 2010-10-29 2014-01-07 Google Inc. System and method of active risk management to reduce job de-scheduling probability in computer clusters
US8868936B2 (en) * 2010-11-29 2014-10-21 Cisco Technology, Inc. Dynamic power balancing among blade servers in a chassis
KR20120072224A (ko) 2010-12-23 2012-07-03 한국전자통신연구원 전력 획득 예측에 기반한 센서 노드의 전원 제어 장치 및 방법
US8645733B2 (en) * 2011-05-13 2014-02-04 Microsoft Corporation Virtualized application power budgeting
US8904209B2 (en) 2011-11-14 2014-12-02 Microsoft Corporation Estimating and managing power consumption of computing devices using power models
US9244721B2 (en) * 2011-11-24 2016-01-26 Hitachi, Ltd. Computer system and divided job processing method and program
CN103136055B (zh) 2011-11-25 2016-08-03 国际商业机器公司 用于在数据库服务中控制对计算资源的使用的方法和装置
US8689220B2 (en) * 2011-11-30 2014-04-01 International Business Machines Corporation Job scheduling to balance energy consumption and schedule performance
US9218035B2 (en) 2012-02-10 2015-12-22 University Of Florida Research Foundation, Inc. Renewable energy control systems and methods
US9262232B2 (en) 2012-02-29 2016-02-16 Red Hat, Inc. Priority build execution in a continuous integration system
KR20160114195A (ko) 2012-05-14 2016-10-04 인텔 코포레이션 컴퓨팅 시스템의 동작 관리
DE112012006377B4 (de) 2012-05-17 2022-02-24 Intel Corporation Energieverbrauch und Leistung von Computersystemen steuern
CN102685808A (zh) * 2012-05-18 2012-09-19 电子科技大学 一种基于功率控制的分布式聚簇方法
US8843773B2 (en) 2012-06-13 2014-09-23 Cisco Technology, Inc. System and method for automated service profile placement in a network environment
US9342376B2 (en) 2012-06-27 2016-05-17 Intel Corporation Method, system, and device for dynamic energy efficient job scheduling in a cloud computing environment
CN102819460B (zh) * 2012-08-07 2015-05-20 清华大学 一种基于预算功率指导的高能效gpu集群系统调度方法
JP5787365B2 (ja) * 2012-09-18 2015-09-30 Necフィールディング株式会社 電力制御装置、電力制御システム、電力制御方法及びプログラム
US8939654B2 (en) 2012-09-27 2015-01-27 Adc Telecommunications, Inc. Ruggedized multi-fiber fiber optic connector with sealed dust cap
GB2506626B (en) 2012-10-03 2018-02-07 Imperial Innovations Ltd Frequency estimation
WO2014054079A1 (en) 2012-10-05 2014-04-10 Hitachi, Ltd. Job management system and job control method
US20140114107A1 (en) 2012-10-24 2014-04-24 Lummus Technology Inc. Use of hydrocarbon diluents to enhance conversion in a dehydrogenation process at low steam/oil ratios
US9110972B2 (en) * 2012-11-07 2015-08-18 Dell Products L.P. Power over ethernet dynamic power allocation system
US9250858B2 (en) * 2013-02-20 2016-02-02 International Business Machines Corporation Dual-buffer serialization and consumption of variable-length data records produced by multiple parallel threads
US9009677B2 (en) * 2013-03-18 2015-04-14 Microsoft Technology Licensing, Llc Application testing and analysis
US9329910B2 (en) 2013-06-20 2016-05-03 Seagate Technology Llc Distributed power delivery
US9335751B1 (en) * 2013-08-28 2016-05-10 Google Inc. Dynamic performance based cooling control for cluster processing devices
JP6201530B2 (ja) * 2013-08-30 2017-09-27 富士通株式会社 情報処理システム、ジョブ管理装置、ジョブ管理装置の制御プログラム、及び、情報処理システムの制御方法
US9753520B2 (en) 2013-12-23 2017-09-05 Dell Products, L.P. Predictive power capping and power allocation to computing nodes in a rack-based information handling system
US9189273B2 (en) 2014-02-28 2015-11-17 Lenovo Enterprise Solutions PTE. LTD. Performance-aware job scheduling under power constraints
US9336106B2 (en) * 2014-04-17 2016-05-10 Cisco Technology, Inc. Dynamically limiting bios post for effective power management

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130016237A (ko) * 2010-03-25 2013-02-14 마이크로소프트 코포레이션 분산 컴퓨팅에서의 전력 공급 관리

Also Published As

Publication number Publication date
CN106537287A (zh) 2017-03-22
EP3627285A1 (en) 2020-03-25
JP6701175B2 (ja) 2020-05-27
US20160054774A1 (en) 2016-02-25
EP3183629B1 (en) 2023-05-31
CN107003706B (zh) 2021-06-08
EP3183628A4 (en) 2018-06-13
EP3183629A1 (en) 2017-06-28
EP4016248A1 (en) 2022-06-22
KR102207050B1 (ko) 2021-01-25
CN106537348A (zh) 2017-03-22
EP3183654A1 (en) 2017-06-28
JP6386165B2 (ja) 2018-09-05
KR102213555B1 (ko) 2021-02-08
CN111176419B (zh) 2024-04-19
US10712796B2 (en) 2020-07-14
US20160054783A1 (en) 2016-02-25
KR20170021338A (ko) 2017-02-27
US10289183B2 (en) 2019-05-14
US9927857B2 (en) 2018-03-27
US20160054781A1 (en) 2016-02-25
CN106537348B (zh) 2020-04-14
US20160054780A1 (en) 2016-02-25
US9575536B2 (en) 2017-02-21
EP3183654A4 (en) 2018-04-18
WO2016028371A1 (en) 2016-02-25
CN107003706A (zh) 2017-08-01
CN111176419A (zh) 2020-05-19
EP3183628A1 (en) 2017-06-28
EP3183629A4 (en) 2018-05-02
US20160054775A1 (en) 2016-02-25
CN106537287B (zh) 2019-12-17
JP2017531245A (ja) 2017-10-19
US20160054779A1 (en) 2016-02-25
WO2016028375A1 (en) 2016-02-25
WO2016028374A1 (en) 2016-02-25
JP2017530449A (ja) 2017-10-12
US9921633B2 (en) 2018-03-20

Similar Documents

Publication Publication Date Title
KR102207050B1 (ko) 분산 컴퓨터 시스템에 전력 할당의 변화가 있을 때 중단될 수 있고 중단될 수 없는 작업들을 관리하는 방법들 및 장치
US11582166B2 (en) Systems and methods for provision of a guaranteed batch
US8020161B2 (en) Method and system for the dynamic scheduling of a stream of computing jobs based on priority and trigger threshold
US9323584B2 (en) Load adaptive data recovery pipeline
US20130055283A1 (en) Workload Performance Control
US20140137122A1 (en) Modified backfill scheduler and a method employing frequency control to reduce peak cluster power requirements
CA2654418A1 (en) Resource-based scheduler
KR101603711B1 (ko) 그래픽 처리 장치의 동작을 위한 작업 할당 시스템 및 방법
EP2595057A2 (en) Modified backfill scheduler and a method employing frequency control to reduce peak cluster power requirements

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant