Introducing task cancellation to OpenMP
2012 (English)In: Lect. Notes Comput. Sci., 2012, 73-87 p.Conference paper (Refereed)
Multi-core processors are at the heart of current and future trends for computer architectures. The number of cores on a single chip is rapidly increasing, so as the need for simpler and more efficient programming models. OpenMP is a powerful programming model that has been adopted by a large spectrum of research and development teams to develop parallel applications on multi-core processors. To fully exploit the available cores in multi-cores chips, the latest versions of OpenMP specification marked a transition from a thread-centric to a task-centric programming model. Hence, tasks are used to express parallelism and to execute concurrent computations. However, this programming model suffers from the lack of a useful feature where created tasks can be explicitly cancelled. Task cancellation is considered an important aspect in programs based on speculative execution and search algorithms, where computation resources should be quickly released if not needed, yielding higher computation efficiency and lower power consumption. In this paper, we present a proposal and an enhancement to the OpenMP programming model that allows users to create special type of tasks called "cancellable tasks". New easy to use extensions are added in order to support both cooperative and forced cancellation of these special tasks through specific cancellation calls. We will show that these extensions reduce execution time and response delays of parallel applications that may need cancellation and prompt resources re-allocation compared to the user cancellation approach based on flags.
Place, publisher, year, edition, pages
2012. 73-87 p.
, Lecture Notes in Computer Science, ISSN 0302-9743 ; 7312
Multi-Core Processors, OpenMP, Parallel Programming Models, Task Cancellation, Computation efficiency, Computation resources, Concurrent computation, Execution time, Future trends, Lower-power consumption, Multi-core processor, Multi-cores, Parallel application, Parallel programming model, Programming models, Research and development, Response delays, Search Algorithms, Single chips, Speculative execution, Application programming interfaces (API), Computational efficiency, Computer architecture, Multicore programming
IdentifiersURN: urn:nbn:se:kth:diva-128698DOI: 10.1007/978-3-642-30961-8_6ScopusID: 2-s2.0-84862218143ISBN: 9783642309601OAI: oai:DiVA.org:kth-128698DiVA: diva2:653120
8th International Workshop on OpenMP, IWOMP 2012, 11 June 2012 through 13 June 2012, Rome
QC 201310032013-10-032013-09-162013-10-03Bibliographically approved