Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Fast restore of checkpointed memory using working set estimation

Published: 09 March 2011 Publication History

Abstract

In order to make save and restore features practical, saved virtual machines (VMs) must be able to quickly restore to normal operation. Unfortunately, fetching a saved memory image from persistent storage can be slow, especially as VMs grow in memory size. One possible solution for reducing this time is to lazily restore memory after the VM starts. However, accesses to unrestored memory after the VM starts can degrade performance, sometimes rendering the VM unusable for even longer. Existing performance metrics do not account for performance degradation after the VM starts, making it difficult to compare lazily restoring memory against other approaches. In this paper, we propose both a better metric for evaluating the performance of different restore techniques and a better scheme for restoring saved VMs.
Existing performance metrics do not reflect what is really important to the user -- the time until the VM returns to normal operation. We introduce the time-to-responsiveness metric, which better characterizes user experience while restoring a saved VM by measuring the time until there is no longer a noticeable performance impact on the restoring VM. We propose a new lazy restore technique, called working set restore, that minimizes performance degradation after the VM starts by prefetching the working set. We also introduce a novel working set estimator based on memory tracing that we use to test working set restore, along with an estimator that uses access-bit scanning. We show that working set restore can improve the performance of restoring a saved VM by more than 89% for some workloads.

References

[1]
μswsusp. http://suspend.sourceforge.net/.
[2]
AMD64 virtualization codenamed "pacifica" technology: Secure virtual machine architecture reference manual, May 2005. http://enterprise.amd.com/downloadables/Pacifica_Spec.pdf.
[3]
D. F. Bacon, P. Cheng, and V. Rajan. A real-time garbage collector with low overhead and consistent utilization. In Proc. POPL '03, New Orleans, LA, USA, Jan. 2003.
[4]
D. F. Bacon, P. Cheng, and V. Rajan. The Metronome, a simpler approach to garbage collection in real-time systems. In Proc. OTM 2003 Workshops, 2003.
[5]
S. Bansal and D. S. Modha. CAR: Clock with adaptive replacement. In Proc. FAST '04, 2004.
[6]
G. E. Blelloch and P. Cheng. On bounding time and space for multiprocessor garbage collection. In Proc. PLDI '99, Atlanta, GA, USA, May 1999.
[7]
C. Clark, K. Fraser, S. Hand, J. G. Hansen, E. Jul, C. Limpach, I. Pratt, and A. Warfield. Live migration of virtual machines. In Proc. NSDI '05, 2005.
[8]
F. J. Corbato. A paging experiment with the Multics system. Technical report, MIT Project MAC, May 1969.
[9]
P. J. Denning. The working set model for program behaviour. Commun. ACM, 11 (5), 1968.
[10]
M. R. Hines and K. Gopalan. Post-copy based live virtual machine migration using adaptive pre-paging and dynamic self-ballooning. In Proc. VEE 2009, Washington, DC, USA, 2009.
[11]
T. Holwerda. SuperFetch: How it works & myths, May 2009. http://www.osnews.com/story/21471/SuperFetch_How_it_Works_Myths.
[12]
S. Jiang and X. Zhang. LIRS: an efficient low inter-reference recency set replacement policy to improve buffer cache performance. In Proc. SIGMETRICS '02, Marina del Rey, California, USA, 2002.
[13]
S. Jiang, F. Chen, and X. Zhang. CLOCK-Pro: An effective improvement of the CLOCK replacement. In Proc. USENIX '05, 2005.
[14]
R. E. Jones. Garbage Collection: Algorithms for Automatic Dynamic Memory Management. Wiley, Chichester, July 1996. URL http://www.cs.ukc.ac.uk/people/staff/rej/gcbook/gcbook.html.
[15]
kernel-enhancements-xp. Kernel enhancements for Windows XP, jan 2003. http://www.microsoft.com/whdc/archive/XP_kernel.mspx.
[16]
H. A. Lagar-Cavilla, J. A. Whitney, A. M. Scannell, P. Patchin, S. M. Rumble, E. de Lara, M. Brudno, and M. Satyanarayanan. SnowFlock: rapid virtual machine cloning for cloud computing. In Proc. Eurosys '09, Nuremberg, Germany, 2009.
[17]
R. B. Miller. Response time in man-computer conversational transactions. In Proceedings of the fall joint computer conference, part I, AFIPS '68 (Fall, part I), pages 267--277, New York, NY, USA, 1968. ACM.
[18]
E. J. O'Neil, P. E. O'Neil, and G. Weikum. The LRU-K page replacement algorithm for database disk buffering. In P. Buneman and S. Jajodia, editors, Proc. SIGMOD '93, 1993.
[19]
C. P. Sapuntzakis, R. Chandra, B. Pfaff, J. Chow, M. S. Lam, and M. Rosenblum. Optimizing the migration of virtual computers. SIGOPS Operating Systems Review, 36, 2002.
[20]
Seagate. Product Manual. Barracuda 7200.11 Serial ATA. http://www.seagate.com/staticfiles/support/disc/manuals/desktop/Barracuda 7200.11/100452348g.pdf, Jan. 2009.
[21]
Standard Performance Evaluation Corporation. SPECjbb2005 User's Guide. http://www.spec.org/jbb2005/docs/UserGuide.html, April 2006.
[22]
J. Sugerman, G. Venkitachalam, and B.-H. Lim. Virtualizing I/O devices on VMware Workstation's hosted virtual machine monitor. In Proceedings of the 2001 USENIX Annual Technical Conference, Boston, MA, USA, June 2001.
[23]
N. Tolia, D. G. Andersen, and M. Satyanarayanan. Quantifying interactive user experience on thin clients. IEEE Computer, 39 (3), Mar. 2006.
[24]
VMware. Timekeeping in VMware virtual machines. http://www.vmware.com/vmtn/resources/238, Aug. 2008.

