Slicing based code parallelization for minimizing inter-processor communication
Author
Kandemir, M.
Zhang, Y.
Muralidhara, S. P.
Öztürk, Özcan
Narayanan, S. H. K.
Date
2009-10Source Title
CASES '09 Proceedings of the 2009 international conference on Compilers, architecture, and synthesis for embedded systems
Publisher
ACM
Pages
87 - 95
Language
English
Type
Conference PaperItem Usage Stats
152
views
views
123
downloads
downloads
Abstract
One of the critical problems in distributed memory multi-core architectures is scalable parallelization that minimizes inter-processor communication. Using the concept of iteration space slicing, this paper presents a new code parallelization scheme for data-intensive applications. This scheme targets distributed memory multi-core architectures, and formulates the problem of data-computation distribution (partitioning) across parallel processors using slicing such that, starting with the partitioning of the output arrays, it iteratively determines the partitions of other arrays as well as iteration spaces of the loop nests in the application code. The goal is to minimize inter-processor data communications. Based on this iteration space slicing based formulation of the problem, we also propose a solution scheme. The proposed data-computation scheme is evaluated using six data-intensive benchmark programs. In our experimental evaluation, we also compare this scheme against three alternate data-computation distribution schemes. The results obtained are very encouraging, indicating around 10% better speedup, with 16 processors, over the next-best scheme when averaged over all benchmark codes we tested. Copyright 2009 ACM.
Keywords
Automatic code parallelizationCode analysis and optimization
Iteration space slicing
Parallelizing compilers
Automatic codes
Code analysis
Iteration space slicing
Iteration spaces
Parallelizations
Parallelizing compiler
Embedded systems
Optimization
Parallel architectures
Program compilers
Permalink
http://hdl.handle.net/11693/28611Published Version (Please cite this version)
http://dx.doi.org/10.1145/1629395.1629409Collections
Related items
Showing items related by title, author, creator and subject.
-
Model-driven approach for supporting the mapping of parallel algorithms to parallel computing platforms
Arkin, E.; Tekinerdogan, Bedir; Imre, K.M. (Springer, Berlin, Heidelberg, 2013)The trend from single processor to parallel computer architectures has increased the importance of parallel computing. To support parallel computing it is important to map parallel algorithms to a computing platform that ... -
Model-driven transformations for mapping parallel algorithms on parallel computing platforms
Arkin, E.; Tekinerdoğan, Bedir (MDHPCL, 2013)One of the important problems in parallel computing is the mapping of the parallel algorithm to the parallel computing platform. Hereby, for each parallel node the corresponding code for the parallel nodes must be implemented. ... -
Auto-parallelizing stateful distributed streaming applications
Schneider, S.; Hirzel, M.; Gedik, Buğra; Wu, K. -L. (2012)Streaming applications transform possibly infinite streams of data and often have both high throughput and low latency requirements. They are comprised of operator graphs that produce and consume data tuples. The streaming ...