CN103838668B - 关联能量消耗与虚拟机 - Google Patents

关联能量消耗与虚拟机 Download PDF

Info

Publication number
CN103838668B
CN103838668B CN201310594796.3A CN201310594796A CN103838668B CN 103838668 B CN103838668 B CN 103838668B CN 201310594796 A CN201310594796 A CN 201310594796A CN 103838668 B CN103838668 B CN 103838668B
Authority
CN
China
Prior art keywords
processor core
task
processor
energy
power
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310594796.3A
Other languages
English (en)
Other versions
CN103838668A (zh
Inventor
B·布罗克
T·格洛克勒
C·R·勒夫格
K·拉加玛尼
G·S·斯蒂尔
M·S·艾伦-韦尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN103838668A publication Critical patent/CN103838668A/zh
Application granted granted Critical
Publication of CN103838668B publication Critical patent/CN103838668B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/301Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3017Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • G06F11/3062Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based monitoring
    • 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)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)
  • Power Sources (AREA)

Abstract

本发明公开关联处理器和处理器核心能量消耗与任务(诸如虚拟机)。各种事件使跟踪记录被写入到用于处理器的跟踪缓冲器。读取与使用处理器的处理器核心的任务关联的标识符。此外,还读取与处理器核心的能量消耗关联的一个或者多个值。响应于事件,向跟踪缓冲器存储器写入与处理器核心的能量消耗关联的一个或者多个值以及标识符。

Description

