Annals of Operations Research

, Volume 129, Issue 1–4, pp 65–80 | Cite as

Scheduling Malleable Tasks on Parallel Processors to Minimize the Makespan

  • Jacek Błażewicz
  • Maciej Machowiak
  • Jan Węglarz
  • Mikhail Y. Kovalyov
  • Denis Trystram


The problem of optimal scheduling n tasks in a parallel processor system is studied. The tasks are malleable, i.e., a task may be executed by several processors simultaneously and the processing speed of a task is a nonlinear function of the number of processors allocated to it. The total number of processors is m and it is an upper bound on the number of processors that can be used by all the tasks simultaneously. It is assumed that the number of processors is sufficient to process all the tasks simultaneously, i.e. nm. The objective is to find a task schedule and a processor allocation such that the overall task completion time, i.e. the makespan, is minimized. The problem is motivated by real-life applications of parallel computer systems in scientific computing of highly parallelizable tasks. An O(n) algorithm is presented to solve this problem when all the processing speed functions are convex. If these functions are all concave and the number of tasks is a constant, the problem can be solved in polynomial time. A relaxed problem, in which the number of processors allocated to each task is not required to be integer, can be solved in O(nmax {m,nlog 2m}) time. It is proved that the minimum makespan values for the original and relaxed problems coincide. For n=2 or n=3, an optimal solution for the relaxed problem can be converted into an optimal solution for the original problem in a constant time.

scheduling resource allocation parallel computing 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Bernard, P.E., T. Gautier, and D. Trystram. (1999). “Large Scale Simulation of Parallel Molecular Dynamics.” In Proceedings of Second Merged Symposium IPPS/SPDP, 13th International Parallel Processing Symposium and 10th Symposium on Parallel and Distributed Processing, San Juan, Puerto Rico.Google Scholar
  2. Blayo and L. Debreu. (1998). “Adaptive Mesh Refinement for Finite Difference Ocean Models: First Experiments.” Journal of Physics Oceanogr. 29, 1239–1250.Google Scholar
  3. Błażewicz, J., M. Drabowski, and J. Weglarz. (1986). “Scheduling Multiprocessor Tasks to Minimize Schedule Length.” IEEE Transactions on Computing 35, 389–393.Google Scholar
  4. Błażewicz, J., K. Ecker, E. Pesch, G. Schmidt, and J. Weglarz. (1996). Scheduling Computer and Manufacturing Processes. Berlin/New York: Springer.Google Scholar
  5. Błażewicz, J., K. Ecker, B. Plateau, and D. Trystram (eds.). (2000). Handbook on Parallel and Distributed Processing. Berlin/New York: Springer.Google Scholar
  6. Dongarra, J., L. Duff, D. Danny, C. Sorensen, and H. van der Vorst. (1999). Numerical Linear Algebra for High Performance Computers (Software, Environments, Tools). Philadelphia, PA: SIAM.Google Scholar
  7. Drozdowski, M. (1996). “Scheduling Multiprocessor Tasks-An Overview.” European Journal of Operational Research 94, 215–230.Google Scholar
  8. Du, J. and J.Y.-T. Leung. (1989). “Complexity of Scheduling Parallel Tasks Systems.” SIAM Journal on Discrete Mathematics 2, 473–487.Google Scholar
  9. Ludwig, W.T. (1995). “Algorithms for Scheduling Malleable and Nonmalleable Parallel Tasks.” Ph.D. thesis, University of Wisconsin-Madison, Department of Computer Science.Google Scholar
  10. Mounie, G., C. Rapine and D. Trystram. (1999). “Efficient Approximation Algorithms for Scheduling Malleable Tasks.” In Eleventh ACM Symposium on Parallel Algorithms and Architectures (SPAA'99), ACM, pp. 23–32.Google Scholar
  11. Prasanna, G.N.S. and B.R. Musicus. (1995). “The Optimal Control Approach to Generalized Multiprocessor Scheduling.” Algorithmica.Google Scholar
  12. Rapine, C., I. Scherson, and D. Trystram. (1998). “On-line Scheduling of Parallelizable Jobs.” In Lecture Notes in Computer Science, Vol. 1470. New York: Springer.Google Scholar
  13. Scherson, I., R. Subramanian, V. Reis and L. Campos. (1996). “Scheduling Computationally Intensive Data Parallel Programs.” In Ecole Francaise de Parallélisme, Réseaux et Systèmes, Placement Dynamique et Répartition de Charge: Application aux Systèmes Parallèles et Répartis, pp. 107–129. Presquele de Giens: INRIA.Google Scholar
  14. Stanat, D.F. and D.F. McAllister. (1977). Discrete Mathematics in Computer Science. Englewood Cliffs, NJ: Prentice-Hall.Google Scholar
  15. Turek, J., J.Wolf, and P. Yu. (1992). “Approximate Algorithms for Scheduling Parallelizable Tasks.” In 4th Annual ACM Symposium on Parallel Algorithms and Architectures, pp. 323–332.Google Scholar
  16. Weglarz, J. (1981). “Project Scheduling with Continuously-Divisible, Doubly Constrained Resources.” Management Science 27, 1040–1052.Google Scholar
  17. Weglarz, J. (1982). “Modelling and Control of Dynamic Resource Allocation Project Scheduling Systems.” In S.G. Tzafestas (ed.), Optimization and Control of Dynamic Operational Research Models. Amsterdam: North-Holland.Google Scholar

Copyright information

© Kluwer Academic Publishers 2004

Authors and Affiliations

  • Jacek Błażewicz
    • 1
  • Maciej Machowiak
    • 1
  • Jan Węglarz
    • 1
  • Mikhail Y. Kovalyov
    • 2
  • Denis Trystram
    • 3
  1. 1.Politechnika Poznanska, ul. Piotrowo 3Instytut InformatykiPoznanPoland
  2. 2.Faculty of EconomicsBelarus State UniversityMinskBelarus
  3. 3.Laboratory Informatique et DistributionIMAGGrenoble, p

Personalised recommendations