Elective courses: concurrent and distributed programming (course group defined by Faculty of Mathematics, Informatics, and Mechanics)
Key
If course is offered then a registration cart will be displayed.
- you are not logged in - currently you are not allowed to register - you are allowed to register - you are allowed to unregister (or withdraw application) - you applied for registration (and you cannot widrdraw this application) - you are registered (and you cannot unregister)
Use one of the "i" icons below for additional information.
2023Z - Winter semester 2023/24 2023L - Summer semester 2023/24 2024Z - Winter semester 2024/25 2024L - Summer semester 2024/25 (there could be semester, trimester or one-year classes) |
Actions | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
2023Z | 2023L | 2024Z | 2024L | |||||||
1000-218bPDD | n/a | n/a |
Classes
Summer semester 2023/24
Groups
Brief description
We will present techniques and tools for processing Big data sets on clusters of commodity computers. The main covered technologies are Hadoop and Spark. We will start with introducing architecture of those systems and programming models they assume like MapReduce and Resilient Distributed Dataset. Then we will cover most important algorithmic techniques and methods for analysing and comparing algorithms. Finally, we will discuss typical problems like skew and typical bottlenecks like limited reducer memory as well as methods to deal with those problems. This course will combine theory and practice. |
|
||||||
1000-217bSR | n/a | n/a |
Classes
Winter semester 2023/24
Groups
Brief description
This course consists of two components: a lecture and a practical work. The lecture will cover the principles, advanced concepts, and technologies of distributed systems, including communication, replication, fault tolerance, and security. The practical part, in turn, will give students an opportunity to test the new knowledge in the real world. More specifically, individually or in pairs, the students will build a distributed system related to cloud computing. The practical work is very demanding in terms of the dedicated time and required programming skills. |
|
||||||
1000-218bHPC | n/a | n/a |
Classes
Summer semester 2023/24
Groups
Brief description
High Performance Computing (HPC) has a significant impact on the modern world, from numerical weather prediction to long-term climate simulations, or from in-silico protein folding models to simulations of galaxies. A modern supercomputer is composed of thousands of nodes, each equipped with multi-core processors and, often, thousands of cores on accelerators. These platforms need a new, distinct perspective on design and implementation of algorithms because of their huge scale, heterogeneity (accelerators and CPUs), relatively frequent failures and performance differences of orders of magnitude between the local and the remote memory. |
|
||||||
1000-218bTW | n/a | n/a | n/a |
Classes
Winter semester 2023/24
Groups
Brief description
Development of concurrent systems is difficult which resulted in many mathematical formalism designed for moddeling and considered already from the beginning of computer science. The goal of the current course is to present the most important and most interesting of them, in particular, Petri nets and process algebras. Much of the focus is devoted to the automatic analysis of concurrent systems models, in particular, its computational complexity. Some of the classes take place in laboratories and are devoted to working with selected tools that enable modeling and analysis of concurrent systems. |
|
|||||