Abstract
A technique, permitting automatic finding coarse grained parallelism in algorithms presented with arbitrary nested loops, is presented. The technique is based on finding affine space partition mappings. The main advantage of this technique is that it allows us to form constraints for finding mappings directly in a linear form while known techniques result in building non-linear constraints which should next be linearized. After finding affine space partition mappings, well-known code generation approaches can be applied to expose algorithm parallelism. It is shown how this technique can be applied for parallelizing computational geometry algorithms by means of two examples.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Amarasinghe, S.P., Lam, M.S.: Communication optimization and code generation for distributed memory machines. In: Proceedings of the SIGPLAN’93. (1993) 126–138
Banerjee, U.: Unimodular transformations of double loops. In: Proceedings of the Third Workshop on Languages and Compilers for Parallel Computing. (1990) 192–219
Boulet, P., Darte, A., Silber, G.A., Vivien, F.: Loop paralellelization algorithms: from parallelism extraction to code generation. Technical report. (1997)
Chan, A., Dehne, F., and Rau-Chaplin, A.: Coarse grained parallel next element search. In.: Proceedings of the 11-th International Parallel Processing Symposium. (1997) 320–325
Collard, J.F., Feautrier, P., Risset, T.: Construction of do loops from systems of afffne constraints. Technical Report 93-s1, LIP, Lyon. (1993)
Darte, A., Risset, T., Robert, Y.: Loop nest scheduling and transformations. In Dongarra, J., Tourancheau, B., eds.: Enviroments and tools for parallel science computing. North Holland. (1993)
Darte, A., Silber, G., Vivien, F.: Combining retiming and scheduling techniques for loop parallelization and loop tiling. Technical Report 96-34, Laboratoire de l’Informatique du Parallelisme. (1996)
Dehne, F., Fabri., A.: Scalable parallel computational geometry for coarse grained multicomputers. International Journal of Computational Geometry and Applications. 3(1996) 379–400
Feautrier, P.: Some efficient solutions to the affine scheduling problem, part i, one dimensional time. International Journal of Parallel Programming 21 (1992) 313–348
Feautrier, P.: Some efficient solutions to the affine scheduling problem, part ii, multidimensional time. International Journal of Parallel Programming 21 (1992) 389–420
Feautrier, P.: Toward automatic distribution. Journal of Parallel Processing Letters 4 (1994) 233–244
Goodrich, M.T.: Parallel algorithms in geometry. In: J. E. Goodman and J. O’Rourke, editors, Handbook of Discrete and Computational Geometry, chapter 36, CRC Press LLC. (1997)669–682
Huang, C., Sadayappan, P.: Communication-free hyperplane partitioning of nested loops. Journal of Parallel and Distributed Computing 19 (1993) 90–102
Kelly, W., Maslov, V., Pugh, W., Rosser, E., Shpeisman, T., Wonnacott, D.: The omega library interface guide. Technical Report CS-TR-3445, University of Maryland. (1995)
Lim, W., Lam, M.S.: Communication-free parallelization via affine transformations. In: Proceedings of the Seventh Workshop on Languages and Compilers for Parallel Computing. (1994) 92–106
Lim, W., Cheong, G.I., Lam, M.S.: An affine partitioning algorithm to maximize parallelism and minimize communication. In: Proceedings of the 13th ACM SIGARCH International Conference on Supercomputing. (1999)
Lim, W., Lam, M.S.: Maximizing parallelism and minimizing synchronization with affine transforms. In: Conference Record of the 24th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. (1997)
Pugh, W., D. Wonnacott: An exact method for analysis of value-based array data dependences. In: Workshop on Languages and Compilers for Parallel Computing. (1993)
Quillere, F., Rajopadhye, S., Wilde, D.: Generation of efficient nested loops from polyhedra. International Journal of Parallel Programming 28 (2000)
Wolf, M.E.: Improving locality and parallelism in nested loops. Ph.D. Dissertation CSL-TR-92-538, Stanford University, Dept. Computer Science. (1992)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Beletskyy, V. (2003). Finding Coarse Grained Parallelism in Computational Geometry Algorithms. In: Kumar, V., Gavrilova, M.L., Tan, C.J.K., L’Ecuyer, P. (eds) Computational Science and Its Applications — ICCSA 2003. ICCSA 2003. Lecture Notes in Computer Science, vol 2669. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44842-X_93
Download citation
DOI: https://doi.org/10.1007/3-540-44842-X_93
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-40156-8
Online ISBN: 978-3-540-44842-6
eBook Packages: Springer Book Archive