Hide menu

TDDD56 Multicore and GPU Programming (6 ECTS)

Autumn2 2017

Mid-Term Evaluation with Muddy Cards

The course TDDD56 has been mid-term evaluated with the muddy card method in the seventh lecture on monday 18 november 2013. 36 students attended the lecture, and I received 34 cards.

In the following I summarize the most frequently raised issues and comment where appropriate.


The course contents is considered interesting and highly relevant by many participants.


  • Significant overlap in lectures with TDDC78 (3)
    Comment: There are 4 common lectures with TDDC78, all in the CPU part of the course. These lectures are included in both courses because both courses are about parallel programming (albeit from different perspectives and for different types of computing systems and application domains) and thus share a common technical and theoretical core, and because we want make it possible for you to take each course stand-alone or both courses in arbitrary order, for better flexibility of studies.

  • Several students ask for a single (mandatory) book covering the entire course.
    Such a book does unfortunately not yet exist, as mentioned in the first lecture. (This is a typical property of advanced-level courses, by the way.) If I had the time, maybe I could write one...
    In the meanwhile we try to address this by complementing a basic textbook (see the literature page) with links to appropriate advanced articles in high-quality technical journals for further reading.

  • Specific reading instructions for each topic would be helpful
    Good point, we will try to add some reading directions for next year. Some hints are also given on the literature page.

  • Good web page, lots of useful information

  • I'd like solutions of the old exam [...] on the web
    I intentionally do not publish exam solutions on the web (we have the exam review/tentavisning instead). I did this once in an earlier course and then received lots of verbatim identical answers whenever a similar (or also not at all so similar) question was asked in a later exam.
    Note that some previous exam questions are taken up in the theory exercises that will be partly gone through in Lesson 2, where the solution will be given.


Positive reactions from most students regarding lecturing style, slide material and lecturer competence.


There was only one lesson so far, which is considered very good and useful for lab preparation by several students.

One student desires more homework exercises. Please see the course web page for exercises to prepare for Lesson 2.


  • Good labs (13) / fun / interesting / well-prepared ...
  • Nice to just have to demonstrate the labs /
    Annoying that presence is mandatory (2)
  • Good lab skeletons and instructions (2)
  • Good with a simple startup lab (1) / Lab 1 was too easy
  • Lab skeleton 2 is bad / needs improvement (5)
  • Number of #ifs makes the code hard to read
  • Much code to study
  • Lab instructions are unclear on what should be done (what to implement and where) (2)
  • Measurement/visualization scripts/lab skeletons could be better documented (2)
  • Too little lab time (no help during non-scheduled lab preparation time) (2)
  • No access to Multicore Lab outside scheduled sessions (2)
  • Lab assistant (group given) is not very helpful, expects us to fix everything on our own (2)
  • Lab assistant not present throughout the complete lab session (2)

Most students just started working with lab 2 (nonblocking stack implementation) at the time of the evaluation, which is reflected in the comments. The Lab 2 skeleton had already been simplified compared to last year, but apparently this was still not enough and we will have another look at the Lab 2 skeleton for next year.

Regarding "lots of #ifs ...", we understand but think it is still better than having to take care of measurement issues.

Regarding instructions for the performance measurement scripts, note that a document published on Nicolas' page gives detailed explanations and two examples on how to use the scripts.

Regarding too little lab time / assistant help during preparation: If you need assistant help with lab preparation, please begin with asking him for it.

Regarding presence of the lab assistant: they should normally be present during scheduled lab hours, I have discussed this with them.


By and large, the course seems to run very well; there are some minor issues for improvement (see the comments above) that will be taken into consideration.

Thanks for all comments!

Christoph Kessler, examinator TDDD56

Page responsible: Christoph W Kessler
Last updated: 2013-11-20