Actors and higher order functions : A Comparative Study of Parallel Programming Language Support for Bioinformatics

Parallel programming can sometimes be a tedious task when dealing with problems like race conditions and synchronization. Functional programming can greatly reduce the complexity of parallelization by removing side effects and variables, eliminating the need for locks and synchronization. This thesi...

Full description

Bibliographic Details
Main Author: Arvidsson, Staffan
Format: Others
Language:English
Published: Uppsala universitet, Institutionen för informationsteknologi 2014
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-242739
id ndltd-UPSALLA1-oai-DiVA.org-uu-242739
record_format oai_dc
spelling ndltd-UPSALLA1-oai-DiVA.org-uu-2427392015-02-19T05:06:32ZActors and higher order functions : A Comparative Study of Parallel Programming Language Support for BioinformaticsengArvidsson, StaffanUppsala universitet, Institutionen för informationsteknologi2014Parallel programming can sometimes be a tedious task when dealing with problems like race conditions and synchronization. Functional programming can greatly reduce the complexity of parallelization by removing side effects and variables, eliminating the need for locks and synchronization. This thesis assesses the applicability of functional programming and the actor model using the field of bioinformatics as a case study, focusing on genome assembly. Functional programming is found to provide parallelization at a high abstraction level in some cases, but in most of the program there is no way to provide parallelization without adding synchronization and non-pure functional code. The actor model facilitate parallelization of a greater part of the program but increases the program complexity due to communication and synchronization between actors. Neither of the approaches gave efficient speedup due to the characteristics of the algorithm that was implemented, which proved to be memory bound. A shared memory parallelization thus showed to be inefficient and that a need for distributed implementations are needed for achieving speedup for genome assemblers Student thesisinfo:eu-repo/semantics/bachelorThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-242739IT ; 14 073application/pdfinfo:eu-repo/semantics/openAccess
collection NDLTD
language English
format Others
sources NDLTD
description Parallel programming can sometimes be a tedious task when dealing with problems like race conditions and synchronization. Functional programming can greatly reduce the complexity of parallelization by removing side effects and variables, eliminating the need for locks and synchronization. This thesis assesses the applicability of functional programming and the actor model using the field of bioinformatics as a case study, focusing on genome assembly. Functional programming is found to provide parallelization at a high abstraction level in some cases, but in most of the program there is no way to provide parallelization without adding synchronization and non-pure functional code. The actor model facilitate parallelization of a greater part of the program but increases the program complexity due to communication and synchronization between actors. Neither of the approaches gave efficient speedup due to the characteristics of the algorithm that was implemented, which proved to be memory bound. A shared memory parallelization thus showed to be inefficient and that a need for distributed implementations are needed for achieving speedup for genome assemblers
author Arvidsson, Staffan
spellingShingle Arvidsson, Staffan
Actors and higher order functions : A Comparative Study of Parallel Programming Language Support for Bioinformatics
author_facet Arvidsson, Staffan
author_sort Arvidsson, Staffan
title Actors and higher order functions : A Comparative Study of Parallel Programming Language Support for Bioinformatics
title_short Actors and higher order functions : A Comparative Study of Parallel Programming Language Support for Bioinformatics
title_full Actors and higher order functions : A Comparative Study of Parallel Programming Language Support for Bioinformatics
title_fullStr Actors and higher order functions : A Comparative Study of Parallel Programming Language Support for Bioinformatics
title_full_unstemmed Actors and higher order functions : A Comparative Study of Parallel Programming Language Support for Bioinformatics
title_sort actors and higher order functions : a comparative study of parallel programming language support for bioinformatics
publisher Uppsala universitet, Institutionen för informationsteknologi
publishDate 2014
url http://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-242739
work_keys_str_mv AT arvidssonstaffan actorsandhigherorderfunctionsacomparativestudyofparallelprogramminglanguagesupportforbioinformatics
_version_ 1716730772818231296