关联能量消耗与虚拟机
技术领域
本发明主题的实施例总体涉及计算机领域,并且更具体地,涉及关联在计算机上运行的虚拟机或者其它任务的能量消耗。
背景技术
用于大型数据中心和云计算环境的运营成本的很大一部分和与数据中心或者云服务器关联的能量成本有关。在这样的环境中,可以指派虚拟机来代表用户运行任务。通常指派虚拟机在多核心系统的一个或者多个核心上运行。数据中心或者云运营商可能希望针对虚拟机在处理器核心上运行时消耗的能量向用户开账单。然而目前没有用于直接测量处理器核心消耗的能量的方式。作为结果,先前系统已经使用各种模型来估计虚拟机的功率消耗。然而这样的模型通常使用未必与能量消耗良好相关的基于性能的值。
发明内容
公开各种实施例,在这些实施例中确定用于任务(诸如虚拟机)的能量消耗。各种事件使跟踪记录被写入到用于处理器的跟踪缓冲器。读取与使用处理器的处理器核心的任务关联的标识符。此外,还读取与处理器核心的能量消耗关联的一个或者多个值。响应于事件,向跟踪缓冲器存储器写入与处理器核心的能量消耗关联的一个或者多个值以及标识符。
附图说明
可以通过参照附图更好地理解本实施例并且使许多目的、特征和优点为本领域技术人员所清楚。
图1描绘根据实施例的用于关联能量消耗与任务的系统。
图2描绘根据实施例的小芯片(chiplet)。
图3描绘在一些实施例中使用的跟踪缓冲器记录。
图4是图示用于关联能量消耗与虚拟机的方法的流程图。
图5是图示用于确定用于任务(诸如虚拟机)的能量消耗的方法的流程图。
图6是图示用于根据缩放因子调整能量消耗值的方法的流程图。
具体实施方式
以下描述包括体现本发明主题的技术的示例性系统、方法、技术、指令序列和计算机程序产品。然而理解无这些具体细节仍然可以实现描述的实施例。例如虽然示例涉及关联处理器核心的能量消耗与虚拟机,但是处理器核心的能量消耗可以与其它任务或者任务组关联。在其它实例中,并未具体示出众所周知的指令示例、协议、结构和技术以免模糊描述。
一般而言,实施例提供一种用于关联处理器核心的能量消耗与在处理器核心上运行的任务(例如虚拟机)的手段。各种传感器点检测或者测量与处理器核心的能量消耗关联的活动,这些处理器核心代表在系统上运行的虚拟机执行指令并且访问存储器。向处理器核心提供用于在核心上运行的虚拟机的标识符。多种事件可以触发向存储器写入跟踪缓冲器记录,其中跟踪缓冲器包括与核心和在核心上运行的虚拟机在写入跟踪缓冲器记录时的能量消耗关联的数据。可以聚合并且分析跟踪缓冲器中的记录以确定与在系统上运行的虚拟机关联的能量消耗。
图1描绘根据实施例的用于关联能量消耗与任务的系统100。在一些实施例中,系统10包括处理器102、存储器130和管理程序(hypervisor)140并且可以可选地包括能量管理单元150。
处理器102是多核心处理器,其中在小芯片104中提供处理器核心。虽然在图1中图示三个小芯片(例如小芯片104A、104B和104C),但是从本公开内容受益的本领域技术人员将理解处理器102可以具有更多或者更少小芯片104。除了小芯片104之外,处理器102还包括跟踪存储器110和功率管理单元120。
小芯片104包括处理器核心、存储器(例如L2和L3缓存)和用于处理器核心的支持逻辑单元。小芯片104也包括功率代理(power proxy)单元106和任务标识(ID)寄存器108。任务ID寄存器108是专用寄存器,该专用寄存器存储用于在小芯片104的处理器核心上执行的任务的标识符。功率代理106收集小芯片104的处理器核心的能量消耗并且生成与该能量消耗关联的数据。某些事件(诸如定时器到期、电压改变等)使功率代理106向处理器102的跟踪存储器110中的与小芯片关联的小芯片队列112写入跟踪缓冲器记录114。跟踪存储器110包含用于处理器102上的每个小芯片的小芯片队列112。跟踪缓冲器记录114包括和与小芯片关联的能量消耗有关的各种数据元素。以下参照图3提供关于跟踪缓冲记录114的数据元素的更多细节。在一些实施例中,小芯片队列112是被配置用于存储八个跟踪缓冲器记录114的圆形队列。在小芯片队列112中维持的跟踪缓冲器记录114的数目可以根据跟踪存储器110的大小和处理器102上的小芯片数目而变化。希望跟踪缓冲器记录的数目大到足以避免数据在它被功率管理单元120处理之前被重写。跟踪存储器110可以如图1中所示是处理器102的一部分。从公开内容受益的本领域技术人员将理解跟踪存储器110可以位于处理器102可访问的其它部件上。
功率管理单元120从小芯片队列112定期地读取跟踪记录114并且处理数据使得来自与相同任务ID关联的跟踪记录114的数据被聚合在一起。在一些实施例中,功率管理单元每32毫秒读取并且处理跟踪记录。希望选择如下间隔,该间隔避免数据在功率管理单元120可以处理队列112中的跟踪记录之前在该跟踪记录中被重写。随着处理跟踪记录,功率管理单元递增用于队列的队列指针以指向下一跟踪记录。功率管理单元120然后向管理程序140可访问的存储器130中的能量阵列132添加按照任务ID聚合的数据。能量阵列132维持用于任务的能量消耗数据134并且在一些实施例中根据任务标识符来编索引。例如在一些实施例中,可以通过包括虚拟机标识符的任务ID对能量阵列132编索引。功率管理单元120通过使用任务标识符作为进入能量阵列中的索引将用于任务的当前处理的能量消耗值与已经存储于能量阵列132中的值相加来积累能量消耗值。
管理程序140管理虚拟化的操作环境并且提供用于系统100的虚拟化的资源(例如虚拟化的硬件资源)。管理程序140管理在系统100的各种计算机上执行的虚拟机(也称为分区)。虚拟机在虚拟机内运行操作系统和应用。在一个虚拟机上运行的操作系统和应用可以完全不同于在其它虚拟机上运行的操作系统和应用。例如一个虚拟机可以在AIX操作系统上运行记账系统,而另一虚拟机可以在Linux操作系统上运行文件服务器应用。备选地,虚拟机可以运行与另一虚拟机相同的操作系统和应用并且在另一虚拟机中的故障或者超负荷的情况下用作备用。从虚拟机的观点来看,虚拟机表现为实际上控制下层硬件的独立计算机,每个虚拟机与其它虚拟机共享硬件资源。
在一些实现方式中,在管理程序140调度虚拟机以在处理器核心上运行时,管理程序140向用于处理器核心的小芯片104的任务ID寄存器108写入与虚拟机关联的虚拟机标识符,该处理器核心将执行虚拟机。功率代理106从任务ID寄存器108读取虚拟机标识符并且在用于小芯片104的能量消耗值被写入到跟踪存储器110中的小芯片队列112时在跟踪缓冲器记录114中存储虚拟机标识符。
如图1中所示,在一些实施例中,功率管理单元120是在处理器102上提供的片上控制器。在备选实施例中,功率管理单元120可以与处理器102分离。在更多备选实施例中,功率管理单元120提供的与处理跟踪存储器110中的跟踪记录114有关的功能可以由管理程序140执行。在这样的实施例中,管理程序140直接访问跟踪存储器110以处理记录。
能量管理单元150跨越多个计算系统提供能量管理功能。例如能量管理单元150可以提供用于数据中心或者用于支持云计算环境的计算系统的能量管理功能。能量管理单元的示例是来自IBM公司的IBM Systems Director Active Energy Manager。在一些实施例中,能量管理单元15定期地查询管理程序140以获得与管理程序管理的任务(例如虚拟机)关联的能量消耗数据。
图2提供关于根据实施例的小芯片104的更多细节。小芯片104包括处理器核心202、L2缓存存储器204和L3缓存存储器206。处理器核心202、L2缓存存储器204和L3缓存存储器206各自包括一个或者多个活动感测点208、210和212。活动感测点检测可以与部件的能量消耗相关的事件。例如活动感测点208可以检测与处理器核心功能(诸如加载和存储操作、指令分派、定点运算、浮点运算和其它处理器核心功能)关联的事件。活动感测点210和212可以检测与L2和L3缓存读取和写入关联的事件。这些事件中的每个事件具有关联的能量消耗值。在活动感测点208、210和212检测到事件时,功率代理106可以递增与事件关联的事件计数器216。在一些实施例中,功率代理106可以使用活动权值214对在感测点208、210和212检测的各种活动加权。活动权值214根据与特定事件关联的能量消耗相对于其它事件调整事件计数器216。例如可以基于浮点运算比缓存查找使用更多功率向与浮点事件关联的计数器比与缓存查找事件关联的计数器加权更多。
活动权值214可以可配置。例如可以在管理程序140或者配置工具可以写入的存储器或者寄存器中维持活动权值214。
一般而言,可以通过对建模不同工作量以及回归测试来确定事件计数器216中计数的事件和用于活动权值214的具体值以确定如下活动和加权的组合,这些活动和加权提供与测试的系统的实际能量消耗的最强相关性。在一些实施例中,事件计数器可以与分派的指令、完成的指令、执行寄存器文件访问、执行流水线问题类型、指令提取单元事件、加载-存储单元缓存事件、加载-存储单元D-ERAT(有效到实际数据地址转换)事件、加载-存储单元预提取事件、L2缓存读取/写入和L3缓存读取/写入中的一项或者多项的各种组合关联。从公开内容受益的本领域技术人员将理解可以对其它事件计数。
以上描述的事件可以根据电压源而与各种电压域关联。例如在一些实施例中,Vdd电压域包括与向核心和缓存逻辑供电的电压轨关联的事件,而Vcs电压域包括与向L2和L3缓存供电的Vcs轨关联的事件。Vdd和Vcs电压二者可以由VRM(电压调节器模块)控制并且可以随时间变化。从公开内容受益的本领域技术人员将理解存在的电压域数目和类型可以变化。
活动计数器220代表与特定电压域关联的事件的加权求和。因此,对于Vdd电压域:
Vdd活动计数=event_counter1*event_weight1+…+
event_counterN*eventweightN
其中在计算中包括的事件计数器是与Vdd电压关联的那些事件。可以针对与其它电压域(例如Vcs电压域)关联的事件计算相似的活动计数。
在一些实施例中,小芯片104包括P状态(功率状态)改变寄存器218。P状态改变寄存器218提供一种用于管理程序140用信号通知电压改变点的机制。这样的改变可以使功率代理106向跟踪存储器110中的与小芯片关联的小芯片队列112写入新的跟踪缓冲器记录元素114。
图3描绘用于跟踪缓冲器记录114的示例数据结构。在一些实施例中,跟踪缓冲器记录114中的字段包括间隔定时器302、任务ID304、空闲状态306、一个或者多个活动计数器308、存储器活动计数器310、平均频率计数312、内部VRM(电压调节器模块)电压314、外部VRM电压316、事件ID 318、核心温度320和序列号322。
间隔定时器302存储如下值,该值代表自从功率代理上次写入跟踪缓冲器记录114起的时间间隔。
任务ID 304是在写入跟踪缓冲器记录114时在核心上运行的任务的任务ID。可以从任务ID寄存器108获得这一个值。
空闲状态306是如下值,该值代表处理器核心在写入跟踪缓冲器记录114时的空闲状态。在一些实施例中,空闲状态306的值指示用于处理器核心的非空闲状态、瞌睡状态(nap state)、睡眠状态、“费劲(winkle)”状态(即更深度睡眠)或者唤醒状态。
活动计数器308存储用于由功率代理106维持的一个或者多个活动计数器220的值。如以上描述的那样,在一些实施例中,可以将与特定电压域关联的计数器求和成一个元素。可以向活动计数器308写入用于与电压域关联的各种活动计数器的计算和加权的求和。存储器活动计数器310是与由处理器核心执行的存储器读取和写入关联的计数器。
平均频率计数312是处理器核心在测量的时间间隔内的平均频率。系统的各种部件可以改变电压和频率二者。例如在小芯片104上的性能管理程序或者安全管理程序可以请求电压或者频率改变。此外,管理程序140可以请求电压或者频率改变。如果频率已经在测量的间隔内改变,则使用平均频率计数在与瞬时或者当前频率比较时可以提供更准确能量消耗测量。
内部VRM(电压调节器模块)电压314是用于处理器102的内部VRM的电压值。内部VRM控制用于处理器102上的部件的电压。
外部VRM电压316是用于外部VRM的电压值。外部VRM控制向处理器102供应的电压。
事件ID 318是如下值,该值代表触发功率代理单元106写入跟踪记录114的事件。在一些实施例中,事件可以包括定时器到期、任务ID寄存器的值改变(这指示由处理器核心执行的任务已经改变)、进入空闲状态、退出空闲状态、内部或者外部电压改变或者内部或者外部VRM状态改变。从公开内容受益的本领域技术人员将理解其它事件可以使功率代理单元106向小芯片队列112写入新跟踪缓冲器记录114。在事件指示值已经改变(例如任务ID改变、电压改变等)的情况下,将在改变出现之前使用该值来写入跟踪记录114。
核心温度320是如下值,该值代表由用于处理器核心的温度传感器提供的温度。温度与处理器和有关部件的能量消耗良好相关并且可以用作输入以确定估计的功率消耗。
序列号322是如下值,该值指示跟踪缓冲器记录114的序列号,并且该序列号32可以由功率管理单元用来检测数据丢失或者无效记录。在一些实施例中,序列号322包括无效位,该无效位指示队列中的记录是否包含有效数据或者可用于写入。
以上描述的跟踪缓冲器记录元素是在一个示例实施例中包括的元素的示例。从公开内容受益的本领域技术人员将理解并非以上所有元素将在每个实施例中存在并且可以在备选实施例中在跟踪缓冲器记录中包括其它元素。
图4是图示用于关联能量消耗与任务(诸如虚拟机)的方法400的流程图。该方法始于块402,其中执行该方法的系统或者部件确定事件已经出现。如以上所言,事件可以是定时器到期、任务ID寄存器的值改变(这指示处理器核心执行的任务已经改变)、进入空闲状态、退出空闲状态、内部或者外部电压改变或者内部或者外部VRM状态改变中的任一项。
可以响应于在块402检测到事件来执行块404-408。事件可以是定时器到期、与在处理器核心上运行的任务关联的任务ID的值改变(因此指示处理器核心执行的任务已经改变)、进入空闲状态、退出空闲状态、内部或者外部电压改变或者内部或者外部VRM状态改变。从公开内容受益的本领域技术人员将理解可以检测其它事件。
在块404,读取与在处理器核心上执行的任务关联的任务标识符。在一些实施例中,在向处理器核心指派任务时从寄存器读取管理程序或者操作系统写入的任务标识符。任务标识符可以是任务专属标识符,诸如虚拟机标识符或者进程标识符。备选地,任务标识符可以与出于确定能量消耗的目的而将要分组在一起的一组任务关联。
在块406,确定代表自从功率代理单元写入的上个跟踪记录起的能量使用的能量使用值。如以上讨论的那样,这样的值可以包括代表能量消耗事件的活动计数器,也可以确定电压值和频率值。
在块408,向跟踪缓冲器中的小芯片队列写入在块406确定的能量使用值。在一些实施例中,写入跟踪缓冲器记录114(图1和3)。在预期向跟踪缓冲器中的小芯片队列的下一写入时推进用于小芯片队列的指针。
可以与块402-408独立地执行块410。在一些实施例中,可以以周期性的间隔执行块410。例如可以每250微秒执行块410。在块410,从跟踪缓冲器读取一个或者多个记录。在一些实施例中,处理每个可用记录以根据记录中的数据确定由记录代表的总能量消耗。例如可以将用于记录中的与特定电压域关联的活动计数器中的每个活动计数器的能量消耗求和以确定与记录关联的总能量消耗。可以基于记录中的电压、温度和频率值调整每个电压域活动计数器对记录代表的总能量消耗的贡献。例如在一些实施例中,可以根据下式确定用于电压域Vdom的跟踪记录能量:
其中Vdom_voltage是用于域的测量电压,Vdom_reference是在对参考芯片执行的制造测试期间确定的参考电压,frequency是来自跟踪记录的平均频率,temprecord是来自跟踪记录的处理器核心温度,tempreference是在以操作电压Vdom_reference对参考芯片的制造测试期间测量的芯片的核心的温度。Pref是在制造测试期间从参考芯片测量的泄漏功率。可以在芯片在Vdom_reference和tempreference操作时测量Pref。参数a、b、c、d、e和f是在回归测试参考芯片期间确定的拟合参数。可以在用于芯片的数据区域(例如重要产品数据(VPD)区域)中存储拟合参数和参考值。可以为记录中的电压域中的每个电压域(例如Vdd、Vcs电压等)执行以上计算。可以将如根据以上公式计算的用于每个域的能量值求和以产生与记录关联的总能量消耗。
以上公式包括与泄漏功率和时钟功率相关的参数,因此可以和与任务关联的功率消耗一起而包括与泄漏功率和时钟功率关联的能量消耗。从公开内容受益的本领域技术人员将理解考虑泄漏功率和时钟功率的其它手段可以被使用并且在本发明主题的范围内。
用于记录的总能量消耗代表在由记录代表的时间间隔期间与关联于记录的任务关联的总能量消耗。在一些实施例中,计算以毫焦耳为单位的总计值。可以在由记录中的任务标识符编索引的能量阵列132的值中积累这一计算的总能量消耗,由此提供用于任务的能量消耗运行总计。
图5是图示用于确定用于任务(诸如虚拟机)的能量消耗的方法500的流程图。方法500在块502通过确定在空闲状态的存储器能量消耗来开始。基于即使任务(诸如虚拟机)空闲、任务仍然占用并且使用存储器,确定在空闲状态的存储器能量消耗允许即使任务当前空闲、仍然向任务分配与存储器关联的能量使用。一旦当系统启动时,可以执行由块502执行的操作,并且不重复直至之后的重启或者存储器大小改变。
在块504,接收与任务关联的能量值。在一些实施例中,可以使用任务ID作为进入能量阵列的索引来读取阵列,该阵列包含与任务的能量使用关联的计数器值的记录。
在块506,使用在块504确定的值来确定任务能量消耗。可以通过从能量阵列132读取用于任务的当前能量消耗来确定用于任务的能量消耗。此外,可以向任务分配空闲存储器能量消耗。此外,向任务分配的存储器数量可以用来确定由与存储器有关的任务消耗的能量。
图6是图示用于根据缩放因子调整能量消耗值的方法600的流程图。该方法在块602通过从能量阵列读取能量消耗计数器、电压和频率来开始。
在块604,通过跨越在处理器的处理器核心上执行的所有任务对值求和或者平均来确定跨越处理器的所有任务和处理器核心的估计的能量消耗值。
在块606,读取用于处理器的实际能量消耗值。可以从测量向处理器递送的能量的传感器确定实际能量消耗值。
在块608,根据用于处理器的估计能量消耗和实际能量消耗值确定缩放因子。
在块610,可以将缩放因子应用于根据以上描述的方法400或者500确定的将来能量值。在一些实施例中,可以以周期性间隔重复方法600以调整缩放因子。
所属技术领域的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。
也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令提供实现流程图和/或框图中的一个或多个方框中指定的功能/动作的过程。
尽管参照各种实现方式和运用来描述实施例,但是将理解这些实施例为示例并且本发明主题内容的范围不限于此。一般而言,可以用与任何硬件系统一致的设施或者硬件系统实施如这里描述的用于基于关联处理器核心的能量消耗与任务(诸如虚拟机)的技术。许多变化、修改、添加和改进是可能的。
可以为这里描述为单个实例的部件、操作或者结构提供多个实例。最后,在各种部件、操作和数据存储库之间的边界有些任意,并且在具体示例配置的背景中举例说明特定操作。其它功能分配被设想并且可以落入本发明主题内容的范围内。一般而言,可以实施在示例配置中呈现为单独部件的结构和功能为组合结构或者部件。类似地,可以实施呈现为单个部件的结构和功能为单独部件。这些和其它变化、修改、添加和改进可以落入本发明主题内容的范围内。

