Affiliation:
1. University of Michigan
Abstract
Speculator provides Linux kernel support for speculative execution. It allows multiple processes to share speculative state by tracking causal dependencies propagated through inter-process communication. It guarantees correct execution by preventing speculative processes from externalizing output, e.g., sending a network message or writing to the screen, until the speculations on which that output depends have proven to be correct. Speculator improves the performance of distributed file systems by masking I/O latency and increasing I/O throughput. Rather than block during a remote operation, a file system predicts the operation's result, then uses Speculator to checkpoint the state of the calling process and speculatively continue its execution based on the predicted result. If the prediction is correct, the checkpoint is discarded; if it is incorrect, the calling process is restored to the checkpoint, and the operation is retried. We have modified the client, server, and network protocol of two distributed file systems to use Speculator. For PostMark and Andrew-style benchmarks, speculative execution results in a factor of 2 performance improvement for NFS over local-area networks and an order of magnitude improvement over wide-area networks. For the same benchmarks, Speculator enables the Blue File System to provide the consistency of single-copy file semantics and the safety of synchronous I/O, yet still outperform current distributed file systems with weaker consistency and safety.
Publisher
Association for Computing Machinery (ACM)
Reference30 articles.
1. Carson M. Adaptation and Protocol Testing thorugh Network Emulation. NIST http://snad.ncsl.nist.gov/itg/nistnet/slides/index.htm. Carson M. Adaptation and Protocol Testing thorugh Network Emulation. NIST http://snad.ncsl.nist.gov/itg/nistnet/slides/index.htm.
2. Logged virtual memory
Cited by
9 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Forerunner;Proceedings of the ACM SIGOPS 28th Symposium on Operating Systems Principles CD-ROM;2021-10-26
2. Build scripts with perfect dependencies;Proceedings of the ACM on Programming Languages;2020-11-13
3. A parallel two-stage genetic algorithm for route planning;Proceedings of the 2020 Genetic and Evolutionary Computation Conference Companion;2020-07-08
4. Improving a Genetic Algorithm for Route Planning Using Parallelism with Speculative Execution;Proceedings of the Practice and Experience in Advanced Research Computing on Rise of the Machines (learning);2019-07-28
5. A survey on data storage and placement methodologies for Cloud-Big Data ecosystem;Journal of Big Data;2019-02-11