Dever, Michael (2015) AutoPar: automating the parallelization of functional programs. PhD thesis, Dublin City University.
Abstract
As the pervasiveness of parallel architectures in computing increases, so does the need for efficiently implemented parallel software. However, the development of parallel software is inherently more difficult than that of sequential software and is fraught with many pitfalls, such as race conditions and locking issues, amongst others. Developers are typically more comfortable developing sequentially, yet as the limitations of single-core processor speeds are reached, they have no choice but to reach for parallel implementations to obtain the required performance increases.
An obvious solution to the parallelisation problem is to allow developers to continue to develop sequentially and generate efficient parallel programs automatically from these sequential ones. There are many existing techniques
which automate the parallelisation process, however these techniques place many constraints upon the programs they are applicable to.
This thesis defines a fully automatic parallelisation technique which places no restriction on its input programs and is applicable to programs defined using any data-type. The technique consists of two components: the first allows a given program to be redefined in terms of well-partitioned data. The second then explicitly parallelises the resulting program using Glasgow parallel Haskell.
The technique is applied to several Haskell programs, the results of which have then been benchmarked with respect to the performance of handparallelised versions of the original programs. The benchmarking process has recorded the execution time and parallel performance of each benchmark program. The evaluation of the benchmark results has allowed for the merit of the automated parallelisation technique to be shown.
Metadata
Item Type: | Thesis (PhD) |
---|---|
Date of Award: | November 2015 |
Refereed: | No |
Supervisor(s): | Hamilton, Geoff |
Uncontrolled Keywords: | Parallel programming; Parallel architectures |
Subjects: | Computer Science > Software engineering |
DCU Faculties and Centres: | Research Initiatives and Centres > Lero: The Irish Software Engineering Research Centre DCU Faculties and Schools > Faculty of Engineering and Computing > School of Computing |
Use License: | This item is licensed under a Creative Commons Attribution-NonCommercial-No Derivative Works 3.0 License. View License |
Funders: | SFI |
ID Code: | 20805 |
Deposited On: | 16 Nov 2015 14:51 by Geoffrey Hamilton . Last Modified 19 Jul 2018 15:06 |
Documents
Full text available as:
Preview |
PDF (Michael Dever PhD Thesis)
- Requires a PDF viewer such as GSview, Xpdf or Adobe Acrobat Reader
1MB |
Downloads
Downloads
Downloads per month over past year
Archive Staff Only: edit this record