J Supercomput (2008) 46: 40–57 DOI 10.1007/s11227-008-0185-1 A message passing strategy for array redistributions in a torus network Stavros Souravlas · Manos Roumeliotis Published online: 26 February 2008 © Springer Science+Business Media, LLC 2008 Abstract The array redistribution problem occurs in many important applications in parallel computing. In this paper, we consider this problem in a torus network. Tori are preferred to other multidimensional networks (like hypercubes) due to their better scalability (IEE Trans. Parallel Distrib. Syst. 50(10), 1201–1218, 2001). We present a message combining approach that splits any array redistribution problem in a se- ries of broadcasts where all sources send messages of the same size, thus a balanced traffic load is achieved. Unlike existing array redistribution algorithms, the scheme introduced in this work eliminates the need for data reorganization in the memory of the source and target processors. Moreover, the processing of the scheduled broad- casts is pipelined, thus the total cost of redistribution is reduced. Keywords Array redistribution · Superclasses · Pipeline · High performance Fortran · Communication scheduling 1 Introduction The problem of array redistribution between several processors is very important, af- fecting the performance of parallel programs. Many complicated parallel computing applications are composed of several stages. As the program proceeds from one stage to another, it may require different distribution of data between several processor sets. Such applications are the alternate direction implicit method [2] and the multi- dimensional fast Fourier transform [35]. Data redistribution is, therefore, required S. Souravlas () · M. Roumeliotis Applied Informatics Department, University of Macedonia, 156 Egnatia St. 54006, Thessaloniki, Greece e-mail: sourstav@uom.gr M. Roumeliotis e-mail: manos@uom.gr