Claims (18)

1.一种用于关联处理器核心的能量消耗和任务的方法,包括:
接收与使用处理器核心的任务关联的标识符;
读取与所述处理器核心的能量消耗关联的能量消耗数据;
检测事件的出现;
响应于检测所述事件,向跟踪存储器写入与所述处理器核心的所述能量消耗关联的所述能量消耗数据以及所述标识符;
在功率状态改变寄存器处检测来自管理程序的信号;以及
响应于所述信号,使功率代理单元向所述跟踪存储器中的与小芯片关联的小芯片队列写入新的能量消耗数据。
2.根据权利要求1所述的方法,其中接收与使用所述处理器核心的所述任务关联的所述标识符包括接收与虚拟机关联的标识符。
3.根据权利要求1所述的方法,其中检测所述事件的出现包括检测定时器到期、用于所述处理器核心的电压中的改变、用于所述处理器核心的频率中的改变、用于所述处理器核心的功率状态中的改变或者与使用所述处理器核心的所述任务关联的所述标识符中的改变中的一项或者多项。
4.根据权利要求1所述的方法,还包括:
从所述跟踪存储器读取一个或者多个记录;并且
针对与使用所述处理器核心的所述任务关联的每个标识符,确定用于所述任务的能量消耗数据。
5.根据权利要求4所述的方法,还包括:
至少部分基于所述跟踪存储器中的一个或者多个记录确定用于处理器的估计的功率消耗数据;
基于所述估计的功率消耗数据和用于所述处理器的实际功率消耗数据确定缩放因子;并且
至少部分基于所述缩放因子缩放用于所述任务的所述能量消耗数据。
6.根据权利要求1所述的方法,其中读取与所述处理器核心的能量消耗关联的能量消耗数据包括读取用于耦合到所述处理器核心的L2缓存、L3缓存中的一个或者多个缓存的一个或者多个能量消耗数据。
7.根据权利要求1所述的方法,还包括:
将加权应用于与所述处理器核心的能量消耗关联的所述能量消耗数据中的单独值。
8.一种处理器,包括:
多个小芯片,其中每个小芯片包括:
处理器核心;
功率代理单元,所述功率代理单元被配置用于:
读取与使用处理器核心的任务关联的标识符,
读取与所述处理器核心的能量消耗关联的能量消耗数据,
检测事件的出现,并且
响应于所述事件,向跟踪存储器写入与所述处理器核心的所述能量消耗关联的所述能量消耗数据以及所述标识符;以及
管理程序,被配置用于向功率状态改变寄存器发送信号,所述信号使所述功率代理单元向所述跟踪存储器中的与小芯片关联的小芯片队列写入新的能量消耗数据。
9.根据权利要求8所述的处理器,还包括存储器,其中在所述存储器中维持所述跟踪存储器。
10.根据权利要求8所述的处理器,还包括用于存储与使用所述处理器核心的所述任务关联的所述标识符的任务标识寄存器。
11.根据权利要求8所述的处理器,其中所述事件包括定时器到期、用于所述处理器核心的电压中改变、用于所述处理器核心的频率中的改变、用于所述处理器核心的功率状态中的改变或者与使用所述处理器核心的所述任务关联的所述标识符中的改变中的一项或者多项。
12.根据权利要求8所述的处理器,还包括:功率管理单元,被配置用于:
从所述跟踪存储器读取一个或者多个记录;并且
针对与使用所述处理器核心的所述任务关联的每个标识符,确定用于所述任务的能量消耗数据。
13.根据权利要求8所述的处理器,其中每个小芯片包括耦合到所述处理器核心的至少一个缓存,并且其中所述功率代理单元还被配置用于读取用于所述至少一个缓存的一个或者多个能量消耗数据并且向所述跟踪存储器写入所述一个或者多个能量消耗数据。
14.根据权利要求8所述的处理器,其中每个小芯片包括:
一个或者多个活动计数器,用于存储所述能量消耗数据;以及
一个或者多个活动权值寄存器,用于存储与所述一个或者多个活动计数器关联的加权;
其中所述功率代理单元还被配置用于将所述加权应用于与所述处理器核心的能量消耗关联的所述能量消耗数据。
15.一种用于关联处理器核心的能量消耗和任务的装置,包括:
处理器,所述处理器具有一个或者多个存储器,所述一个或者多个存储器在其中包含计算机可用程序代码,所述计算机可用程序代码包括如下计算机可用程序代码,被配置用于:
接收与使用处理器核心的任务关联的标识符;
读取与所述处理器核心的能量消耗关联的能量消耗数据;
检测事件的出现;
响应于所述事件,向跟踪存储器写入与所述处理器核心的所述能量消耗关联的所述能量消耗数据以及所述标识符;
在功率状态改变寄存器处检测来自管理程序的信号;以及
响应于所述信号,使功率代理单元向所述跟踪存储器中的与小芯片关联的小芯片队列写入新的能量消耗数据。
16.根据权利要求15所述的装置,其中被配置用于接收与使用所述处理器核心的所述任务关联的所述标识符的所述计算机可用程序代码包括被配置用于接收与虚拟机关联的标识符的计算机可用程序代码。
17.根据权利要求15所述的装置,其中被配置用于检测所述事件的出现的所述计算机可用程序代码包括被配置用于检测定时器到期、用于所述处理器核心的电压中的改变、用于所述处理器核心的频率中改变、用于所述处理器核心的功率状态中改变或者与使用所述处理器核心的所述任务关联的所述标识符中的改变中的一项或者多项的计算机可用程序代码。
18.根据权利要求15所述的装置,其中所述计算机可用程序代码还被配置用于:
将加权应用于与所述处理器核心的能量消耗关联的所述能量消耗数据中的单独值。
CN201310594796.3A 2012-11-27 2013-11-21 关联能量消耗与虚拟机 Active CN103838668B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/686,415 2012-11-27
US13/686,415 US9311209B2 (en) 2012-11-27 2012-11-27 Associating energy consumption with a virtual machine

