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...

Full description

Saved in:
Bibliographic Details
Published in:Journal of parallel and distributed computing 2001-06, Vol.61 (6), p.784-809
Main Authors: Milosavljević, Igor Z., Jabri, Marwan A.
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!
Description
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