Abstract
This paper describes transparent mechanisms for emulating some of the data distribution facilities offered by traditional data-parallel programming models, such as High Performance Fortran, in OpenMP. The vehicle for implementing these facilities in OpenMP without modifying the programming model or exporting data distribution details to the programmer is user-level dynamic page migration [9], [10]. We have implemented a runtime system called UPMlib, which allows the compiler to inject into the application a smart user-level page migration engine. The page migration engine improves transparently the locality of memory references at the page level on behalf of the application. This engine can accurately and timely establish effective initial page placement schemes for OpenMP programs. Furthermore, it incorporates mechanisms for tuning page placement across phase changes in the application communication pattern. The effectiveness of page migration in these cases depends heavily on the overhead of page movements, the duration of phases in the application code and architectural characteristics. In general, dynamic page migration between phases is effective if the duration of a phase is long enough to amortize the cost of page movements.
This work was supported by the E.C. through the TMR Contract No.ERBFMGECT-950062 and in part through the IV Framework (SPRIT Programme,Project No.21907,NANOS),the Greek Secretariat of Research and Technology (Contract No.E.D.-99-566)and the Spanish Ministry of Education through projects No.TIC98-511 and TIC97-1445CE. The experiments were conducted with resources provided by the uropean Center for Parallelism of Barcelona (CEPBA).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
L. Brieger. HPF to OpenMP on the Origin2000. A Case Study. Proc. of the First European Workshop on OpenMP, pp. 19–20. Lund, Sweden, October 1999. 416
R. Chandra et. al. Data Distribution Support for Distributed Shared Memory Multiprocessors. Proc. of the 1997 ACM Conference on Programming Languages Design and Implementation, pp. 334–345. Las Vegas, NV, June 1997. 416
C. Holt, J. Pal Singh and J. Henessy. Application and Architectural Bottlenecks in Large Scale Shared Memory Machines. Proc. of the 23rd Int. Symposium on Computer Architecture, pp. 134–145. Philadelphia, PA, June 1996. 416
D. Jiang and J. Pal Singh. Scaling Application Performance on a Cache-Coherent Multiprocessor. Proc. of the 26th Int. Symposium on Computer Architecture, pp. 305–316. Atlanta, GA, May 1999. 416
H. Jin, M. Frumkin and J. Yan. The OpenMP Implementation of NAS Parallel Benchmarks and its Performance. Tech. Rep. NAS-99-011. NASA Ames Research Center, October 1999. 421
P. Keleher. A High Level Abstraction of Shared Accesses. ACM Transactions on Computer Systems, Vol. 18, No. 1, pp. 1–36. Feburary 2000. 420
C. Koelbel et. al. The High Performance Fortran Handbook. The MIT Press, Cambridge, MA, 1994. 416
J. Laudon and D. Lenoski. The SGI Origin: A ccNUMA Highly Scalable Server. Proc. of the 24th Int. Symposium on Computer Architecture, pp. 241–251. Denver, CO, June 1997. 422
D. Nikolopoulos et. al. A Case for User-Level Dynamic Page Migration. Proc. of the 14th ACM Int. Conference on Supercomputing, pp. 119–130. Santa Fe, NM, May 2000. 415, 417, 418
D. Nikolopoulos et. al. UPMlib: A Runtime System for Tuning the Memory Performance of OpenMP Programs on Scalable Shared-Memory Multiprocessors. Proc. of the 5th ACM Workshop on Languages, Compilers and Runtime Systems for Scalable Computers. Rochester, NY, May 2000. 415, 417
OpenMP Architecture Review Board. OpenMP Specifications. http://www.openmp.org, accessed April 2000. 416
M. Resch and B. Sander. A Comparison of OpenMP and MPI for the Parallel CFD Case. Proc. of the First European Workshop on OpenMP. Lund, Sweden, October 1999. 416
B. Verghese, S. Devine, A. Gupta and M. Rosenblum. Operating System Support for Improving Data Locality on CC-NUMA Compute Servers. Proc. of the 7th Int. Conference on Architectural Support for Programming Languages and Operating Systems, pp. 279–289. Cambridge, MA, October 1996. 416
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Nikolopoulos, D.S., Papatheodorou, T.S., Polychronopoulos, C.D., Labarta, J., Ayguadé, E. (2000). Leveraging Transparent Data Distribution in OpenMP via User-Level Dynamic Page Migration. In: Valero, M., Joe, K., Kitsuregawa, M., Tanaka, H. (eds) High Performance Computing. ISHPC 2000. Lecture Notes in Computer Science, vol 1940. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-39999-2_40
Download citation
DOI: https://doi.org/10.1007/3-540-39999-2_40
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-41128-4
Online ISBN: 978-3-540-39999-5
eBook Packages: Springer Book Archive