The Models and Methods of Optimal Control of Three Work-Stealing Deques Located in a Shared Memory
- 3 Downloads
“Work-stealing” is one of the most common methods of parallel task balancing. In this method, each core (processor) has a buffer of its tasks—a double-ended queue called “deque”. A core (processor) use one end of the deque to add new tasks or to take already available to execute them. The second end of the deque is accessible by other cores (processors), which have become empty and can intercept tasks—this is the mechanism of “work-stealing”. Algorithms and techniques for the high-performance big data processing are becoming increasingly sought after not only for storing databases but also for the proper handling of big data from a variety of domains such as science and engineering. Models and algorithms of optimal control of large deques belong to this area of research. The goal of this work is to develop, analyze and compare the models and methods of control of work-stealing deques in limited shared memory. For the case of three deques, the following control methods will be discussed: 1. Each of the three deques is located in its separate memory area; 2. Three deques move one after another in a circle; 3. Combined method—two deques are located one after another, one separately. To solve the posed problems, controlled random walks and simulation modeling were used.
Keywords and phrasesdata structures Monte Carlo methods random walks work-stealing deques
Unable to display preview. Download preview PDF.
This work was supported by the Russian Foundation for Basic Research, grant 18-01-00125-a.
- 2.M. Herlihy and N. Shavit, The Art of Multiprocessor Programming (Elsevier, Amsterdam, 2008).Google Scholar
- 6.D. Knuth, The Art of Computer Programming (Addison-Wesley, Reading, MA, 2001), Vol. 1.Google Scholar
- 9.E. A. Aksenova, A. A. Lazutina, and A. V. Sokolov, “On optimal methods for representing dynamic data structures,” Obozr. Prikl. Promyshl. Mat. 10, 375–376 (2003).Google Scholar
- 11.M. Mitzenmacher, “Analyses of load stealing models based on differential equations,” in Proceedings of the ACM Symposium on Parallel Algorithms and Architectures (1998), pp. 212–221.Google Scholar
- 13.D. Chase and Y. Lev, “Dynamic circular work-stealing deque,” in Proceedings of the ACM Symposium on Parallelism in Algorithms and Architectures (2005), pp. 21–28.Google Scholar
- 15.E. A. Aksenova and A. V. Sokolov, “Modeling of the memory management process for dynamic work-stealing schedulers,” in IEEE Proceedings of the 2017 Ivannikov ISP RAS Open Conference (2018), pp. 12–15.Google Scholar
- 17.E. A. Barkovsky and A. V. Sokolov, “Method for managing computer system memory,” RF Patent No. 2647627 (2018).Google Scholar
- 18.E. Barkovsky, A. Lazutina, and A. Sokolov, “The optimal control of two work-stealing deques, moving one after another in a shared memory,” Program Syst: Theory Appl. 10, 19–32 (2019).Google Scholar