Skip to main content
Log in

On using network RAM as a non‐volatile buffer

  • Published:
Cluster Computing Aims and scope Submit manuscript

Abstract

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. D. Anderson, J. Chase, S. Gadde, A. Gallatin, K. Yocum and M. Feeley, Cheating the I/O bottleneck: Network storage with Trapeze/Myrinet, in: Proc. of the 1998 USENIX Technical Conference.

  2. T.E. Anderson, M.D. Dahlin, J.M. Neefe, D.A. Patterson, D.S. Roselli and R.Y. Wang, Serverless network file systems, ACM Transactions on Computer Systems 14(1) (February 1996) 41-79.

    Google Scholar 

  3. M. Baker, S. Asami, E. Deprit, J. Ousterhout and M. Seltzer, Nonvolatile memory for fast, reliable file systems, in: Proc. of the 5th International Conference on Architectural Support for Programming Languages and Operating Systems, Boston, MA (October 1992) pp. 10-22.

  4. M.G. Baker, J.H. Hartman, M.D. Kupfer, K.W. Shirriff and J.K. Ousterhout, Measurements of a distributed file system, in: Proc. 13th Symposium on Operating Systems Principles (October 1991) pp. 198-212.

  5. M. Bangalore and A. Sivasubramaniam, Remote subpaging across a fast network, in: Proc. of the Workshop on Communication, Architecture and Applications for Network-based Parallel Computing (1998) pp. 74-87.

  6. M. Blumrich, K. Li, R. Alpert, C. Dubnicki, E. Felten and J. Sandberg, Virtual memory mapped network interface for the SHRIMP multicomputer, in: Proc. 21th International Symposium on Comp. Arch., Chicago, IL (April 1994) pp. 142-153.

  7. P.M. Chen, W.T. Ng, S. Chandra, C. Aycock, G. Rajamani and D. Lowell, The Rio file cache: Surviving operating system crashes, in: Proc. of the 7th International Conference on Architectural Support for Programming Languages and Operating Systems (1996) pp. 74-83.

  8. P.M. Chen, E.K. Lee, G.A. Gibson, R.H. Katz and D.A. Patterson, RAID: High-performance, reliable secondary storage, ACM Computing Surveys 26(2) (June 1994) 145-185.

    Google Scholar 

  9. M. Dahlin, Serverless network file systems, Ph.D. thesis, UC Berkeley (December 1995).

  10. M.D. Dahlin, R.Y. Wang, T.E. Anderson and D.A. Patterson, Cooperative caching: Using remote client memory to improve file system performance, in: First Symposium on Operating System Design and Implementation (1994) pp. 267-280.

  11. Dolphin interconnect solutions, DIS301 SBus-to-SCI Adapter User's Guide.

  12. F. Douglis, R. Caceres, F. Kaashoek, K. Li, B. Marsh and J. Tauber, Storage alternatives for mobile computers, in: First Symposium on Operating System Design and Implementation (November 1994).

  13. M.J. Feeley, W.E. Morgan, F.H. Pighin, A.R. Karlin, H.M. Levy and C.A. Thekkath, Implementing global memory management in a workstation cluster, in: Proc. 15th Symposium on Operating Systems Principles (December 1995) pp. 201-212.

  14. E.W. Felten and J. Zahorjan, Issues in the implementation of a remote memory paging system, Technical Report 91-03-09, Computer Science Department, University of Washington (November 1991).

  15. R. Gillett, Memory channel network for PCI, IEEE Micro 16(1) (February 1996) 12-18.

    Google Scholar 

  16. L. Iftode, K. Li and K. Petersen, Memory servers for multicomputers, in: Proceedings of COMPCON 93 (1993) pp. 538-547.

  17. S. Ioanidis, E.P. Markatos and J. Sevaslidou, On using network memory to improve the performance of transaction-based systems, in: International Conference on Parallel and Distributed Techniques and Applications (1998) pp. 363-370.

  18. B. Liskov, S. Ghemawat, R. Gruber, P. Johnson, L. Shrira and M. Williams, Replication in the Harp file system, in: Proc. 13th Symposium on Operating Systems Principles (October 1991) pp. 226-238.

  19. D.E. Lowell and P.M. Chen, Free transactions with Rio Vista, in: Proc. 16th Symposium on Operating Systems Principles (October 1997) pp. 92-101.

  20. E.P. Markatos and G. Dramitinos, Implementation of a reliable remote memory pager, in: Proceedings of the 1996 Usenix Technical Conference (January 1996) pp. 177-190.

  21. E.P. Markatos and M. Katevenis, Telegraphos: High-performance networking for parallel processing on workstation clusters, in: Proceedings of the Second International Symposium on High-Performance Computer Architecture (February 1996) pp. 144-153.

  22. M. Nelson, B. Welch and J. Ousterhout, Caching in the Sprite network file system, ACM Transactions on Computer Systems 6(1) (February 1988) 134-154.

    Google Scholar 

  23. A. Papathanasiou and E.P. Markatos, Lightweight transactions on networks of workstations, in: Proc. 18th Int. Conf. on Distr. Comp. Syst. (1998) pp. 544-553.

  24. M. Satyanarayanan, H.H. Mashburn, P. Kumar, D.C. Steere and J.J. Kistler, Lightweight recoverable virtual memory, ACM Transactions on Computer Systems 12(1) (1994) 33-57.

    Google Scholar 

  25. C.A. Thekkath, H.M. Levy and E.D. Lazowska, Efficient support for multicomputing on ATM networks, Technical Report 93-04-03, Department of Computer Science and Engineering, University of Washington (12 April 1992).

  26. T. von Eicken, A. Basu, V. Buch and W. Vogels, U-Net: A user-level network interface for parallel and distributed computing, in: Proc. 15th Symposium on Operating Systems Principles (December 1995).

  27. R.Y. Wang, T.E. Anderson and D.A. Patterson, Virtual log based file systems for a programmable disk, in: Third Symposium on Operating System Design and Implementation (1999) pp. 29-43.

  28. J. Wilkes, R. Golding, C. Staelin and T. Sullivan, The HP AutoRAID hierarchical storage system, ACM Transactions on Computer Systems 14(1) (1996) 108-136.

    Google Scholar 

  29. M. Wu and W. Zwaenepoel, eNVy: A non-volatile main memory storage system, in: Proc. of the 6th International Conference on Architectural Support for Programming Languages and Operating Systems (1994) pp. 86-97.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Pnevmatikatos, D., Markatos, E.P., Magklis, G. et al. On using network RAM as a non‐volatile buffer. Cluster Computing 2, 295–303 (1999). https://doi.org/10.1023/A:1019003514550

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1019003514550

Keywords

Navigation