Check Canvas for more detail on the course.
DD2443 is an advanced course in computer science on the theory, algorithms, and techniques of parallel and distributed computing systems. Parallel and distributed computing is a fascinating topic for many reasons. First and foremost parallelism has over the past 10 or so years become a must in order to produce systems with good performance. This applies to anything from portable devices to global information systems. Secondly, the topics ties in theory with practice in a fascinating way - in the course we go all the way from impossibility results/lower bounds to practical (and sometimes not so practical) implementation several times around. In the course we cover a significant chunk of this landscape in some depth. Moreover, to really produce well performing and secure systems a good understanding of things like machine architecture, operating systems, and networking is needed so we'll have occasion to dig a bit into these topics as well.
The companion course FDD3008 (6hp) Distributed Algorithms is given for postgraduate students with a smaller amount of credits and a bit tougher grading.
The course does not have formal prerequisites for program students. Target audience is D4, F4, and the MD line of SU. Familiarity with algorithms and their theory, basic probability theory, and basic mathematical discourse in computer science and programming will be very useful. We assume a level corresponding to the required courses of the KTH D and/or F programs.