DistOptimize automates protocol adjustments to boost cloud performance
DistOptimize: Automatic Optimization of Distributed Protocols
Distributed, Parallel, and Cluster ComputingDatabases
Summary
Protocols that keep data consistent across many computers in the cloud are very complex and must be proven safe. When these protocols get changed, there's a risk of mistakes that hurt safety, but checking every change carefully is hard. The authors created DistOptimize, a tool that automatically optimizes these protocols to make them run faster while ensuring they stay safe. It uses verification techniques and smart searching to find better ways to run these protocols, improving speed up to four times with minimal delay.
What this means in practice
- •For cloud infrastructure engineers: Automatically improve data consistency protocols' speed in large cloud services without risking safety violations.
- •For database reliability teams: Use automatic optimization to enhance distributed database protocols' performance while maintaining strict correctness guarantees.
Authors
David Chu McElroy, Shadaj Laddad, Lucky Katahanas, Mingwei Samuel, Octavio Lomeli, Natacha Crooks, Joseph M. Hellerstein, Mohsen Lesani
Abstract
Distributed consensus and consistency protocols are difficult to reason about yet foundational to the cloud; as such, they often undergo a rigorous proof and formal verification process before deployment. The same level of rigor is rarely applied to protocol modifications, which occur frequently in production and threaten to compromise safety. In this paper, we eliminate the risk of safety violations from manual modifications by presenting an automatic optimizer for distributed protocols: DistOptimize. DistOptimize adapts throughput optimizations from academic languages to frameworks used in production, verifying the correctness of the rewrites in Rocq and automating their application through a combination of calibration and ILP-based search space navigation. Applied to both fundamental distributed protocols and protocols used at AWS, DistOptimize improves throughput by up to 4x and increases latency by at most 0.3ms.