Optimal Linear Programming Solutions for Multiprocessor Scheduling with Communication Delays

  • Sarad Venugopalan
  • Oliver Sinnen
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7439)

Abstract

Task parallelism does not automatically scale with the use of parallel processors. Optimised scheduling of tasks is necessary to maximise the utilisation of each available processor. It is common to use heuristics to find solutions for task scheduling problem instances. However, there is no guarantee that the heuristic solution is close to the optimal solution. The outcome of this work is to provide optimal solutions for small and medium sized instances of the task scheduling problem. Two optimal scheduling formulations using Integer Linear Programming (ILP) are proposed for the Multiprocessor Scheduling Problem with Communication Delays: ILP-RevisedBoolean Logic and ILP-Transitivity Clause. ILP-RevisedBooleanLogic is designed to work efficiently when the number of processors available to be scheduled on is small. ILP-TransitivityClause is efficient when a larger number of processors are available to be scheduled on. Each formulation uses a different linearisation of the Integer Bilinear Programming formulation and is tested on CPLEX using known benchmark graphs for task scheduling.

Keywords

Multiprocessor Task Scheduling Problem Communication Delays Linear Programming Optimal 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    ILOG CPLEX 11.0 User’s Manual. ILOG S.A., Gentilly, France (2007)Google Scholar
  2. 2.
    Coffman Jr., E.G., Graham, R.L.: Optimal scheduling for two-processor systems. Acta Informat. 1, 200–213 (1972)MathSciNetCrossRefGoogle Scholar
  3. 3.
    Davidović, T., Liberti, L., Maculan, N., Mladenovic, N.: Towards the optimal solution of the multiprocessor scheduling problem with communication delays, pp. 128–135 (2007)Google Scholar
  4. 4.
    Davidović, T., Crainic, T.G.: Benchmark-problem instances for static scheduling of task graphs with communication delays on homogeneous multiprocessor systems. Comput. Oper. Res. 33, 2155–2177 (2006)MathSciNetMATHCrossRefGoogle Scholar
  5. 5.
    Dechter, R., Pearl, J.: Generalized best-first search strategies and the optimality of A*. J. ACM 32(3), 505–536 (1985)MathSciNetMATHCrossRefGoogle Scholar
  6. 6.
    Hagras, T., Janecek, J.: A high performance, low complexity algorithm for compile-time task scheduling in heterogeneous systems. Parallel Computing 31(7), 653–670 (2005)CrossRefGoogle Scholar
  7. 7.
    Hwang, J.-J., Chow, Y.-C., Anger, F.D., Lee, C.-Y.: Scheduling precedence graphs in systems with interprocessor communication times. SIAM J. Comput. 18(2), 244–257 (1989)MathSciNetMATHCrossRefGoogle Scholar
  8. 8.
    Kwok, Y.-K., Ahmad, I.: On multiprocessor task scheduling using efficient state space search approaches. Journal of Parallel and Distributed Computing 65(12), 1515–1532 (2005)MATHCrossRefGoogle Scholar
  9. 9.
    Löwe, W., Zimmermann, W.: Scheduling Iterative Programs onto LogP-Machine. In: Amestoy, P.R., Berger, P., Daydé, M., Duff, I.S., Frayssé, V., Giraud, L., Ruiz, D. (eds.) Euro-Par 1999. LNCS, vol. 1685, pp. 332–339. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  10. 10.
    Palmer, A., Sinnen, O.: Scheduling algorithm based on force directed clustering. In: Ninth International Conference on Parallel and Distributed Computing, Applications and Technologies, PDCAT 2008, pp. 311–318 (December 2008)Google Scholar
  11. 11.
    Price, C.C., Pooch, U.W.: Search techniques for a nonlinear multiprocessor scheduling problem. Naval Research Logistics Quarterly 29(2), 213–233 (1982)MATHCrossRefGoogle Scholar
  12. 12.
    Radulescu, A., van Gemund, A.J.C.: Low-cost task scheduling for distributed-memory machines. IEEE Transactions on Parallel and Distributed Systems 13(6), 648–658 (2002)CrossRefGoogle Scholar
  13. 13.
    Russell, S.J., Norvig, P.: Artificial intelligence: a modern approach. Prentice Hall (2010)Google Scholar
  14. 14.
    Sarkar, V.: Partitioning and scheduling parallel programs for multiprocessors. MIT Press (1989)Google Scholar
  15. 15.
    Shahul, A.Z.S., Sinnen, O.: Scheduling task graphs optimally with A*. Journal of Supercomputing 51(3), 310–332 (2010)CrossRefGoogle Scholar
  16. 16.
    Sinnen, O., Sousa, L.: Scheduling Task Graphs on Arbitrary Processor Architectures Considering Contention. In: Hertzberger, B., Hoekstra, A.G., Williams, R. (eds.) HPCN-Europe 2001. LNCS, vol. 2110, pp. 373–382. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  17. 17.
    Sinnen, O., Sousa, L.: Experimental evaluation of task scheduling accuracy: Implications for the scheduling model. IEICE Transactions on Information and Systems E86-D(9), 1620–1627 (2003)Google Scholar
  18. 18.
    Sinnen, O.: Task Scheduling for Parallel Systems (Wiley Series on Parallel and Distributed Computing). Wiley- Interscience (2007)Google Scholar
  19. 19.
    Yang, T., Gerasoulis, A.: List scheduling with and without communication delays. Parallel Computing 19(12), 1321–1344 (1993)MATHCrossRefGoogle Scholar
  20. 20.
    Zomaya, A.Y., Ward, C., Macey, B.: Genetic scheduling for parallel processor systems: comparative studies and performance issues. IEEE Transactions on Parallel and Distributed Systems 10(8), 795–812 (1999)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Sarad Venugopalan
    • 1
  • Oliver Sinnen
    • 1
  1. 1.The University of AucklandNew Zealand

Personalised recommendations