Example3
Example1是在1个host上面运行1个datacenter上面运行1个虚拟机执行了1组云任务
Example2是在1个host上面运行1个datacenter上面运行2个虚拟机执行了2组云任务
1 区别
Example3和Example1、Example2的主要区别体现在createDatacenter
方法中,因为Example3和前两者的主要差别就在于Host数量的不同,代码如下:
int mips = 1000;
// 3. Create PEs and add these into a list.
peList.add(new Pe(0, new PeProvisionerSimple(mips))); // need to store Pe id and MIPS Rating
//4. Create Hosts with its id and list of PEs and add them to the list of machines
int hostId=0;
int ram = 2048; //host memory (MB)
long storage = 1000000; //host storage
int bw = 10000;
hostList.add(
new Host(
hostId,
new RamProvisionerSimple(ram),
new BwProvisionerSimple(bw),
storage,
peList,
new VmSchedulerTimeShared(peList)
)
); // This is our first machine
这里主要包括了第一台Host的参数设置。
第二台Host参数设置如图
List peList2 = new ArrayList();
peList2.add(new Pe(0, new PeProvisionerSimple(mips)));
hostId++;
hostList.add(
new Host(
hostId,
new RamProvisionerSimple(ram),
new BwProvisionerSimple(bw),
storage,
peList2,
new VmSchedulerTimeShared(peList2)
)
); // This is our second machine
2 对Clock()的解读
Log.printConcatLine(CloudSim.clock(), ": ", getName(), ": VM #", vmId,
" has been created in ", datacenterName, ", Host #",
VmList.getById(getVmsCreatedList(), vmId).getHost().getId());
CloudSim.clock()
在看代码的时候,我意识到我并未去深挖各个模拟类是如何执行的。
2.1 CloudSim类
-[看论文去了]to be continued