Dependency-aware task-based parallel programming models have proven to be successful for developing application software for multicore-based computer architectures. Here we consider the problem of scheduling tasks not only with respect to their inter-dependencies, but also with respect to their usage of resources such as memory and bandwidth. At the software level, this is achieved by user annotations of the task resource consumption. In the run-time system, the annotations are translated into scheduling constraints. Experimental results demonstrating performance gains both for model examples and real applications are presented.Peer Reviewe
International audienceThe ever-increasing supercomputer architectural complexity emphasizes the need...
Maximizing the performance of computer systems while making them more energy efficient is vital for ...
The growing complexity of multi-core architectures has motivated a wide range of software mechanisms...
Dependency-aware task-based parallel programming models have proven to be successful for developing ...
The shift toward multicore processors has transformed the software and hardware landscape in the las...
Parallel programming on SMP and multi-core architectures is hard. In this paper we present a program...
The emergence of multicore processors has increased the need for simple parallel programming models ...
Making computer systems more energy efficient while obtaining the maximum performance possible is ke...
Task-based scheduling has emerged as one method to reduce the complexity of parallel computing. When...
Multicore platforms have transformed parallelism into a main concern. Parallel programming models a...
Given the considerate amounts of research on task-based parallel programming models for maximizing p...
Parallel task-based programming models like OpenMP support the declaration of task data dependences....
Task Parallelism is a parallel programming model that provides code annotation constructs to outline...
In multicore systems, shared resources such as caches or the memory subsystem can lead to contention...
Work-stealing systems are typically oblivious to the nature of the tasks they are scheduling. They d...
International audienceThe ever-increasing supercomputer architectural complexity emphasizes the need...
Maximizing the performance of computer systems while making them more energy efficient is vital for ...
The growing complexity of multi-core architectures has motivated a wide range of software mechanisms...
Dependency-aware task-based parallel programming models have proven to be successful for developing ...
The shift toward multicore processors has transformed the software and hardware landscape in the las...
Parallel programming on SMP and multi-core architectures is hard. In this paper we present a program...
The emergence of multicore processors has increased the need for simple parallel programming models ...
Making computer systems more energy efficient while obtaining the maximum performance possible is ke...
Task-based scheduling has emerged as one method to reduce the complexity of parallel computing. When...
Multicore platforms have transformed parallelism into a main concern. Parallel programming models a...
Given the considerate amounts of research on task-based parallel programming models for maximizing p...
Parallel task-based programming models like OpenMP support the declaration of task data dependences....
Task Parallelism is a parallel programming model that provides code annotation constructs to outline...
In multicore systems, shared resources such as caches or the memory subsystem can lead to contention...
Work-stealing systems are typically oblivious to the nature of the tasks they are scheduling. They d...
International audienceThe ever-increasing supercomputer architectural complexity emphasizes the need...
Maximizing the performance of computer systems while making them more energy efficient is vital for ...
The growing complexity of multi-core architectures has motivated a wide range of software mechanisms...