Cited By

View all
  • (2023)KalpaVriksh: Efficient and Cost-effective GUI Application Hosting using Singleton Snapshots2023 IEEE/ACM 23rd International Symposium on Cluster, Cloud and Internet Computing (CCGrid)10.1109/CCGrid57682.2023.00026(180-190)Online publication date: May-2023
  • (2016)Efficient Checkpointing of Live Virtual MachinesIEEE Transactions on Computers10.1109/TC.2016.251989065:10(3041-3054)Online publication date: 1-Oct-2016
  • (2015)Cutting the Cost of Hosting Online Services Using Cloud Spot MarketsProceedings of the 24th International Symposium on High-Performance Parallel and Distributed Computing10.1145/2749246.2749275(207-218)Online publication date: 15-Jun-2015
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM SIGPLAN Notices
ACM SIGPLAN Notices  Volume 46, Issue 7
VEE '11
July 2011
231 pages
ISSN:0362-1340
EISSN:1558-1160
DOI:10.1145/2007477
Issue’s Table of Contents
  • cover image ACM Conferences
    VEE '11: Proceedings of the 7th ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
    March 2011
    250 pages
    ISBN:9781450306874
    DOI:10.1145/1952682
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 09 March 2011
Published in SIGPLAN Volume 46, Issue 7

Check for updates

Author Tags

  1. checkpoint/restore
  2. performance

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)13
  • Downloads (Last 6 weeks)0
Reflects downloads up to 22 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2023)KalpaVriksh: Efficient and Cost-effective GUI Application Hosting using Singleton Snapshots2023 IEEE/ACM 23rd International Symposium on Cluster, Cloud and Internet Computing (CCGrid)10.1109/CCGrid57682.2023.00026(180-190)Online publication date: May-2023
  • (2016)Efficient Checkpointing of Live Virtual MachinesIEEE Transactions on Computers10.1109/TC.2016.251989065:10(3041-3054)Online publication date: 1-Oct-2016
  • (2015)Cutting the Cost of Hosting Online Services Using Cloud Spot MarketsProceedings of the 24th International Symposium on High-Performance Parallel and Distributed Computing10.1145/2749246.2749275(207-218)Online publication date: 15-Jun-2015
  • (2015)Memory Pressure Balancing on Virtualized ServersProceedings of the 2015 IEEE 21st International Conference on Embedded and Real-Time Computing Systems and Applications10.1109/RTCSA.2015.29(70-79)Online publication date: 19-Aug-2015
  • (2015)Memory Reclamation and Compression Using Accurate Working Set Size EstimationProceedings of the 2015 IEEE 8th International Conference on Cloud Computing10.1109/CLOUD.2015.34(187-194)Online publication date: 27-Jun-2015
  • (2015)Lightweight Virtual Machine Checkpoint and Rollback for Long-running ApplicationsAlgorithms and Architectures for Parallel Processing10.1007/978-3-319-27137-8_42(577-596)Online publication date: 16-Dec-2015
  • (2014)MercurialProceedings of the 2014 IEEE/ACM 7th International Conference on Utility and Cloud Computing10.1109/UCC.2014.143(877-882)Online publication date: 8-Dec-2014
  • (2024)Faast: An Efficient Serverless Framework Made Snapshot-based Function Response FastProceedings of the 33rd International Symposium on High-Performance Parallel and Distributed Computing10.1145/3625549.3658681(174-185)Online publication date: 3-Jun-2024
  • (2023)eHotSnap: An Efficient and Hot Distributed Snapshots System for Virtual Machine ClusterIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2023.327201434:8(2433-2447)Online publication date: Aug-2023
  • (2023)KalpaVriksh: Efficient and Cost-effective GUI Application Hosting using Singleton Snapshots2023 IEEE/ACM 23rd International Symposium on Cluster, Cloud and Internet Computing (CCGrid)10.1109/CCGrid57682.2023.00026(180-190)Online publication date: May-2023
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media