Abstract
This paper presents a methodology to design a distributed shared memory by decomposing it into two layers. An application independent layer supplies the basic functionalities to access shared structures and optimizes these functionalities according to the underlying architecture. On top of this layer, that can be seen as an application independent run time support, an application dependent layer defines the most suitable consistency model for the considered class of applications and it implements the most appropriate caching and prefetching strategies for the consistency model. To exemplify this methodology, we introduce DVSA, a package that implements the application independent layer and SHOB, an example of the second layer. SHOB defines a release consistency model for iterative numerical algorithms and it implements the corresponding caching and prefetching strategies. We present some experimental results of the methodology and discuss the performance of a uniform multigrid method developed through SHOB on a massively parallel architecture, the Meiko CS2, and on a cluster of workstations.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Amza, C., Cox, A.L., Dwarkadas, S., Keleher, P., Lu, H., Rajamony, R., Yu, W., Zwaenepoel, W.: TreadMarks: Shared Memory Computing on Networks of Workstations. IEEE Computer 2(29) (1996) 18–28
Baiardi, F., Chiti, S., Mori, P., Ricci L.: Parallelization of Irregular Problems Based on Hierarchical Domain Representation. Proceedings of HPCN 2000: Lecture Notes in Computer Science 1823 (2000) 71–80
Baiardi, F., Dobloni, G., Mori, P., Ricci L.: Hive: Implementing a virtual distributed shared memory in Java. DAPSYS-3rd Austrian Hungarian Workshop on Distributed and Parallel Systems Kluwer Press (2000)
Baiardi, F., Guerri, D., Mori, P., Moroni, L., Ricci, L.: Evaluation of a Virtual Shared Memory by the Compilation of Data Parallel Loops. 8th Euromicro Workshop on Parallel and Distributed Processing (2000)
Bennett, J.K., Carter, J.B., Zwaenepoel, W.: Munin: Distributed shared memory based on type-specific memory coherence. ACM SIGPLAN Symposium on Principles & Practice of Parallel Programming (1990) 168–176
Briggs, W.: A Multigrid Tutorial. SIAM (1987)
Coelho, F., Germain, C., Pazat, J.L.: State of Art in Compiling HPF. In The parallel programming Model: Foundations, HPF Realization and Scientific Application, Lecture Notes in Computer Science 1132 (1996)
Gupta, S.K.S., Kaushik, S.D., Sharma, S., Huang, C.H., Sadayappan, P.: Compiling Array Expression for Efficient Execution on Distributed-Memory Machines. Journal of Parallel and Distribute Computing 32 (1996) 155–172
Lamport, L.: How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs. IEEE Trans. on Computers C-28(9) ( 1979) 690–691
Reinhardt, S.K., Larus, J.R., Wood, D.A.: Tempest and Typhoon: User-level Shared Memory. Int. Symposium om Computer Architecture (1994) 325–336
Stichnoth, J.M., O’Hallaron, D., Gross, T.R.: Generating Communication for Array Statements: Design, implementation, and evaluation. Journal of Parallel and Distribute Computing 21(1) ( 1994) 150–159
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Baiardi, F., Guerri, D., Mori, P., Moroni, L., Ricci1, L. (2001). Two Layers Distributed Shared Memory. In: Hertzberger, B., Hoekstra, A., Williams, R. (eds) High-Performance Computing and Networking. HPCN-Europe 2001. Lecture Notes in Computer Science, vol 2110. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48228-8_31
Download citation
DOI: https://doi.org/10.1007/3-540-48228-8_31
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-42293-8
Online ISBN: 978-3-540-48228-4
eBook Packages: Springer Book Archive