Principles of transaction-oriented database recovery
ACM Computing Surveys (CSUR)
ACM Transactions on Programming Languages and Systems (TOPLAS)
Scale and performance in a distributed file system
ACM Transactions on Computer Systems (TOCS)
SOSP '87 Proceedings of the eleventh ACM Symposium on Operating systems principles
Caching in the Sprite network file system
ACM Transactions on Computer Systems (TOCS)
Spritely NFS: experiments with cache-consistency protocols
SOSP '89 Proceedings of the twelfth ACM symposium on Operating systems principles
Experience with transactions in QuickSilver
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
Disconnected operation in the Coda File System
ACM Transactions on Computer Systems (TOCS)
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
The impact of architectural trends on operating system performance
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
ARB: A Hardware Mechanism for Dynamic Reordering of Memory References
IEEE Transactions on Computers
Fundamental challenges in mobile computing
PODC '96 Proceedings of the fifteenth annual ACM symposium on Principles of distributed computing
Data speculation support for a chip multiprocessor
Proceedings of the eighth international conference on Architectural support for programming languages and operating systems
Automatic I/O hint generation through speculative execution
OSDI '99 Proceedings of the third symposium on Operating systems design and implementation
Separating key management from file system security
Proceedings of the seventeenth ACM symposium on Operating systems principles
Transactions and synchronization in a distributed operating system
Proceedings of the tenth ACM symposium on Operating systems principles
Distributed transactions for reliable systems
Proceedings of the tenth ACM symposium on Operating systems principles
A scalable approach to thread-level speculation
Proceedings of the 27th annual international symposium on Computer architecture
Time, clocks, and the ordering of events in a distributed system
Communications of the ACM
A survey of rollback-recovery protocols in message-passing systems
ACM Computing Surveys (CSUR)
CCGRID '03 Proceedings of the 3st International Symposium on Cluster Computing and the Grid
Hardware for Speculative Parallelization of Partially-Parallel Loops in DSM Multiprocessors
HPCA '99 Proceedings of the 5th International Symposium on High Performance Computer Architecture
SOSP '03 Proceedings of the nineteenth ACM symposium on Operating systems principles
Farsite: federated, available, and reliable storage for an incompletely trusted environment
OSDI '02 Proceedings of the 5th symposium on Operating systems design and implementationCopyright restrictions prevent ACM from being able to make the PDFs for this conference available for downloading
Rx: treating bugs as allergies---a safe method to survive software failures
Proceedings of the twentieth ACM symposium on Operating systems principles
Transactional file systems can be fast
Proceedings of the 11th workshop on ACM SIGOPS European workshop
Pulse: a dynamic deadlock detection mechanism using speculative execution
ATEC '05 Proceedings of the annual conference on USENIX Annual Technical Conference
Flashback: a lightweight extension for rollback and deterministic replay for software debugging
ATEC '04 Proceedings of the annual conference on USENIX Annual Technical Conference
Proactive recovery in a Byzantine-fault-tolerant system
OSDI'00 Proceedings of the 4th conference on Symposium on Operating System Design & Implementation - Volume 4
Secure untrusted data repository (SUNDR)
OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6
Energy-efficiency and storage flexibility in the blue file system
OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6
ACM Transactions on Computer Systems (TOCS)
Case studies in storage access by loosely coupled petascale applications
Proceedings of the 4th Annual Workshop on Petascale Data Storage
Using introspective software-based testing for post-silicon debug and repair
Proceedings of the 47th Design Automation Conference
Improving MapReduce performance in heterogeneous environments
OSDI'08 Proceedings of the 8th USENIX conference on Operating systems design and implementation
Lifting the barriers --- reducing latencies with transparent transactional memory
ICDCN'12 Proceedings of the 13th international conference on Distributed Computing and Networking
ACE: exploiting correlation for energy-efficient and continuous context sensing
Proceedings of the 10th international conference on Mobile systems, applications, and services
Hi-index | 0.00 |
Speculator provides Linux kernel support for speculative execution. It allows multiple processes to share speculative state by tracking causal dependencies propagated through interprocess communication. It guarantees correct execution by preventing speculative processes from externalizing output, for example, 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.