0

Respected researchers, i want to calculate the power consumed by the virtual machines of a physical server in a cloud datacenter. please help me i will be very thankful for this appreciation.

satveer
  • 9
  • 1

2 Answers2

0
 /**
     * The cost of each byte of bandwidth (bw) consumed.
     */
    protected double costPerBw;

    /**
     * The total bandwidth (bw) cost for transferring the cloudlet by the
     * network, according to the {@link #cloudletFileSize}.
     */
    protected double accumulatedBwCost;

    // Utilization
    /**
     * The utilization model that defines how the cloudlet will use the VM's
     * CPU.

This segment are taken from Cloudlet.java.line 212. This may be helpful.

Or, as you set each VM properties you can calculate the power consumption.

//VM description
            int vmid = 0;
            int mips = 250;
            long size = 10000; //image size (MB)
            int ram = 2048; //vm memory (MB)
            long bw = 1000;
            int pesNumber = 1; //number of cpus
String vmm = "Xen"; //VMM name

This segment taken from CloudSimExample3.java line 64

alhelal
  • 916
  • 11
  • 27
0

CloudSim Plus has a built-in feature to compute VM's power consumption. The method below shows how to use such a feature. You can get the complete example here.

private void printVmsCpuUtilizationAndPowerConsumption() {
    for (Vm vm : vmList) {
        System.out.println("Vm " + vm.getId() + " at Host " + vm.getHost().getId() + " CPU Usage and Power Consumption");
        double vmPower; //watt-sec
        double utilizationHistoryTimeInterval, prevTime = 0;
        final UtilizationHistory history = vm.getUtilizationHistory();
        for (final double time : history.getHistory().keySet()) {
            utilizationHistoryTimeInterval = time - prevTime;
            vmPower = history.vmPowerConsumption(time);
            final double wattsPerInterval = vmPower*utilizationHistoryTimeInterval;
            System.out.printf(
                "\tTime %8.1f | Host CPU Usage: %6.1f%% | Power Consumption: %8.0f Watt-Sec * %6.0f Secs = %10.2f Watt-Sec\n",
                time, history.vmCpuUsageFromHostCapacity(time) *100, vmPower, utilizationHistoryTimeInterval, wattsPerInterval);
            prevTime = time;
        }
        System.out.println();
    }
}
halfer
  • 19,824
  • 17
  • 99
  • 186
Manoel Campos
  • 933
  • 9
  • 12