在上一篇博客中<http://blog.youkuaiyun.com/wingter92/article/details/75253375>,讲到PowerDatacenter:
的确,Cloudsim中的power系列类最关键的是PowerDatacenter,因为整个数据中心的能耗统计都由它完成,并且其重载了一些重要事件处理方法,如processCloudletSubmit()和processVmMigrate(),在数据中心状态推进方面调用的主要是自己的方法:updateCloudletProcessing() => updateCloudetProcessingWithoutSchedulingFutureEventsForce()
这篇博客介绍power系列类中的PowerHost、PowerVM,他们不是实体,但提供统计能耗所需的信息。
1、PowerHost
继承:extends HostDynamicWorkload;这一点很重要,因为父类HostDynamicWorkload记录了host的CPU利用率(in MIPS),同时提供了关于CPU利用率、RAM利用率、BW利用率的一系列get()和set()函数。在PowerHost中,这些资源利用率要用来传给PowerModel计算功耗。
新成员:
powermodel(一个PowerModel类对象)
新方法:
getPower():调用(父类的)getUtilizationOfCpu()获得当前时刻利用率,再传给powermodel.getPower(util)获得功耗(Watt)
getMaxPower():调用powermodel