Loading…
Experimental Evaluation of Automatic Array Alignment in Parallelized Matlab
Efficiency of matrix applications in parallel processing environments relies on two factors: speed of primitive matrix operations and layout of distributed arrays. Good array layout improves locality and reduces communication overheads. Array alignment is especially important, being a minimum requir...
Saved in:
Published in: | Journal of parallel and distributed computing 2001-06, Vol.61 (6), p.784-809 |
---|---|
Main Authors: | , |
Format: | Article |
Language: | English |
Subjects: | |
Citations: | Items that this one cites Items that cite this one |
Online Access: | Get full text |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Summary: | Efficiency of matrix applications in parallel processing environments relies on two factors: speed of primitive matrix operations and layout of distributed arrays. Good array layout improves locality and reduces communication overheads. Array alignment is especially important, being a minimum requirement for locality. Existing matrix programming environments either require manual alignment, which compromises the simplicity of use, or resort to some default settings, which sacrifices performance. Techniques for automatic alignment have been proposed, but their use is not widespread, and their practical significance has not been sufficiently examined. We present an experimental evaluation of an alignment optimization technique implemented in a parallelizing compiler for Matlab scripts. We have measured the performance of five applications on two parallel architectures. The significance of alignment optimization is demonstrated by 43% average improvement in performance and doubling the speed in some realistic cases. This optimization technique enabled ordinary Matlab scripts to run at a similar speed to hand-coded PBLAS implementations. |
---|---|
ISSN: | 0743-7315 1096-0848 |
DOI: | 10.1006/jpdc.2000.1665 |