TY - JOUR

T1 - Processor allocation and task scheduling of matrix chain products on parallel systems

AU - Lee, Heejo

AU - Kim, Jong

AU - Hong, Sung Je

AU - Lee, Sunggu

N1 - Funding Information:
The authors would like to thank Professor Chul E. Kim for many fruitful suggestions on the complexity analysis. Also, they give special thanks to Dr. Min-Ho Kyung for very helpful discussions on this work. This research was supported in part by the Ministry of Education of Korea through its BK21 program toward the Electrical and Computer Engineering Division at POSTECH.

PY - 2003/4

Y1 - 2003/4

N2 - The problem of finding an optimal product sequence for sequential multiplication of a chain of matrices (the matrix chain ordering problem, MCOP) is well-known and has been studied for a long time. In this paper, we consider the problem of finding an optimal product schedule for evaluating a chain of matrix products on a parallel computer (the matrix chain scheduling problem, MCSP). The difference between the MCSP and the MCOP is that the MCOP pertains to a product sequence for single processor systems and the MCSP pertains to a sequence of concurrent matrix products for parallel systems. The approach of parallelizing each matrix product after finding an optimal product sequence for single processor systems does not always guarantee the minimum evaluation time on parallel systems since each parallelized matrix product may use processors inefficiently. We introduce a new processor scheduling algorithm for the MCSP which reduces the evaluation time of a chain of matrix products on a parallel computer, even at the expense of a slight increase in the total number of operations. Given a chain of n matrices and a matrix product utilizing at most P/k processors in a P-processor system, the proposed algorithm approaches k(n - 1)/(n + k log(k) - k) times the performance of parallel evaluation using the optimal sequence found for the MCOP. Also, experiments performed on a Fujitsu AP1000 multicomputer show that the proposed algorithm significantly decreases the time required to evaluate a chain of matrix products in parallel systems.

AB - The problem of finding an optimal product sequence for sequential multiplication of a chain of matrices (the matrix chain ordering problem, MCOP) is well-known and has been studied for a long time. In this paper, we consider the problem of finding an optimal product schedule for evaluating a chain of matrix products on a parallel computer (the matrix chain scheduling problem, MCSP). The difference between the MCSP and the MCOP is that the MCOP pertains to a product sequence for single processor systems and the MCSP pertains to a sequence of concurrent matrix products for parallel systems. The approach of parallelizing each matrix product after finding an optimal product sequence for single processor systems does not always guarantee the minimum evaluation time on parallel systems since each parallelized matrix product may use processors inefficiently. We introduce a new processor scheduling algorithm for the MCSP which reduces the evaluation time of a chain of matrix products on a parallel computer, even at the expense of a slight increase in the total number of operations. Given a chain of n matrices and a matrix product utilizing at most P/k processors in a P-processor system, the proposed algorithm approaches k(n - 1)/(n + k log(k) - k) times the performance of parallel evaluation using the optimal sequence found for the MCOP. Also, experiments performed on a Fujitsu AP1000 multicomputer show that the proposed algorithm significantly decreases the time required to evaluate a chain of matrix products in parallel systems.

KW - Matrix chain product

KW - Matrix chain scheduling problem

KW - Parallel matrix multiplication

KW - Processor allocation

KW - Task scheduling

UR - http://www.scopus.com/inward/record.url?scp=0037619247&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=0037619247&partnerID=8YFLogxK

U2 - 10.1109/TPDS.2003.1195411

DO - 10.1109/TPDS.2003.1195411

M3 - Article

AN - SCOPUS:0037619247

VL - 14

SP - 394

EP - 407

JO - IEEE Transactions on Parallel and Distributed Systems

JF - IEEE Transactions on Parallel and Distributed Systems

SN - 1045-9219

IS - 4

ER -