CheckSync: Using Runtime-Integrated Checkpoints to Achieve High Availability}
Nicolaas Kaashoek, Robert Morris

TL;DR
CheckSync enables high availability for memory-managed applications by runtime-integrated checkpointing, offering smaller checkpoints and minimal performance impact compared to traditional virtual machine snapshots and live migration.
Contribution
It introduces a runtime-integrated checkpointing method for Go applications that reduces checkpoint size and performance overhead without requiring major application modifications.
Findings
CheckSync produces significantly smaller checkpoints than VM snapshots.
Running go-cache with CheckSync reduces throughput loss to 12%.
CheckSync outperforms CRIU and VM live migration in throughput preservation.
Abstract
CheckSync provides applications with high availability via runtime-integrated checkpointing. This allows CheckSync to take checkpoints of a process running in a memory-managed language (Go, for now), which can be resumed on another machine after a failure. CheckSync uses the runtime to checkpoint only the process' live memory, doing without requiring significant changes to applications. CheckSync maintains the ease of use provided by virtual machines for the applications it supports without requiring that an entire virtual machine image be snapshotted. Because CheckSync captures only the memory used by an application, it produces checkpoints that are smaller (by an order of magnitude) than virtual machine snapshots if the memory footprint of the application is relatively small compared to the state of the rest of the operating system. Additionally, when running go-cache, a popular…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Advanced Data Storage Technologies · Cloud Computing and Resource Management
