Abstract
Parallel algorithms for distributed memory computers should be granular, in which case the set of algorithmic operations is split into sets known as computation grains, or tiles. Conditions are proposed and proved under which data is used in the same granular computation process where it was determined. These conditions can be used to estimate the number of communication operations in alternative versions of parallel algorithms.
Similar content being viewed by others
References
V. V. Voevodin and Vl. V. Voevodin, Parallel Computations (BKhV-Peterburg, St. Petersburg, 2002) [in Russian].
A. W. Lim and M. S. Lam, “Maximizing parallelism and minimizing synchronization with affine partitions,” Parallel Comput. 24, 645–475 (1998).
N. A. Likhoded, “Mapping of affine loop nests onto independent processors,” Cybern. Sist. Anal. 39, 459–566 (2003).
M. Dion and Y. Robert, “Mapping affine loop nests,” Parallel Comput. 22, 1373–1397 (1996).
N. A. Likhoded, “Distribution of operations and data arrays over processors,” Program. Comput. Software 29, 173–180 (2003).
E. V. Adutskevich and N. A. Likhoded, “A consistent generation of pipeline parallelism and distribution of operations and data among processors,” Program. Comput. Software 32, 166–176 (2006).
J. Garcia, E. Ayguade, and J. Labarta, “A framework for integrating data alignment, distribution, and redistribution in distributed memory multiprocessors,” IEEE Trans. Parallel Distributed Syst. 12, 416–430 (2001).
M. Dion and Y. Robert, “Compiling affine nested loops: How to optimize the residual communications after the alignment phase?” J. Parallel Distributed Comput. 30(2), 176–187 (1996).
L. Pan, J. Xue, M. K. Lai, M. Dillencourt, and L. F. Bic, “Toward automatic data distribution for migrating computations,” International Conference on Parallel Processing (Xian, China, 2007).
E. V. Adutskevich, N. A. Likhoded, and A. O. Sikorsky, “Parallelization of sequential programs: Distribution of arrays among processors and structurization of communications,” Cybern. Sist. Anal. 48(1), 122–133 (2012).
A. V. Frolov, “Finding and using directed cuts of real graphs of algorithms,” Program. Comput. Software 23, 230–239 (1997).
A. W. Lim, S.-W. Liao, and M. S. Lam, “Blocking and array contraction across arbitrarily nested loops using affine partitioning,” Proceedings of the 8th ACM SIGPLAN Symposium on Principles and Practices of Parallel Programming (ACM, New York, 2001), pp. 103–112.
J. Xue and W. Cai, “Time-minimal tiling when rise is larger than zero,” Parallel Comput. 28, 915–939 (2002).
D. Kim and S. Rajopadhye, “Parameterized tiling for imperfectly nested loops,” Technical Report CS-09-101, Colorado State University, Department of Computer Science, February 2009.
U. Bondhugula, M. Baskaran, S. Krishnamoorthy, J. Ramanujam, A. Rountev, and P. Sadayappan, “Automatic transformations for communication-minimized parallelization and locality optimization in the polyhedral model,” Lect. Notes Comput. Sci., No. 4959, 132–146 (2008).
U. Bondhugula, J. Ramanujam, and P. Sadayappan, “PLuTo: A practical and fully automatic polyhedral program optimization system,” Proceedings of the ACM SIGPLAN 2008 Conference on Programming Language Design and Implementation (ACM, New York, 2008).
S. Tavarageri, A. Hartono, M. Baskaran, L.-N. Pouchet, J. Ramanujam, and P. Sadayappan, “Parametric tiling of affine loop nests,” Proceedings of the 15th Workshop on Compilers for Parallel Computers, Vienna, Austria, July 2010.
A. Hartono, M. Baskaran, J. Ramanujam, and P. Sadayappan, “DynTile: Parametric tiled loop generation for parallel execution on multicore processors,” Proceedings of the 24th International Parallel and Distributed Processing Symposium, Atlanta, April 2010, pp. 1–12.
V. P. Gergel’ and R. G. Strongin, Foundations of Parallel Computing on Multiprocessor Computer Systems (Nizhegorod. Gos. Univ., Nizhni Novgorod, 2003) [in Russian].
N. A. Likhoded and A. A. Tolstikov, “Parallel sequences of grain computations,” Dokl. Nats. Akad. Nauk Belarusi 54(4), 36–41 (2010).
PIP: The parametric integer programming library, http://www.piplib.org.
Polylib: A library of polyhedral functions, http://icps.u-strasbg.fr/polylib/.
LooPo: Loop parallelization in the polytope model, http://www.fmi.uni-passau.de/loopo.
N. A. Likhoded, “Characterization of the locality of parallel implementations of imperfectly nested loops,” Dokl. Nats. Akad. Nauk Belarusi 54(1), 26–32 (2010).
V. V. Voevodin, “Macroparallelism and the decomposition of algorithms,” Comput. Math. Math. Phys. 35, 789–794 (1995).
S. V. Bakhanovich, G. M. Zayats, N. A. Likhoded, and V. A. Tsurko, “Parallel implementation of a locally one-dimensional method for the numerical solution of two-dimensional parabolic equations,” Informatika, No. 4, 72–80 (2010).
Author information
Authors and Affiliations
Corresponding author
Additional information
Original Russian Text © N.A. Likhoded, 2014, published in Zhurnal Vychislitel’noi Matematiki i Matematicheskoi Fiziki, 2014, Vol. 54, No. 8, pp. 1356–1367.
Rights and permissions
About this article
Cite this article
Likhoded, N.A. Sufficient conditions for the determination and use of data in the same granular parallel computation process. Comput. Math. and Math. Phys. 54, 1316–1326 (2014). https://doi.org/10.1134/S0965542514080077
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1134/S0965542514080077