Toward a Distributed Implementation of OpenMP Using CAPE

  • Éric Renault
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4671)


Traditionally, checkpointing techniques have been used to secure the execution of sequential and parallel programs. This article shows that checkpointing techniques can also be used to automatically generate a parallel program from a sequential program, this program being executed on any kind of distributed parallel system. The article also presents how this new technique have been included inside the usual compilation chain to provide a distributed implementation of OpenMP. Finally, some performance measurements are discussed.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Buyya, R.: High Performance Cluster Computing: Architectures and Systems, vol. 1. Prentice-Hall, Englewood Cliffs (1999)Google Scholar
  2. 2.
    Foster, I., Kesselman, C., Tuecke, S.: The Anatomy of the Grid: Enabling Scalable Virtual Organizations. The International Journal of High Performance Computing Applications 15(3), 200–222 (2001)CrossRefGoogle Scholar
  3. 3.
    Leuf, B.: Peer to Peer. In: Collaboration and Sharing over the Internet, Addison-Wesley, London (2002)Google Scholar
  4. 4.
    Loveman, D.B.: High Performance Fortran. IEEE Parallel & Distributed Technology: Systems & Applications 1(1), 25–42 (1993)CrossRefGoogle Scholar
  5. 5.
    Geist, A., Beguelin, A., Dongarra, J., Jiang, W., Manchek, R., Sunderam, V.S.: Parallel Virtual Machine: A Users’ Guide and Tutorial for Network Parallel Computing (Scientific and Engineering Computation). Scientific and Engineering Computation Series. MIT Press, Cambridge (1994)Google Scholar
  6. 6.
    Snir, M., Otto, S., Huss-Lederman, S., Walker, D., Dongarra, J.: MPI: The Complete Reference (The MPI Core), 2nd edn. Scientific and Engineering Computation Series. MIT Press, Cambridge (1998)Google Scholar
  7. 7.
    OpenMP Architecture Review Board: OpenMP Application Program Interface, Version 2.5 Public Draft (November 2004)Google Scholar
  8. 8.
    Allen, J.R., Callahan, D., Kennedy, K.: Automatic Decomposition of Scientific Programs for Parallel Execution. In: Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, Munich, West Germany, pp. 63–76. ACM Press, New York (1987)CrossRefGoogle Scholar
  9. 9.
    Feautrier, P.: Automatic parallelization in the polytope model. In: The Data Parallel Programming Model: Foundations, HPF Realization, and Scientific Applications. In: Perrin, G.-R., Darte, A. (eds.) The Data Parallel Programming Model. LNCS, vol. 1132, pp. 79–103. Springer, Heidelberg (1996)Google Scholar
  10. 10.
    Barthou, D., Feautrier, P., Redon, X.: On the Equivalence of Two Systems of Affine Recurrence Equations. In: Monien, B., Feldmann, R.L. (eds.) Euro-Par 2002. LNCS, vol. 2400, pp. 309–313. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  11. 11.
    Alias, C., Barthou, D.: On the Recognition of Algorithm Templates. In: Knoop, J., Zimmermann, W. (eds.) Proceedings of the 2nd International Workshop on Compiler Optimization meets Compiler Verification, Warsaw, Poland, pp. 51–65 (April 2003)Google Scholar
  12. 12.
    Web page: Ckpt (2005),
  13. 13.
    Osman, S., Subhraveti, D., Su, G., Nieh, J.: The Design and Implementation of Zap: A System for Migrating Computing Environments. In: Proceedings of the 5th USENIX Symposium on Operating Systems Design and Implementation, Boston, MA, pp. 361–376 (December 2002)Google Scholar
  14. 14.
    Plank, J.S.: An Overview of Checkpointing in Uniprocessor and Distributed Systems, Focusing on Implementation and Performance. Technical Report UT-CS-97-372, Department of Computer Science, University of Tennessee (July 1997)Google Scholar
  15. 15.
    Foster, I., Kesselman, C.: Globus: A Metacomputing Infrastructure Toolkit. The International Journal of Supercomputer Applications and High Performance Computing 11(2), 115–128 (1997)CrossRefGoogle Scholar
  16. 16.
    Web page: Globus (2007),
  17. 17.
    Litzkow, M., Livny, M., Mutka, M.: Condor - A Hunter of Idle Workstations. In: The 8th International Conference on Distributed Computing Systems, San Jose, CA, pp. 104–111. IEEE Computer Society Press, Los Alamitos (1988)Google Scholar
  18. 18.
    Web page: Condor (2007),
  19. 19.
    Fedak, G., Germain, C., Néri, V., Cappello, F.: XtremWeb: A Generic Global Computing System. In: Buyya, R., Mohay, G., Roe, P. (eds.) Proceedings First IEEE/ACM International Symposium on Cluster Computing and the Grid, Brisbane, Australia, pp. 582–587. IEEE Computer Society Press, Los Alamitos (2001)CrossRefGoogle Scholar
  20. 20.
    Web page: XTremWeb (2006),
  21. 21.
    Merlin, J.: Distributed OpenMP: extensions to OpenMP for SMP clusters. In: 2nd European Workshop on OpenMP (EWOMP 2000), Edinburgh, UK (September 2000)Google Scholar
  22. 22.
    Karlsson, S., Lee, S.W., Brorsson, M., Sartaj, S., Prasanna, V.K., Uday, S.: A fully compliant OpenMP implementation on software distributed shared memory. In: Sahni, S.K., Prasanna, V.K., Shukla, U. (eds.) HiPC 2002. LNCS, vol. 2552, pp. 195–206. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  23. 23.
    Huang, L., Chapman, B., Liu, Z.: Towards a more efficient implementation of OpenMP for clusters via translation to global arrays. Parallel Computing 31(10-12), 1114–1139 (2005)CrossRefGoogle Scholar
  24. 24.
    Basumallik, A., Eigenmann, R.: Towards automatic translation of OpenMP to MPI. In: Proceedings of the 19th annual international conference on Supercomputing, Cambridge, MA, pp. 189–198. ACM Press, New York (2005)CrossRefGoogle Scholar
  25. 25.
    Consortium, X.: Linux-XOS specification. XtreemOS Integrated Project Deliverable D2.1.1 (November 2006)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Éric Renault
    • 1
  1. 1.GET / INT – CNRS UMR 5157 SAMOVAR, 91011 ÉvryFrance

Personalised recommendations