Skip to main content

Adaptive DSM-runtime behavior via speculative data distribution

  • Conference paper
  • First Online:
Parallel and Distributed Processing (IPPS 1999)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1586))

Included in the following conference series:

Abstract

Traditional distributed shared memory systems (DSM) suffer from the overhead of communication latencies and data fault handling. This work explores the benefits of reducing these overheads and evaluating the savings. Data fault handling can be reduced by employing a lock-oriented consistency protocol that synchronizes data when acquiring and releasing a lock, which eliminates subsequent faults on data accesses. Communication latencies can be reduced by speculatively replicating or moving data before receiving a request for such an action. Histories of DSM accesses are used to anticipate future data requests.

DSM-Threads implement an adaptive runtime history that speculatively distributes data based on access histories. These histories are kept locally on a node and are distinguished by each thread on a node. When regular access patterns on requests are recognized, the data will be speculatively distributed at the closest prior release of a lock. The benefits of this active data distribution and its potential for false speculation are evaluated for two consistency protocols. The data-oriented entry consistency protocol (Bershad at al.) allows an even earlier data distribution at the closest prior release on the same lock. A simple multi-reader single-writer protocol, an improvement of Li/Hudak’s work, uses the closest prior release of a speculatively associated lock for speculative data distribution and also eliminates data faults. In addition, a framework for speculative release consistency is formulated.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. B. Bershad, M. Zekauskas, and W. Sawdon. The midway distributed shared memory system. In COMPCON Conference Proceedings, pages 528–537, 1993.

    Google Scholar 

  2. R. Biachini, R. Pinto, and C. Amorim. Data prefetching for software DSMs. In Int. Conf. on Supercomputing, 1998.

    Google Scholar 

  3. B. Herland and M. Eberl. A common design of PVM and MPI using the SCI interconnect. final report for task a 2.11 of ESPRIT project 23174, University of Bergen and Technical University of Munich, October 1997.

    Google Scholar 

  4. M. Karlsson and P. Stenström. Effectiveness of dynamic prefetching in multiple-writer distributed virtual shared memory systems. J. Parallel Distrib. Comput., 43(7):79–93, July 1997.

    Article  Google Scholar 

  5. P. Keleher, A. Cox, and W. Zwaenepoel. Lazy release consistency for software distributed shared memory. In International Symposium on Computer Architecture, pages 13–21, 1992.

    Google Scholar 

  6. Pete Keleher, Alan L. Cox, Sandhya Dwarkadas, and Willy Zwaenepoel. An evaluation of software-based release consistent protocols. J. Parallel Distrib. Comput., 29:126–141, September 1995.

    Article  Google Scholar 

  7. K. Li and P. Hudak. Memory coherence in shared virtual memory systems. ACM Trans. Comput. Systems, 7(4):321–359, November 1989.

    Article  Google Scholar 

  8. D. K. Lowenthal, V. W. Freeh, and G. R. Andrews. Using fine-grain threads and run-time decision making in parallel computing. J. Parallel Distrib. Comput., August 1996.

    Google Scholar 

  9. F. Mueller. Distributed shared-memory threads: DSM-threads. In Workshop on Run-Time Systems for Parallel Programming, pages 31–40, April 1997.

    Google Scholar 

  10. F. Mueller. On the design and implementation of DSM-threads. In Proc. 1997 International Conference on Parallel and Distributed Processing Techniques and Applications, pages 315–324, June 1997. (invited).

    Google Scholar 

  11. F. Mueller. Prioritized token-based mutual exclusion for distributed systems. In International Parallel Processing Symposium, pages 791–795, 1998.

    Google Scholar 

  12. M. Naimi, M. Trehel, and A. Arnold. A log(N) distributed mutual exclusion algorithm based on path reversal. J Parallel Distrib. Comput., 34(1):1–13, April 1996.

    Article  Google Scholar 

  13. B. Nitzberg and V. Lo. Distributed shared memory: A survey of issues and algorithms. IEEE Computer, 24(8):52–60, August 1991.

    Google Scholar 

  14. J. Protic, M. Tomasevic, and V. Milutinovic. Distributed shared memory: Concepts and systems. IEEE Parallel and Distributed Technology, pages 63–79, Summer 1996.

    Google Scholar 

  15. Rice University, Houston, Texas. High Performance Fortran Language Specification, 2.0 edition, May 97.

    Google Scholar 

  16. A. Schuster and L. Shalev. Using remote access histories for thread scheduling in distributed shared memory systems. In Int. Symposium on Distributed Computing, pages 347–362. Springer LNCS 1499, September 1998.

    Google Scholar 

  17. J. E. Smith. A study of branch prediction strategies. In Proceedings of the Eighth International Symposium on Computer Architecture, pages 135–148, May 1981.

    Google Scholar 

  18. J. Stark and Y. Patt. Variable length path branch prediction. In Architectural Support for Programming Languages and Operating Systems, pages 170–179, 1998.

    Google Scholar 

  19. Technical Committee on Operating Systems and Application Environments of the IEEE. Portable Operating System Interface (POSIX)—Part 1: System Application Program Interface (API), 1996. ANSI/IEEE Std 1003.1, 1995 Edition, including 1003.lc: Amendment 2: Threads Extension [C Language].

    Google Scholar 

  20. S. C. Woo, M. Ohara, E. Torrie, J. P. Singh, and A. Gupta. The SPLASH-2 programs: Characteriation and methodological considerations. In Proceedings of the 22nd Annual International Symposium on Computer Architecture, pages 24–37, New York, June 22–24 1995. ACM Press.

    Google Scholar 

  21. T.-Y. Yeh and Y. N. Patt. Alternative implementations of two-level adaptive branch prediction. In David Abramson and Jean-Luc Gaudiot, editors, Proceedings of the 19th Annual International Symposium on Computer Architecture, pages 124–135, Gold Coast, Australia, May 1992. ACM Press.

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

José Rolim Frank Mueller Albert Y. Zomaya Fikret Ercal Stephan Olariu Binoy Ravindran Jan Gustafsson Hiroaki Takada Ron Olsson Laxmikant V. Kale Pete Beckman Matthew Haines Hossam ElGindy Denis Caromel Serge Chaumette Geoffrey Fox Yi Pan Keqin Li Tao Yang G. Chiola G. Conte L. V. Mancini Domenique Méry Beverly Sanders Devesh Bhatt Viktor Prasanna

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag

About this paper

Cite this paper

Mueller, F. (1999). Adaptive DSM-runtime behavior via speculative data distribution. In: Rolim, J., et al. Parallel and Distributed Processing. IPPS 1999. Lecture Notes in Computer Science, vol 1586. Springer, Berlin, Heidelberg . https://doi.org/10.1007/BFb0097939

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-65831-3

  • Online ISBN: 978-3-540-48932-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics