Skip to Main Content
Parallel computing is notoriously challenging due to the difficulty in developing correct and efficient programs. With the arrival of multi-core processors for desktop systems, desktop applications must now be parallelised. However achieving task parallelism for such object-oriented programs has traditionally been, and still remains, difficult. This paper presents a powerful task concept for parallel object-oriented programming and presents the results from a source-to-source compiler and runtime system. With the addition of a single keyword, the sequential code does not require restructuring and asynchronous task management is performed on behalf of the programmer; the parallel code required to realise task parallelism looks very much like the sequential counterpart. An intuitive solution is provided to handle task dependencies as well as integrating different task concepts into one model.