Skip to main content
Log in

A scalable record locking scheme for parallel file access

Eine skalierbare satzweise Sperr-Methode für parallelen Dateizugriff

  • Published:
Computing Aims and scope Submit manuscript

Abstract

File systems being used as standard software in today’s computer systems have to deal with access conflicts when several processes request I/O operations to the same file. There have to be coordination mechanisms for resolving such conflicts according to the prescriptions of the POSIX standard. Access coordination is usually implemented by executing file operations by one process exclusively, sacrificing scalability of multiple concurrent accesses in multicomputers. To resolve this problem, we propose a scalable coordination scheme which avoids sequentialization of accesses by locking only parts of the file (i.e. arbitrary records). It allows several processes to operate on the same file truly in parallel, while POSIX semantics is retained. Scalability is achieved by employing scalable shared memory access mechanisms and scalable elementary locks. The locking scheme has successfully been tested within an experimental file system implementation.

Zusammenfassung

Dateisysteme, die in heutigen Rechnern als Standardsoftware benutzt werden, müssen Zugriffskonflikte bewältigen, sobald verschiedene Prozesse auf dieselbe Datei zugreifen. Es muß Koordinationsmechanismen geben, um solche Konflikte entsprechend dem POSIX-Standard aufzulösen. Diese Mechanismen sind normalerweise in der Form implementiert, daß jeweils nur ein Prozeß allein die Dateioperationen ausführen darf. Dadurch sind gleichzeitig stattfindende Zugriffe in Multiprozessoren nicht skaliebar ausführbar. Wir schlagen als Lösung ein skalierbares Koordinationsschema vor, das die Sequentialisierung von Zugriffen vermeidet, indem nur (beliebige) Teile einer Datei gesperrt werden. Das Schema erlaubt echten Parallelzugriff auf dieselbe Datei, wobei die POSIX-Semantik erhalten bleibt. Skalierbarkeit wird dabei durch Verwendung von skalierbaren Shared-Memory-Zugriffsmechanismen und skalierbaren elementaren Sperrmechanismen erreicht. Das Sperrschema wurde in einer experimentellen Implementierung eines Dateisystems erfolgreich getestet.

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. Almasi, G. S., Gottlieb, A.: Highly parallel computing. Redwood City: Benjamin/Cummings 1989.

    MATH  Google Scholar 

  2. Bach, M. J.: The design of the UNIX operating system. Englewood Cliffs: Prentice-Hall 1986.

    Google Scholar 

  3. Best, M. L., Greenberg, A., Stanfill, C., Tucker, L. W.: CMMD I/O: A parallel Unix I/O. Proc. Seventh Intnl. Par. Proc. Symp., pp. 489–495 (1993).

  4. Broom, B. M.: A synchronous file server for distributed file systems. Technical Report TR-CS-92-12, Dept. of Computer Science, Australian National University, August 1992.

  5. Corbett, P. F., Johnson Baylor, S., Feitelson, D. G.: Overview of the Vesta parallel file system. Comp. Arch. News21, 7–14 (1993).

    Article  Google Scholar 

  6. Eckardt, H., Hellwagner, H., Klein, A.: Scalable parallel file systems for distributed shared memory. Siemens Internal Report, 1993.

  7. Hellwagner, H.: On the practical efficiency of randomized shared memory. In: Parallel Processing: Proc. CONPAR 92/VAPP V (Bougé, L., Cosnard, M., Robert, Y., Trystram, D., eds.), pp. 429–440. Berlin Heidelberg New York Tokyo: Springer 1992.

    Google Scholar 

  8. Hellwagner, H.: Design considerations for scalable parallel file systems. Comp. J.36, 741–755 (1993).

    Article  Google Scholar 

  9. IEEE Std 1003.1-1990/International Standard ISO/IEC 9945-1: Information technology — portable operating system interface (POSIX) — Part 1: system application program interface (API) [C language]. New York: IEEE 1990.

    Google Scholar 

  10. Kotz, D., Schlatter Ellis, C.: Caching and writeback policies in parallel file systems. J. Par. Distr. Comp.17, 140–145 (1993).

    Article  Google Scholar 

  11. Leffler, S. J., McKusick, M. K., Karels, M. J., Quarterman, J. S.: The design and implementation of the 4.3 BSD UNIX operating system. New York: Addison-Wesley 1989.

    Google Scholar 

  12. Lenosky, D., Laudon, J., Gharachorloo, K., Weber, W.-D., Gupta, A., Henessy, J., Horowitz, M., Lam, M. S.: The Stanford DASH multiprocessor. Computer25, 63–79 (1992).

    Article  Google Scholar 

  13. Mellor-Crummey, J. M., Scott, M. L.: Scalable reader-writer synchronization for shared-memory multiprocessors. Proc. 3rd ACM Symp. on Principles and Practice of Parallel Programming (PPoPP), pp. 106–113. New York: ACM Press 1991.

    Google Scholar 

  14. Mutisya, G., Broom, B. M.: Distributed file caching for the AP1000. Proceedings of the Third Fujitsu-ANU CAP Workshop, November 1992, pp. 1–17. Fujitsu 1992.

  15. Nitzberg, B., Lo, V.: Distributed shared memory: a survey of issues and algorithms. Computer24, 52–60 (1991).

    Article  Google Scholar 

  16. Pierce, P.: A concurrent file system for a highly parallel mass storage subsystem. Proc. 4th Conf. on Hypercube Concurrent Computers and Applications. Monterey, CA, Mar. 1989, pp. 155–160, 1989.

  17. Pratt, T. W., French, J. C., Dickens, P. M., Janet, S. A.: A comparison of the architecture and performance of two parallel file systems. Proc 4th Conf. on Hypercube Concurrent Computers and Applications. Monterey, CA, Mar. 1989, pp. 161–166, 1989.

  18. del Rosario, J. M., Bordawekar, R., Choudhary, A.: Improved parallel I/O via a two-phase run-time access strategy. Comp. Arch. News21, 31–38 (1993).

    Article  Google Scholar 

  19. Rothnie, J.: Kendall Square research introduction to the KSR1. In: Supercomputer ’92, (Meuer, H. W., ed.), pp. 104–114. Berlin Heidelberg New York Tokyo: Springer, 1992.

    Google Scholar 

  20. Valiant, L. G.: General purpose parallel architectures. In: Handbook of theoretical computer science. (van Leeuwen, J., ed.). Amsterdam: North-Holland 1990.

    Google Scholar 

  21. Valiant, L. G.: A bridging model for parallel computation. Commun. ACM33, 103–111 (1990).

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Eckardt, H. A scalable record locking scheme for parallel file access. Computing 58, 113–128 (1997). https://doi.org/10.1007/BF02684435

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF02684435

AMS Subject Classification

Key words

Navigation