Thursday 13 March 2014

This weekend I will work on my on project. (These past 2 weeks I have been finishing off my internship at Arrobyte, so I've been quite busy).

The purpose of this project is to attempt to quantify the performance degradation of VMs according to their own loads as well as neighbouring VMs using shared resources on the same physical machine.

I talked with Javid on Wednesday, 5th of March. 

In order to do this project, Javid has set up a VM on the SIT servers for me, using VMWare vSphere. I have full control over this VM. Currently this VM has 2 virtual CPU's of 2GHz each, 2GB of RAM, and Disk I/O speed capable of 2GB/s. The VM is running Ubuntu 12.04. I can change how much resources my VM uses, however this should be enough to start off.

What I need to do for this project overall is to write a program that utilises the VM resources in a controlled way. The program should be able to be called upon in the command line, and must be able to change the utilisation of CPU, memory, HDD read, HDD write, bandwidth in and bandwidth out.

This program will be used on multiple VM's to test the performance degradation.

My main focus for today will be researching benchmarks and finding looking through their source codes for utilisation of CPU and memory. Javid mentioned that Disk I/O and bandwidth utilisation will be a bit more complicated to setup, so those will worked on later.

The program itself should be written in C or C++.

Some tips Javid gave me on the benchmarks:
1) CPU benchmarks may involve calculations, like multiplying numbers.
2) Memory benchmarks should use malloc.
3) Network benchmarks should utilise a FTP server to download and upload files.
4) Disk I/O benchmarks may involve moving a large file from one drive to another.

No comments:

Post a Comment