Wednesday, February 4, 2015

Just-In-Time Provisioning for Cyber Foraging

Motivation:

With  the development of the mobile cloud computing, there is  a lot of VM-based cloudlets. This cyber foraging can overcome the resource limitation of wireless mobile devices. By using VMs, we can avoid the complexity of various systems and software versions. However, VMs create the problem of precisely provisioning. For latency-sensitive applications, Just-in Time provisioning provides a way of solving these problems. It can save a lot of time by optimizing  VM synthesis.


Main Points:

In this paper, the author shows us various techniques for improving VM synthesis. These techniques are shown in details, including the concept, approach, implementation and evaluation.

-Dynamic VM synthesis
 Dynamic VM synthesis reverses the process of overlay creation. A mobile devices delivers the VM overlay to a cloudlet that already processes the base VM from which the overlay was derived. Then the cloudlet decompress the overlay, applies it to the base to derive the launch VM, and then create a VM instance from it. After this, the mobile device can now begin performing offloading operations on this instance. This process can reduce the energy cost of data transmission on the mobile devices. In this paper, it has built up an instantiation of the basic VM synthesis approach, using the KVM virtual machine monitor and show us the result of experiment.

-Deduplication
This shows the process of eliminate redundancy. When we establishing the dynamic VM synthesis, it does not capture duplicate data. If we could find the minimal set without duplication data, we can construct smaller VM overlays. Then the author shows us the implementation of deduplicatition by choosing the proper granularity.

-Bridging the Semantic Gap
One of the drawbacks of using VM is that it forces the host to view each gust as a black box. The host could not know the disk and memory content in terms of higher level abstraction. This inability span the semantic gap between low level representations of disk and memory, and higher level abstractions. In this paper, the author shows us the implementation of disk and memory of bridging the gap.

-There are two more techniques of optimizing the process named: pipelining and early start. The author shows the implementation and the result of experiment. And then give us one important way of improving VM synthesis, that is combine above techniques.
-At the end of the paper, there is an real example of VM synthesis on EC2

Trade-offs:
-In the implementation of the deduplication process, chunk size is mentioned in this paer. However, the author has not shown how to choose this chunk size. Whether chunk size will have an effect on this experiment result has not shown in this paper. As we know, many OS using 4KB page size, but not all the systems. So this experiment could not be generalized. There is only a conclusion of this size likely work well but not enough evidence. I think this will be a problem.

-To discover the modified portions of disk and memory associated with the process of creating a launch VM, the author uses FUSE between vmm and backing files, the author ignore the cost of adding this component. However, memory operations may become much more expensive when adding this layer.

-In the implementation of VM synthesis on Amazon EC2,  it is done on running  VM instance, it has no access to the disk and memory.






1 comment:

  1. Very good points - the chunk size issue for dedup is a major issue relating to tradeoffs. Is it true that FUSE will add costs for every memory access? Not sure this is what they are advocating. But you are correct that their method was not shown to have no impact on the running VM (once synthesized).

    ReplyDelete