Talk:COMP 3000 Essay 2 2010 Question 10

From Soma-notes
Revision as of 23:08, 26 November 2010 by Tpham3 (talk | contribs) (→‎Contribution)
Jump to navigation Jump to search

mClock: Handling Throughput Variability for Hypervisor IO Scheduling

Notes to Group

Group Members

Please leave your name and email address if you are in the group

Layout

Paper

the paper's title, authors, and their affiliations. Include a link to the paper and any particularly helpful supplementary information.


Ajay Gulati VMware Inc. Palo Alto, CA, 94304 agulati@vmware.com
Arif Merchant HP Labs Palo Alto, CA 94304 arif.merchant@acm.org
Peter J. Varman Rice University Houston, TX, 77005 pjv@rice.edu

Background Concepts

Explain briefly the background concepts and ideas that your fellow classmates will need to know first in order to understand your assigned paper.


Hypervisors are responsible were multiplexing hardware resources between virtual machines while providing isolation to an extent, using resource management. The three controls used are reservation where the minimum bounds are set, the limit where the maximum upperbound on the allocation is set, and shares which proportionally allocate the resources according to the certain weight each VM has, and also depending on the reservation and upperbound limits. This is interesting because virtualization has been very successful; people are comfortable with putting multiple VM on one HOST without worrying about the performance of each VM on another. However the contention for I/O resources can suddenly lower a VM’s allocation; the available throughput can change with time, and adjustments to allocations must be made dynamically. mClock is a better alternate because it supports all controls in a single algorithm, handles variable and unknown capacity, and fast to compute. This is interesting because there is a limit control on VM allocation, it does not weaken as each VM gets added on, and mClock reservations are met. Niravkumar Patel
Here abit more on mClock!
mClock is a resource-allocation algorithm that helps hypervisors manage I/O requests from multiple virtual machines simultaneously. Essentially, mClock dynamically adjusts the proportions of resources each VM receives based on how active each VM currently is. While mClock constantly changes the physical resource allocation to each VM, it lets each VM hold onto the illusion that it has full control of all system resources. As a result, performance can be increased for VMs that need it, without letting the others know that “their” resources are being distributed to other machines. Niravkumar Patel

Research problem

What is the research problem being addressed by the paper? How does this problem relate to past related work?

Contribution

What are the research contribution(s) of this work? Specifically, what are the key research results, and what do they mean? (What was implemented? Why is it any better than what came before?)
- "dmClock runs a modified version of mClock at each server. There is only one modification to the algorithm to account for the distributed model in the Tag-Assignment component." - from the paper

Critique

What is good and not-so-good about this paper? You may discuss both the style and content; be sure to ground your discussion with specific references. Simple assertions that something is good or bad is not enough - you must explain why.


The article introduces a mClock algorithm which handles multiple VM in a variable throughput environment. The Quality of Service (QoS) requirements for a VM are expressed as a minimum reservation, a maximum limit, and a proportional share. mClock is able to meet those controls in varying capacity. the good thing about this is that the algorithms proves efficient in clustered architectures. Moreover, mClock provides greater isolation between VMs. Niravkumar Patel


In this paper there were many terms that were used but never explained, such as orders (used in the graphs), LUN, PARDA, etc. Also i did not like the way the calcualtions were written in sentences, "For a small reference IO size of 8KB and using typical values for mechanical delay Tm = 5ms and peak transfer rate, Bpeak = 60 MB/s, the numerator = Lat1*(1 + 8/300) ≈ Lat1". To me this was very messy and made me skip through the calculations part of the sentence. Tuan Pham

References

You will almost certainly have to refer to other resources; please cite these resources in the style of citation of the papers assigned (inlined numbered references). Place your bibliographic entries in this section.