Ditto: End-to-End Application Cloning for Networked Cloud Services
Mingyu Liang, Yu Gan, Yueying Li, Carlos Torres, Abhishek Dhanotia, Mahesh Ketkar, Christina Delimitrou
Abstract
The lack of representative, publicly-available cloud services has been a recurring problem in the architecture and systems communities. While open-source benchmarks exist, they do not capture the full complexity of cloud services. Application cloning is a promising way to address this, however, prior work is limited to CPU-/cachecentric, single-node services, operating at user level.
We present Ditto, an automated framework for cloning end-toend cloud applications, both monolithic and microservices, which captures I/O and network activity, as well as kernel operations, in addition to application logic. Ditto takes a hierarchical approach to application cloning, starting with capturing the dependency graph across distributed services, to recreating each tier's control/data flow, and finally generating system calls and assembly that mimics the individual applications. Ditto does not reveal the logic of the original application, facilitating publicly sharing clones of production services with hardware vendors, cloud providers, and the research community.
We show that across a diverse set of single-and multi-tier applications, Ditto accurately captures their CPU and memory characteristics as well as their high-level performance metrics, is portable across platforms, and facilitates a wide range of system studies.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers3
- Mystique: Enabling Accurate and Scalable Generation of Production AI BenchmarksMingyu Liang, Wenyin Fu, Louis Feng, Zhongyi Lin et al.ISCA 2023 · 9 citations
- TraceUpscaler: Upscaling Traces to Evaluate Systems at High LoadSultan Mahmud Sajal, Timothy Zhu, Bhuvan Urgaonkar, Siddhartha SenEuroSys 2024 · 4 citations
- Mimesys: Generating Realistic Executable Testing Environments from Resource Usage TracesDonghyun Kim, Zichao Hu, Joydeep Biswas, Aditya Akella et al.OSDI 2026
Builds on5
- Sage: practical and scalable ML-driven performance debugging in microservicesYu Gan, Mingyu Liang, Sundar Dev, David Lo et al.ASPLOS 2021 · 170 citations
- Faster and Cheaper Serverless Computing on Harvested ResourcesYanqi Zhang, Iñigo Goiri, Gohar Irfan Chaudhry, Rodrigo Fonseca et al.SOSP 2021 · 131 citations
- Accelerometer: Understanding Acceleration Opportunities for Data Center Overheads at HyperscaleAkshitha Sriraman, Abhishek DhanotiaASPLOS 2020 · 78 citations
- Dagger: efficient and fast RPCs in cloud microservices with near-memory reconfigurable NICsNikita Lazarev, Shaojie Xiang, Neil Adit, Zhiru Zhang et al.ASPLOS 2021 · 54 citations
- CacheQuery: learning replacement policies from hardware cachesPepe Vila, Pierre Ganty, Marco Guarnieri, Boris KöpfPLDI 2020 · 38 citations
Related papers
- Ditto: An Elastic and Adaptive Memory-Disaggregated Caching SystemJiacheng Shen, Pengfei Zuo, Xuchuan Luo, Yuxin Su et al.SOSP 2023 · 17 citations
- Datamime: Generating Representative Benchmarks by Automatically Synthesizing DatasetsHyun Ryong Lee, Daniel SánchezMICRO 2022 · 1 citation
- AID: Efficient Prediction of Aggregated Intensity of Dependency in Large-scale Cloud SystemsTianyi Yang, Jiacheng Shen, Yuxin Su, Xiao Ling et al.ASE 2021 · 23 citations
- Lifting the veil on Meta's microservice architecture: Analyses of topology and request workflowsDarby Huye, Yuri Shkuro, Raja R. SambasivanUSENIX ATC 2023 · 65 citations
- Sleuth: A Trace-Based Root Cause Analysis System for Large-Scale Microservices with Graph Neural NetworksYu Gan, Guiyang Liu, Xin Zhang, Qi Zhou et al.ASPLOS 2023 · 21 citations
