Skip to main content

Concurrent Programming (5 cr)

Code: TTOW0420-0K0V3

General information


Timing
01.01.2020 - 31.07.2020
Implementation has ended.
Number of ECTS credits allocated
5 cr
Local portion
5 cr
Mode of delivery
Face-to-face
Unit
School of Technology
Teaching languages
English
Degree programmes
Bachelor's Degree Programme in Information and Communications Technology
Teachers
Eppu Heilimo
Mikko Neijonen
Groups
TTV17S4
Tieto- ja viestintätekniikka
TTV17S3
Tieto- ja viestintätekniikka
Course
TTOW0420
No reservations found for realization TTOW0420-0K0V3!

Evaluation scale

0-5

Objective

The student understands the need for concurrent programming.

The student understands concepts related to concurrent and parallel programming such as mutexes, synchronization, dead locks and race conditions.

The student understands the difference between processes and threads. The student is familiar with message passing in concurrent programming context. The student understands the difference between concurrency and parallelism.

Content

The course will cover concurrent programming concepts and methods. Covered topics are modern threading API, synchronization, mutexes, dead locks, race conditions and best practices in concurrent and parallel programming. The student is aware of the varying parallelization mechanisms.

Materials

An Introduction to Parallel Programming 1st Edition

Completion alternatives

Exam 40% and homework 60%

Student workload

137.5 hours

Assessment criteria, satisfactory (1)

Excellent (5): The student understands all topics discussed during the course and is able to use them in an innovative manner even in challenging situations. The student is able to search and utilize information about discussed topics independently. The student is able to write complex multithreaded programs.

Very good (4): The student understands the most important topics discussed during the course and is able to utilize this knowledge in most common cases. The student is able to search and understand information about discussed topics. The student is able to write multithreaded programs.

Good (3): The student understands the most important topics discussed during the course and is able to utilize this knowledge in the most basic cases. The student is able to utilize information about the discussed topics. The student is able to write simple multithreaded programs.

Satisfactory (2): The student understands the most basic topics discussed during the course, however, he/she struggles to utilize this knowledge. The student is not able to search for relevant information independently. The student is able to write simple multithreaded programs with assistance.

Sufficient (1): The student is familiar with the basic topics discussed during the course. The student is able write only the most basic multithreaded programs with assistance.

Fail 0: The student does not meet the minimum criteria set for the course.

Assessment criteria, good (3)

Good (3): The student understands the most important topics discussed during the course and is able to utilize this knowledge in the most basic cases. The student is able to utilize information about the discussed topics. The student is able to write simple multithreaded programs.

Very good (4): The student understands the most important topics discussed during the course and is able to utilize this knowledge in most common cases. The student is able to search and understand information about discussed topics. The student is able to write multithreaded programs.

Assessment criteria, excellent (5)

Excellent (5): The student understands all topics discussed during the course and is able to use them in an innovative manner even in challenging situations. The student is able to search and utilize information about discussed topics independently. The student is able to write complex multithreaded program

Qualifications

Basics in programming, Operating systems, Data structures and algorithms, Introduction to Internet technology.

Go back to top of page