Reduction of Subtask Dispersion in Fork-Join Systems

  • Iryna Tsimashenka
  • William J. Knottenbelt
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8168)


Fork-join and split-merge queueing systems are well-known abstractions of parallel systems in which each incoming task splits into subtasks that are processed by a set of parallel servers. A task exits the system when all of its subtasks have completed service. Two key metrics of interest in such systems are task response time and subtask dispersion. This paper presents a technique applicable to a class of fork-join systems with heterogeneous exponentially distributed service times that is able to reduce subtask dispersion with only a marginal increase in task response time. Achieving this is challenging since the unsynchronised operation of fork-join systems naturally militates against low subtask dispersion. Our approach builds on our earlier research examining subtask dispersion and response time in split-merge systems, and involves the frequent application and updating of delays to the subtasks at the head of the parallel service queues. Numerical results show the ability to reduce dispersion in fork-join systems to levels comparable with or below that observed in all varieties of split-merge systems while retaining the response time and throughput benefits of a fork-join system.


Fork-Join System Subtask Dispersion Task Response Time 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Baccelli, F., Makowski, A.M., Shwartz, A.: The fork-join queue and related systems with synchronization constraints: Stochastic ordering and computable bounds. Advances in Applied Probability 21(3), 629–660 (1989)MathSciNetMATHCrossRefGoogle Scholar
  2. 2.
    Baccelli, F., Massey, W.A., Towsley, D.: Acyclic fork-join queuing networks. Journal of ACM 36(3), 615–642 (1989)MathSciNetMATHCrossRefGoogle Scholar
  3. 3.
    Bolch, G., et al.: Queueing Networks and Markov Chains. J. Wiley & Sons, Inc. (2006)Google Scholar
  4. 4.
    Chen, R.J.: A hybrid solution of fork/join synchronization in parallel queues. IEEE Transactions on Parallel and Distributed Systems 12(8), 829–845 (2001)CrossRefGoogle Scholar
  5. 5.
    Chen, R.J.: An upper bound solution for homogeneous fork/join queuing systems. IEEE Transactions on Parallel and Distributed Systems 22(5), 874–878 (2011)CrossRefGoogle Scholar
  6. 6.
    David, H.A.: Order Statistics. Wiley Series in Probability and Mathematical Statistics. John Wiley (1980)Google Scholar
  7. 7.
    David, H.A., Nagaraja, H.N.: Order Statistics, 3rd edn. Wiley Series in Probability and Mathematical Statistics. John Wiley (2003)Google Scholar
  8. 8.
    Flatto, L.: Two parallel queues created by arrivals with two demands II. SIAM Journal on Applied Mathematics 45(5), 861–878 (1985)MathSciNetMATHCrossRefGoogle Scholar
  9. 9.
    Flatto, L., Hahn, S.: Two parallel queues created by arrivals with two demands I. SIAM Journal on Applied Mathematics 44(5), 1041–1053 (1984)MathSciNetMATHCrossRefGoogle Scholar
  10. 10.
    Harrison, P.G., Zertal, S.: Queueing models of RAID systems with maxima of waiting times. Performance Evaluation 64(7-8), 664–689 (2007)CrossRefGoogle Scholar
  11. 11.
    Heidelberger, P., Trivedi, K.S.: Analytic queueing models for programs with internal concurrency. IEEE Transactions on Computers C-32(1), 73–82 (1983)CrossRefGoogle Scholar
  12. 12.
    Jeffay, K., Stanat, D.F., Martel, C.U.: On non-preemptive scheduling of periodic and sporadic tasks. In: Proc. 12th Real-Time Systems Symposium, pp. 129–139 (1991)Google Scholar
  13. 13.
    Kameda, H., Li, J., Kim, C., Zhang, Y.: A comparison of static and dynamic load balancing. In: Optimal Load Balancing in Distributed Computer Systems. Telecommunication Networks and Computer Systems, pp. 225–240. Springer (1997)Google Scholar
  14. 14.
    Kim, C., Agrawala, A.K.: Analysis of the fork-join queue. IEEE Transactions on Computers 38(2), 250–255 (1989)MathSciNetMATHCrossRefGoogle Scholar
  15. 15.
    Knottenbelt, W.J., Tsimashenka, I.: Reducing subtask dispersion in parallel systems. In: Trends in Parallel, Distributed, Grid and Cloud Computing for Engineering, ch. 9, pp. 203–227. Saxe-Coburg Publications (April 2013)Google Scholar
  16. 16.
    Kwok, Y., Ahmad, I.: Static scheduling algorithms for allocating directed task graphs to multiprocessors. ACM Computing Surveys 31(4), 406–471 (1999)CrossRefGoogle Scholar
  17. 17.
    Lebrecht, A., Knottenbelt, W.J.: Response Time Approximations in Fork-Join Queues. In: 23rd Annual UK Performance Engineering Workshop, UKPEW 2007 (July 2007)Google Scholar
  18. 18.
    Lui, J.C.S., Muntz, R.R., Towsley, D.: Computing performance bounds of fork-join parallel programs under a multiprocessing environment. IEEE Transactions on Parallel Distributed Systems 9(3), 295–311 (1998)CrossRefGoogle Scholar
  19. 19.
    Mitrani, I.: Management of server farms for performance and profit. Computer Journal 53(7), 1038–1044 (2010)CrossRefGoogle Scholar
  20. 20.
    Nelson, R., Tantawi, A.N.: Approximate analysis of fork/join synchronization in parallel queues. IEEE Transactions on Computers 37(6), 739–743 (1988)CrossRefGoogle Scholar
  21. 21.
    Slegers, J., Mitrani, I., Thomas, N.: Static and dynamic server allocation in systems with on/off sources. Annals of Operations Research 170, 251–263 (2009)MathSciNetMATHCrossRefGoogle Scholar
  22. 22.
    Sun, J., Peterson, G.D.: An effective execution time approximation method for parallel computing. IEEE Transactions on Parallel and Distributed Systems 23(11), 2024–2032 (2012)CrossRefGoogle Scholar
  23. 23.
    Towsley, D., Rommel, C.G., Stankovic, J.A.: Analysis of fork-join program response times on multiprocessors. IEEE Transactions on Parallel and Distributed Systems 1(3), 286–303 (1990)CrossRefGoogle Scholar
  24. 24.
    Tsimashenka, I., Knottenbelt, W.J.: Reduction of Variability in Split-Merge Systems. In: Imperial College Computing Student Workshop (ICCSW 2011), pp. 101–107 (2011)Google Scholar
  25. 25.
    Tsimashenka, I., Knottenbelt, W.J.: Trading off subtask dispersion and response time in split-merge systems. In: Dudin, A., De Turck, K. (eds.) ASMTA 2013. LNCS, vol. 7984, pp. 431–442. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  26. 26.
    Tsimashenka, I., Knottenbelt, W., Harrison, P.: Controlling variability in split-merge systems. In: Al-Begain, K., Fiems, D., Vincent, J.-M. (eds.) ASMTA 2012. LNCS, vol. 7314, pp. 165–177. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  27. 27.
    Varki, E.: Response time analysis of parallel computer and storage systems. IEEE Transactions on Parallel and Distributed Systems 12(11), 1146–1161 (2001)CrossRefGoogle Scholar
  28. 28.
    Varma, S., Makowski, A.M.: Interpolation approximations for symmetric fork-join queues. Performance Evaluation 20(1-3), 245–265 (1994)CrossRefGoogle Scholar
  29. 29.
    Yang, A.T., Gerasoulis: DSC: Scheduling parallel tasks on an unbounded number of processors. IEEE Transactions on Parallel and Distributed Systems 5(9), 951–967 (1994)CrossRefGoogle Scholar
  30. 30.
    Zhao, H., Xia, C.H., Liu, Z., Towsley, D.: A unified modeling framework for distributed resource allocation of general fork and join processing networks. In: Proc. ACM SIGMETRICS International Conference on Measurement and Modeling of Computer Systems (SIGMETRICS 2010), pp. 299–310. ACM, New York (2010)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Iryna Tsimashenka
    • 1
  • William J. Knottenbelt
    • 1
  1. 1.Imperial College LondonLondonUnited Kingdom

Personalised recommendations