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

被引:19
作者
机构
[1] Ahnlab, Inc., 8F V-Valley Bldg., Gangnam-gu, Seoul 135-744
[2] Department of Computer Science, Pohang Univ. of Sci. and Technology
[3] Department of Electrical Engineering, Pohang Univ. of Sci. and Technology
来源
Lee, H. (heejo@ahnlab.com) | 1600年 / Institute of Electrical and Electronics Engineers Computer Society卷 / 14期
关键词
Matrix chain product; Matrix chain scheduling problem; Parallel matrix multiplication; Processor allocation; Task scheduling;
D O I
10.1109/TPDS.2003.1195411
中图分类号
学科分类号
摘要
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.
引用
收藏
页码:394 / 407
页数:13
相关论文
共 33 条
  • [1] Horowitz E., Sahni S., Fundamentals of Data Structures, (1976)
  • [2] Dekel E., Nassimi D., Sahni S., Parallel matrix and graph algorithms, SIAM J. Computing, 10, pp. 657-675, (1981)
  • [3] Yau S.-T., Lu Y.Y., Reducing the symmetric matrix eigenvalue problem to matrix multiplications, SIAM J. Scientific Computing, 14, 1, pp. 121-136, (1993)
  • [4] Lin S.-S., A chained-matrices approach for parallel computation of continued fractions and its applications, J. Scientific Computing, 9, 1, pp. 65-80, (1994)
  • [5] Kumar V., Grama A., Gupta A., Karypis G., Introduction to Parallel Computing: Design and Analysis of Parallel Algorithms, (1994)
  • [6] Chandra A., Computing Matrix Chain Products in Near-Optimal Time, (1975)
  • [7] Gould H., Bell and Catalan Numbers, (1977)
  • [8] Godbole S., An efficient computation of matrix chain products, Trans. Computers, 22, 9, pp. 864-866, (1973)
  • [9] Chin F., An O(n) algorithm for determining a near-optimal computation order of matrix chain product, Comm. ACM, pp. 544-549, (1978)
  • [10] Hu T., Shing M., Computation of matrix chain products. Part I, SIAM J. Computing, 11, pp. 362-373, (1982)