Caching in the Sprite network file system
ACM Transactions on Computer Systems (TOCS)
Measurements of a distributed file system
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
Replication in the harp file system
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
Non-volatile memory for fast, reliable file systems
ASPLOS V Proceedings of the fifth international conference on Architectural support for programming languages and operating systems
Lightweight recoverable virtual memory
ACM Transactions on Computer Systems (TOCS) - Special issue on operating systems principles
RAID: high-performance, reliable secondary storage
ACM Computing Surveys (CSUR)
Virtual memory mapped network interface for the SHRIMP multicomputer
ISCA '94 Proceedings of the 21st annual international symposium on Computer architecture
eNVy: a non-volatile, main memory storage system
ASPLOS VI Proceedings of the sixth international conference on Architectural support for programming languages and operating systems
U-Net: a user-level network interface for parallel and distributed computing
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Implementing global memory management in a workstation cluster
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Serverless network file systems
ACM Transactions on Computer Systems (TOCS) - Special issue on operating system principles
The HP AutoRAID hierarchical storage system
ACM Transactions on Computer Systems (TOCS) - Special issue on operating system principles
The Rio file cache: surviving operating system crashes
Proceedings of the seventh international conference on Architectural support for programming languages and operating systems
Free transactions with Rio Vista
Proceedings of the sixteenth ACM symposium on Operating systems principles
Virtual log based file systems for a programmable disk
OSDI '99 Proceedings of the third symposium on Operating systems design and implementation
Memory Channel Network for PCI
IEEE Micro
Remote Subpaging Across a Fast Network
CANPC '98 Proceedings of the Second International Workshop on Network-Based Parallel Computing: Communication, Architecture, and Applications
Telegraphos: High-Performance Networking for Parallel Processing on Workstation Clusters
HPCA '96 Proceedings of the 2nd IEEE Symposium on High-Performance Computer Architecture
Lightweight Transactions on Networks of Workstations
ICDCS '98 Proceedings of the The 18th International Conference on Distributed Computing Systems
Serverless network file systems
Serverless network file systems
Storage alternatives for mobile computers
OSDI '94 Proceedings of the 1st USENIX conference on Operating Systems Design and Implementation
Cooperative caching: using remote client memory to improve file system performance
OSDI '94 Proceedings of the 1st USENIX conference on Operating Systems Design and Implementation
Cheating the I/O bottleneck: network storage with Trapeze/Myrinet
ATEC '98 Proceedings of the annual conference on USENIX Annual Technical Conference
Implementation of a reliable remote memory pager
ATEC '96 Proceedings of the 1996 annual conference on USENIX Annual Technical Conference
The Design and Verification of the Rio File Cache
IEEE Transactions on Computers
A cooperative asynchronous write mechanism for NAS
ACM SIGOPS Operating Systems Review
LND: a reliable multi-tier storage device in NOW
ACM SIGOPS Operating Systems Review
Synergy: a comprehensive software distributed shared memory system
ISPA'03 Proceedings of the 2003 international conference on Parallel and distributed processing and applications
Hi-index | 0.00 |
File systems and databases usually make several synchronous disk write accesses in order to make sure that the disk always has a consistent view of their data, so that it can be recovered in the case of a system crash. Since synchronous disk operations are slow, some systems choose to employ asynchronous disk write operations that improve performance at the cost of low reliability: in case of a system crash all data that have not yet been written to disk are lost. In this paper we describe a software-based Non-Volatile RAM system that achieves the high performance of asynchronous write operations without sacrificing the reliability of synchronous write operations. Our system takes a set of volatile main memories residing in independent workstations and transforms it into a non-volatile memory buffer – much like RAIDS do with magnetic disks. It then uses this non-volatile buffer as an intermediate storage space in order to acknowledge synchronous write operations before actually writing the data to magnetic disk, but after writing the data to (intermediate) stable storage. We demonstrate the performance advantages of our system using both simulation and experimental evaluation.