Vak: Programming 5 credits: 5
- Vakcode
- BFVM22PROGR5
- Naam
- Programming 5
- Studiejaar
- 2022-2023
- ECTS credits
- 5
- Taal
- Engels
- Coördinator
- F. Feenstra
- Werkvormen
-
- Hoorcollege
- Toetsen
-
- TOETS-01 - Overige toetsing
Leeruitkomsten
identify parallelisable parts of a computational problem.
analyze the requirements for parallelisation of the problem and choose a suitable technology to implement a solution.
critically evaluate the performance of the solution and identify possible improvements or if improvements are at all possible.
Inhoud
The Programming II course aims to make students competent in designing parallel solutions for computational problem. In addition, during this module students will expand their knowledge of Object Oriented programming from the previous course to Design Patterns for writing large programs. The students will work on making an existing approach to a problem parallel. Theory will be provided parallelisation approaches on both hardware level (shared memory vs clusters) as software level (e.g. Threading, OpenMPI, Dask, Spark). In addition, students will learn the tools necessary to design (through software engineering methodology and design patterns) and analyze (by algorithmic analysis) the problem and possible solutions. For instance, some problems are “embarrassingly parallel” and can easy be solved on a cluster, while others need to be organised according to their data structure into parallelisable units. Additionally, the basics of appropriate storage methodologies for parallel algorithms will be explained. (E.g. HDFS, Cassandra, HBase).
Context learning line
This module assumes the skills of programming and will focus on design for efficient performance to optimize big data analysis
Opgenomen in opleiding(en)
School(s)
- Instituut voor Life Science & Technology