Publications (2)

Publication Number Publication Date
CN103838668A CN103838668A (zh) 2014-06-04
CN103838668B true CN103838668B (zh) 2018-02-02

Family

ID=50774383

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310594796.3A Active CN103838668B (zh) 2012-11-27 2013-11-21 关联能量消耗与虚拟机

Country Status (3)

Country Link
US (3) US9311209B2 (zh)
CN (1) CN103838668B (zh)
TW (1) TW201423597A (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9311209B2 (en) 2012-11-27 2016-04-12 International Business Machines Corporation Associating energy consumption with a virtual machine
US9170631B2 (en) * 2013-02-05 2015-10-27 Advanced Micro Devices, Inc. Adaptive temperature and power calculation for integrated circuits
US9135126B2 (en) 2013-02-07 2015-09-15 International Business Machines Corporation Multi-core re-initialization failure control system
US9760390B2 (en) * 2013-07-16 2017-09-12 Empire Technology Development Llc Processor identification for virtual machines
KR101842016B1 (ko) * 2013-12-10 2018-03-28 한국전자통신연구원 멀티 코어 환경에서의 동적 전력 제어방법
WO2015196343A1 (en) * 2014-06-24 2015-12-30 Intel Corporation Virtual machine power management
KR102269271B1 (ko) * 2014-09-12 2021-06-28 삼성전자주식회사 오픈 컴퓨팅 언어 기반의 애플리케이션 실행 방법 및 장치
US9823723B2 (en) * 2014-09-16 2017-11-21 Apple Inc. Low-overhead process energy accounting
US9910475B2 (en) * 2014-12-23 2018-03-06 Intel Corporation Processor core power event tracing
US20160187395A1 (en) * 2014-12-24 2016-06-30 Intel Corporation Forecast for demand of energy
US10216526B2 (en) * 2015-01-14 2019-02-26 Mediatek Inc. Controlling method for optimizing a processor and controlling system
JP6214056B2 (ja) * 2015-03-30 2017-10-18 日本電気株式会社 マルチコアプロセッサ、情報処理方法、プログラム
US9942631B2 (en) 2015-09-25 2018-04-10 Intel Corporation Out-of-band platform tuning and configuration
US10613606B2 (en) * 2016-03-17 2020-04-07 Intel Corporation Wireless component state based power management
CN108228432A (zh) * 2016-12-12 2018-06-29 阿里巴巴集团控股有限公司 一种分布式链路跟踪、分析方法及服务器、全局调度器
CN108228322B (zh) * 2016-12-12 2022-03-25 阿里巴巴集团控股有限公司 一种分布式链路跟踪、分析方法及服务器、全局调度器
US10423209B2 (en) * 2017-02-13 2019-09-24 Apple Inc. Systems and methods for coherent power management
US11669426B2 (en) * 2017-06-30 2023-06-06 International Business Machines Corporation Kernel-based power consumption and isolation and defense against emerging power attacks
WO2019028596A1 (zh) * 2017-08-07 2019-02-14 深圳前海达闼云端智能科技有限公司 一种虚拟机的启动方法、装置和智能终端
US11886224B2 (en) * 2020-06-26 2024-01-30 Advanced Micro Devices, Inc. Core selection based on usage policy and core constraints
US11493975B2 (en) * 2020-09-24 2022-11-08 Intel Corporation System, apparatus and method for providing power monitoring isolation in a processor
JP2023021662A (ja) * 2021-08-02 2023-02-14 富士通株式会社 プログラムおよび管理方法
US11714688B1 (en) * 2022-11-17 2023-08-01 Accenture Global Solutions Limited Sustainability-based computing resource allocation
US20240219988A1 (en) * 2023-01-03 2024-07-04 Advanced Micro Devices, Inc. Chiplet interconnect power state management

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102770826A (zh) * 2010-02-26 2012-11-07 微软公司 虚拟机功耗测量和管理

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6738864B2 (en) * 2000-08-21 2004-05-18 Texas Instruments Incorporated Level 2 cache architecture for multiprocessor with task—ID and resource—ID
US20030167460A1 (en) * 2002-02-26 2003-09-04 Desai Vipul Anil Processor instruction set simulation power estimation method
US7243243B2 (en) * 2002-08-29 2007-07-10 Intel Corporatio Apparatus and method for measuring and controlling power consumption of a computer system
JP4559794B2 (ja) * 2004-06-24 2010-10-13 株式会社東芝 マイクロプロセッサ
US7698541B1 (en) * 2006-10-31 2010-04-13 Netapp, Inc. System and method for isochronous task switching via hardware scheduling
US8341604B2 (en) * 2006-11-15 2012-12-25 Qualcomm Incorporated Embedded trace macrocell for enhanced digital signal processor debugging operations
US20080301473A1 (en) 2007-05-29 2008-12-04 International Business Machines Corporation Method and system for hypervisor based power management
US8069354B2 (en) * 2007-08-14 2011-11-29 Mips Technologies, Inc. Power management for system having one or more integrated circuits
JP4724730B2 (ja) * 2008-04-09 2011-07-13 株式会社日立製作所 情報処理システムの運用管理方法、運用管理プログラム、および運用管理装置、ならびに情報処理システム
US9208003B2 (en) * 2008-06-09 2015-12-08 International Business Machines Corporation Hypervisor to I/O stack conduit in virtual real memory
JP5326374B2 (ja) * 2008-06-19 2013-10-30 富士通セミコンダクター株式会社 プロセッサ、性能プロファイリング装置、性能プロファイリングプログラムおよび性能プロファイリング方法
US8271809B2 (en) 2009-04-15 2012-09-18 International Business Machines Corporation On-chip power proxy based architecture
WO2011002436A1 (en) * 2009-06-29 2011-01-06 Hewlett-Packard Development Company, L.P. Hypervisor-based management of local and remote virtual memory pages
US8862786B2 (en) * 2009-08-31 2014-10-14 International Business Machines Corporation Program execution with improved power efficiency
US8887171B2 (en) * 2009-12-28 2014-11-11 Intel Corporation Mechanisms to avoid inefficient core hopping and provide hardware assisted low-power state selection
US8489904B2 (en) * 2010-03-25 2013-07-16 International Business Machines Corporation Allocating computing system power levels responsive to service level agreements
WO2012104940A1 (ja) * 2011-02-04 2012-08-09 パナソニック株式会社 仮想計算機システム、デバイス共有制御方法、プログラム、及び集積回路
JP5681527B2 (ja) * 2011-02-28 2015-03-11 パナソニックIpマネジメント株式会社 電力制御装置及び電力制御方法
US20120239323A1 (en) 2011-03-16 2012-09-20 Microsoft Corporation Virtual Machine Power Usage Estimations
US8635483B2 (en) 2011-04-05 2014-01-21 International Business Machines Corporation Dynamically tune power proxy architectures
US8683160B2 (en) 2011-06-22 2014-03-25 International Business Machines Corporation Method and apparatus for supporting memory usage accounting
US8966305B2 (en) * 2011-06-30 2015-02-24 Advanced Micro Devices, Inc. Managing processor-state transitions
US20130086395A1 (en) * 2011-09-30 2013-04-04 Qualcomm Incorporated Multi-Core Microprocessor Reliability Optimization
US9829951B2 (en) * 2011-12-13 2017-11-28 Intel Corporation Enhanced system sleep state support in servers using non-volatile random access memory
US8892919B2 (en) * 2011-12-14 2014-11-18 Ati Technologies Ulc Method and apparatus for power management of a processor in a virtual environment
US9348391B1 (en) * 2012-06-28 2016-05-24 Amazon Technologies, Inc. Managing resource power states in shared environments
US8972762B2 (en) * 2012-07-11 2015-03-03 Blackberry Limited Computing devices and methods for resetting inactivity timers on computing devices
US9311209B2 (en) 2012-11-27 2016-04-12 International Business Machines Corporation Associating energy consumption with a virtual machine

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102770826A (zh) * 2010-02-26 2012-11-07 微软公司 虚拟机功耗测量和管理

Also Published As

Publication number Publication date
TW201423597A (zh) 2014-06-16
CN103838668A (zh) 2014-06-04
US20140149752A1 (en) 2014-05-29
US20140149779A1 (en) 2014-05-29
US20160224396A1 (en) 2016-08-04
US9311209B2 (en) 2016-04-12
US9304886B2 (en) 2016-04-05

Similar Documents

Publication Publication Date Title
CN103838668B (zh) 关联能量消耗与虚拟机
US10552761B2 (en) Non-intrusive fine-grained power monitoring of datacenters
Möbius et al. Power consumption estimation models for processors, virtual machines, and servers
Lin et al. A cloud server energy consumption measurement system for heterogeneous cloud environments
JP7395558B2 (ja) 異種コンピューティング資源の使用量を単一の測定単位として定量化する方法
CN104113585B (zh) 用于产生指示负载平衡状态的硬件级中断的方法和设备
CN102959510B (zh) 用于计算机功率和资源消耗建模的方法和系统
CN100478909C (zh) 用于功率测量和管理的方法和系统
Lin et al. A taxonomy and survey of power models and power modeling for cloud servers
US20090007108A1 (en) Arrangements for hardware and software resource monitoring
Tuli et al. MCDS: AI augmented workflow scheduling in mobile edge cloud computing systems
Shoukourian et al. Monitoring power data: A first step towards a unified energy efficiency evaluation toolset for HPC data centers
US20120330802A1 (en) Method and apparatus for supporting memory usage accounting
Ai et al. On elasticity measurement in cloud computing
Tang et al. Zero-cost, fine-grained power monitoring of datacenters using non-intrusive power disaggregation
Liu et al. Source-level energy consumption estimation for cloud computing tasks
Wiesner et al. Software‐in‐the‐loop simulation for developing and testing carbon‐aware applications
CN110168503A (zh) 时间片插装设施
Quintiliani et al. Understanding “workload-related” metrics for energy efficiency in Data Center
Singh et al. Modeling and reducing power consumption in large IT systems
US8650367B2 (en) Method and apparatus for supporting memory usage throttling
Lučanin et al. Performance-based pricing in multi-core geo-distributed cloud computing
Moocheet et al. A sensor predictive model for power consumption using machine learning
KR101266421B1 (ko) 클라우드 시스템에서 가상 머신의 에너지 기반 과금 및 스케줄링 장치 및 방법
CN109857655A (zh) 一种检测美术资源动态性能的方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant