Vigrant: Desktop Mobility via Live Migration

Jiang, D
(2019) Vigrant: Desktop Mobility via Live Migration. Doctor of Philosophy thesis, University of Liverpool.

[img] Text
201074247_Sept2019.pdf - Unspecified
Access to this file is embargoed until 1 January 2023.

Download (993kB)


The rapid rise of mobile computing has lead to a question about how to maintain the convenience of multi-device switching, or how to keep data and applications in sync across all varied devices. There are some existing solutions to solve this problem. However, none of the existing synchronization solution are adequate enough to solve this problem. To solve the above question, we propose a new system: Vigrant. The basic idea of Vigrant is that the machine is divided into two parts: the data part and the running hardware part. When using the machine, the data part is connected to the hardware part. The hardware loads the data from the device and runs as an ordinary desktop. At the same time, the hardware synchronises the machine data with the data part. To accomplish Vigrant, we built a prototype based on QEMU-KVM virtual machine. One important question here is how to synchronise the machine data with the data part. We solve this by using the migration mechanism in a virtual machine (VM). For the pre-copy algorithm in live migration, there is a starting point that the system begins to migrate. This process is called the preparation stage. Then after some copying is complete, the system completely pauses to transfer the rest of the dirty pages and CPU state. After that, the system resumes work on the target machine. The key idea in VM migration is to copy its RAM data while it is running. But we cannot directly use this mechanism for there are some differences between VM migration and pre-copy in Vigrant. Some modifications were made to VM migration to fit our problem. We built a prototype using this, named plain pre-copy Vigrant. Using the existing pre-copy algorithm is not sufficient for Vigrant because 1) the scan speed should also limited for ensure the performance, 2) there may be many pages left to copy after the system has been running for a while, which may cause performance degradation. To solve these problems, we proposed a new algorithm (ARA) that can adaptively select the pages to be copy, with almost no extra complexity. We then tested the algorithm under some application memory usage patterns. We first get several applications' memory usage trace by modifying the Linux kernel. Then the memory usage traces are used to test the proposed ARA algorithm. The result shows under reasonable constraints, the proposed algorithm can improve the performance by over 20%.

Item Type: Thesis (Doctor of Philosophy)
Uncontrolled Keywords: Live migration, Virtual machine, Paging algorithm, Vigrant
Divisions: Faculty of Science and Engineering > School of Electrical Engineering, Electronics and Computer Science
Depositing User: Symplectic Admin
Date Deposited: 07 Jan 2020 09:34
Last Modified: 25 Jan 2022 19:16
DOI: 10.17638/03059772