View Proposal
-
Proposer
-
Hans Wolfgang Loidl
-
Title
-
Parallel symbolic computation on distributed memory machines
-
Goal
-
To develop a parallel implementation of a symbolic computation application in parallel Haskell and to assess the performance of the application on our distributed memory Beowulf network.
-
Description
- Symbolic computation is characterised by performing compute-intensive
operations on highly-structured, complex data. The parallelism in
these applications is typically dynamic and irregular, i.e. it is
generated throughout the computation and varies significantly in size.
These characteristics make it difficult for conventional parallel
programming languages.
As a high-level parallel programming language, the pure, non-strict
functional language Haskell will be used. It provides extensions to
support both shared-memory and distributed-memory parallelism. The
focus in this project is on the latter.
This project will use the SymGrid-Par infrastructure for parallel
programming, together with the GAP system for computational algebra,
to implement one concrete symbolic application. Candidate applications
come form the area of computational algebra, and include
parallel resultant computation, squarefree factorisation and solving
polynomial systems of equations.
The thesis will report on the process of parallelising the application,
reflect on the sources of parallelism, the suitability of the language
and infrastructure for parallelisation, and assess the performance
of the parallelised application on our Beowulf cluster.
- Resources
-
GHC and Eden compilers, SymGrid-Par, GAP, Beowulf, Linux
-
Background
-
Functional Programming, parallel programming, Linux
-
Url
-
External Link
-
Difficulty Level
-
High
-
Ethical Approval
-
None
-
Number Of Students
-
2
-
Supervisor
-
Hans Wolfgang Loidl
-
Keywords
-
parallel computing
-
Degrees
-
Bachelor of Science in Computer Science
Bachelor of Science in Computer Systems
Bachelor of Science in Information Systems
Bachelor of Science in Software Development for Business (GA)
Master of Engineering in Software Engineering
Master of Design in Games Design and Development
Master of Science in Artificial Intelligence
Master of Science in Artificial Intelligence with SMI
Master of Science in Business Information Management
Master of Science in Computer Science for Cyber Security
Master of Science in Computer Systems Management
Master of Science in Computing (2 Years)
Master of Science in Data Science
Master of Science in Human Robot Interaction
Master of Science in Network Security
Master of Science in Robotics
Master of Science in Software Engineering
Bachelor of Science in Computing Science