Abstract
This paper studies the performance of parallel stream computations on a multiprocessor architecture using a work-stealing strategy. Incoming tasks are split in a number of jobs allocated to the processors and whenever a processor becomes idle, it steals a fraction (typically half) of the jobs from a busy processor. We propose a new model for the performance analysis of such parallel stream computations. This model takes into account both the algorithmic behavior of work-stealing as well as the hardware constraints of the architecture (synchronizations and bus contentions). Then, we show that this model can be solved using a recursive formula. We further show that this recursive analytical approach is more efficient than the classic global balance technique. However, our method remains computationally impractical when tasks split in many jobs or when many processors are considered. Therefore, bounds are proposed to efficiently solve very large models in an approximate manner. Experimental results show that these bounds are tight and robust so that they immediately find applications in optimization studies. An example is provided for the optimization of energy consumption with performance constraints. In addition, our framework is flexible and we show how it adapts to deal with several stealing strategies.
This work is supported by the Conseil Régional Rhône-Alpes, Global competitiveness cluster Minalogic contract SCEPTRE.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Description of traviata architecture (2008), http://www.stlinux.com/drupal/hw/boards/mb426
kaapi software (MOAIS, INRIA project-team) (2008), http://gforge.inria.fr/projects/kaapi
Acar, U.A., Blelloch, G.E., Blumofe, R.D.: The data locality of work stealing. In: SPAA 2000: Proc. of the twelfth annual ACM symposium on Parallel algorithms and architectures, pp. 1–12. ACM, New York (2000)
Anselmi, J., Gaujal, B.: Performance analysis of work stealing for streaming systems and optimizations. Technical Report 6988, INRIA (2009)
Arora, N.S., Blumofe, R.D., Plaxton, C.G.: Thread scheduling for multiprogrammed multiprocessors. Theory Comput. Syst. 34(2), 115–144 (2001)
Bender, M.A., Rabib, M.O.: Online scheduling of parallel programs on heterogeneous systems with applications to cilk. Theory of Computing Systems 35, 289–304 (2002); Special issue on SPA00
Berenbrink, P., Friedetzky, T., Goldberg, L.A.: The natural work-stealing algorithm is stable. In: Proc. of the 42nd FOCS, pp. 178–187. IEEE, Los Alamitos (2001)
Bernard, J., Roch, J.-L., Traore, D.: Processor-oblivious parallel stream computations. In: 16th Euromicro International Conference on Parallel, Distributed and network-based Processing, Toulouse, France (February 2008)
Blumofe, R.D., Leiserson, C.E.: Scheduling multithreaded computations by work stealing. Journal of the ACM 46(5), 720–748 (1999)
Bolch, G., Greiner, S., de Meer, H., Trivedi, K.S.: Queueing Networks and Markov Chains. Wiley-Int., Chichester (2005)
Frigo, M., Leiserson, C.E., Randall, K.H.: The implementation of the cilk-5 multithreaded language. In: PLDI 1998: Proc. of SIGPLAN 1998 conf. on Progr. lang. design and implementation, pp. 212–223. ACM, New York (1998)
Gumbel, E.J.: Statistics of extremes. Columbia University Press, New York (1958)
Rabaey, J., Pedram, M.: Low Power Design Methodologies. Kluwer Academic Publishers, Dordrecht (1996)
Jafar, S., Gautier, T., Krings, A., Roch, J.-L.: A checkpoint/recovery model for heterogeneous dataflow computations using work-stealing. In: Proc. European Conf. Parallel Processing (EuroPar 2005), pp. 675–684 (2005)
Lazowska, E.D., Zahorjan, J., Graham, G.S., Sevcik, K.C.: Quantitative system performance. Prentice-Hall, Upper Saddle River (1984)
Neill, D., Wierman, A.: On the benefits of work stealing in shared-memory multiprocessors, http://www.cs.cmu.edu/~acw/15740/paper.pdf
Squillante, M.S., Nelson, R.D.: Analysis of task migration in shared-memory multiprocessor scheduling. SIGMETRICS Perf. Eval. Rev. 19(1), 143–155 (1991)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Anselmi, J., Gaujal, B. (2009). Performance Evaluation of Work Stealing for Streaming Applications. In: Abdelzaher, T., Raynal, M., Santoro, N. (eds) Principles of Distributed Systems. OPODIS 2009. Lecture Notes in Computer Science, vol 5923. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-10877-8_4
Download citation
DOI: https://doi.org/10.1007/978-3-642-10877-8_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-10876-1
Online ISBN: 978-3-642-10877-8
eBook Packages: Computer ScienceComputer Science (R0)