Xinan
Yan,
PhD
candidate
David
R.
Cheriton
School
of
Computer
Science
In this talk, I will introduce SpecRPC, a speculative execution framework that allows applications to concurrently execute dependent operations both locally and through remote procedure calls. The framework tracks dependencies among non-speculative and speculative operations and ensures that incorrect speculations do not affect the correctness of applications that follow our suggested design pattern. By using speculation to parallelize dependent operations, SpecRPC can significantly reduce application latency even if only a fraction of the results can be correctly speculated.
We evaluate SpecRPC by using it to implement Replicated Commit, a low-latency distributed transaction commit protocol for geo-replicated database systems. Our evaluation results show that, compared to RPC frameworks that sequentially execute dependent operations, SpecRPC can reduce the average transaction completion time of Replicated Commit by 58%.