Title :
Improving Run-Time Scheduling for General-Purpose Parallel Code
Author :
Tzannes, Alexandros ; Barua, Rajeev ; Vishkin, Uzi
Author_Institution :
Dept. of Comput. Sci., U. of Maryland, College Park, MD, USA
Abstract :
Summary form only given. Today, almost all desktop and laptop computers are shared-memory multicores, but the code they run is over whelmingly serial. High level language extensions and libraries (e.g., OpenMP, Cilk++, TBB) make it much easier for programmers to write parallel code than previous approaches (e.g., MPI), in large part thanks to the efficient work-stealing scheduler that allows the programmer to expose more parallelism than the actual hardware parallelism. But when the parallel tasks are too short or too many, the scheduling overheads become significant and hurt performance. Because this happens frequently (e.g, data-parallelism, PRAM algorithms), programmers need to manually coarsen tasks for performance by combining many of them into longer tasks.
Keywords :
high level languages; parallel processing; scheduling; shared memory systems; general-purpose parallel code; high level language extension; high level language library; run-time scheduling; shared-memory multicore; work-stealing scheduler; Computers; Educational institutions; Hardware; Manuals; Multicore processing; Parallel processing; lazy work-stealing; parallel programming; productivity; run-time scheduling;
Conference_Titel :
Parallel Architectures and Compilation Techniques (PACT), 2011 International Conference on
Conference_Location :
Galveston, TX
Print_ISBN :
978-1-4577-1794-9
DOI :
10.1109/PACT.2011.49