USING MESSAGE PASSING FOR DEVELOPING COARSE-GRAINED APPLICATIONS IN OPENMP

Bielecki Wlodzimierz, Palkowski Marek

Abstract

A technique for extracting coarse-grained parallelism in loops is presented. It is based on splitting a set of dependence relations into two sets. The first one is to be used for generating code scanning slices while the second one permits us to insert send and receive functions to synchronize the slices execution. Codes of send and receive functions based on both OpenMP and POSIX locks functions are presented. A way of proper inserting and executing send and receive functions is demonstrated. Using agglomeration and free-scheduling are discussed for the purpose of improving program performance. Results of experiments are presented.

References

  1. OpenMP Application Program Interface 2007. In http://www.openmp.org
  2. Darte A., Robert Y., Vivien F., 2000. Scheduling and Automatic Parallelization, Birkhäuser Boston.
  3. Pugh W., Wonnacott D., 1998. Constraint-based array dependence analysis. In ACM Trans. on Programming Languages and Systems.
  4. Beletska A., Bielecki W., San Pietro P., 2007 Extracting Coarse-Grained Parallelism in Program Loops with the Slicing Framework. In Proceedings of ISPDC'2008.
  5. Bielecki W., Beletska A., Palkowski M., San Pietro P., 2008. Finding synchronization-free parallelism represented with trees of dependent operations. In Proceedings of ICA3PP'2008.
  6. Kelly W., Maslov V., Pugh W., Rosser E., Shpeisman T., Wonnacott, D., 1995. The omega library interface guide. Technical Report CS-TR-3445, University of Maryland.
  7. The POSIX 1003.1-2001, 2004. Standard of an application programming interface (API) for writing multithreaded applications. In http:// www.unix.org/version3/ieee_std.html
  8. Banerjee U., 1990. Unimodular transformations of double loops. In Proceedings of the Third Workshop on Languages and Compilers for Parallel Computing, pp. 192-219.
  9. Feautrier P., 1994. Toward automatic distribution. Journal of Parallel Processing Letters 4, pp. 233-244.
  10. Lim W., Cheong G.I., Lam M.S., 1999. An affine partitioning algorithm to maximize parallelism and minimize communication. In Proceedings of the 13th ACM SIGARCH International Conference on Supercomputing.
  11. Kelly W., Pugh W., Rosser E. and Shpeisman T., 1996. Transitive Closure of Infinite Graphs and its Applications. International Journal of Parallel Programming, v. 24, n. 6, pp. 579-598.
  12. Allen, R, Kennedy, K. 2001. Optimizing Compilers for Modern Architectures, pages 790, Morgan Kaufmann.
Download


Paper Citation


in Harvard Style

Wlodzimierz B. and Marek P. (2008). USING MESSAGE PASSING FOR DEVELOPING COARSE-GRAINED APPLICATIONS IN OPENMP . In Proceedings of the Third International Conference on Software and Data Technologies - Volume 1: ICSOFT, ISBN 978-989-8111-51-7, pages 145-152. DOI: 10.5220/0001873801450152


in Bibtex Style

@conference{icsoft08,
author={Bielecki Wlodzimierz and Palkowski Marek},
title={USING MESSAGE PASSING FOR DEVELOPING COARSE-GRAINED APPLICATIONS IN OPENMP},
booktitle={Proceedings of the Third International Conference on Software and Data Technologies - Volume 1: ICSOFT,},
year={2008},
pages={145-152},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0001873801450152},
isbn={978-989-8111-51-7},
}


in EndNote Style

TY - CONF
JO - Proceedings of the Third International Conference on Software and Data Technologies - Volume 1: ICSOFT,
TI - USING MESSAGE PASSING FOR DEVELOPING COARSE-GRAINED APPLICATIONS IN OPENMP
SN - 978-989-8111-51-7
AU - Wlodzimierz B.
AU - Marek P.
PY - 2008
SP - 145
EP - 152
DO - 10.5220/0001873801450152