Abstract
Conventional iterative solvers for partial differential equations impose strict data dependencies between each solution point and its neighbors. When implemented in OpenMP, they repeatedly execute barrier synchronization in each iterative step to ensure that data dependencies are strictly satisfied. We propose new parallel annotations to support an asynchronous computation model for iterative solvers. At the outermost level, the ASYNC_REDUCTION keyword is used to annotate the iterative loop as a candidate for asynchronous execution. The ASYNC_REGION contains inner loops which may be annotated by ASYNC_DO or ASYNC_REDUCTION. If the compiler accepts the ASYNC_REGION designation, it converts the iterative loop into a parallel section executed by multiple threads which divide the iterations of each ASYNC_DO or ASYNC_REDUCTION loop and execute them without having to synchronize through a conventional barrier. We present experimental results to show the benefit of using ASYNC loop constructs in multigrid methods and an SOR-preconditioned CG solver.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Bailey, D., Barszcz, E., Barton, J., Browning, D., Carter, R., Dagum, L., Fatoohi, R., Fineberg, S., Fredrickson, P., Lasinski, T., Schreiber, R., Simon, H., Venkatakrishnan, V., Weerantunga, S.: The NAS Parallel Benchmarks. Technical Report RNR-94-007, NASA (March 1994)
Barlow, R.H., Evans, D.J.: Parallel algorithms for the iterative solution to linear systems. The Computer Journal 25(1), 56–60 (1982)
Baudet, G.M.: Asynchronous iterative methods for multiprocessors. J. ACM 25(2), 226–244 (1978)
Bertsekas, D.P., Tsitsiklis, J.N.: Convergence rate and termination of asynchronous iterative algorithms. In: ICS 1989: Proceedings of the 3rd international conference on Supercomputing, pp. 461–470. ACM, New York (1989)
OpenMP Architecture Review Board. OpenMP Application Program Interface. 2.5 edition (May 1990)
Bru, R., Migallón, V., Penadés, J., Szyld, D.B.: Parallel, Synchronous and Asynchronous Two-stage Multisplitting Methods. Electronic Transactions on Numerical Analysis 3, 24–38 (1995)
Chazan, D., Miranker, W.L.: Chaotic relaxation. Linear Algebra and Its Application 2, 199–222 (1969)
Gu, J., Li, Z.: Efficient interprocedural array data-flow analysis for automatic program parallelization. IEEE Trans. on Software Engineering 26, 244–261 (2000)
Jin, H., Frumkin, M., Yan, J.: The OpenMP Implementation of NAS Parallel Benchmarks and Its Performance. Technical Report NAS-99-011, NASA (October 1999)
Moon, S., Hall, M.W.: Evaluation of predicated array data-flow analysis for automatic parallelization. SIGPLAN Not. 34(8), 84–95 (1999)
Moon, S., Hall, M.W., Murphy, B.R.: Predicated array data-flow analysis for run-time parallelization. In: International Conference on Supercomputing, pp. 204–211 (1998)
Saad, Y.: Iterative Methods for Sparse Linear Systems, 2nd edn. SIAM, Philadelphia (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Meyers, R., Li, Z. (2008). ASYNC Loop Constructs for Relaxed Synchronization. In: Amaral, J.N. (eds) Languages and Compilers for Parallel Computing. LCPC 2008. Lecture Notes in Computer Science, vol 5335. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-89740-8_20
Download citation
DOI: https://doi.org/10.1007/978-3-540-89740-8_20
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-89739-2
Online ISBN: 978-3-540-89740-8
eBook Packages: Computer ScienceComputer Science (R0)