Efficiency of matrix applications in parallel processing environments relie
s on two factors: speed of primitive matrix operations and layout of distri
buted array's. Good array layout improves locality and reduces communicatio
n overheads. Array alignment is especially important. being a minimum requi
rement for locality. Existing matrix programming environments either requir
e manual alignment, which compromises the simplicity of use, or resort to s
ome default settings, which sacrifices performance. Techniques for automati
c alignment have been proposed, but their use is not widespread, and their
practical significance has not been sufficiently examined. We present an ex
perimental evaluation of an alignment optimization technique implemented in
a parallelizing compiler for Matlab scripts. We have measured the performa
nce of five applications on two parallel architectures. The significance of
alignment optimization is demonstrated by 43% average improvement in perfo
rmance and doubling the speed in some realistic cases. This optimization te
chnique enabled ordinary Matlab scripts to run at a similar speed to hand-c
oded PBLAS implementations. (C) 2001 Academic Press.