2024-heraklion-parallel-python/2024_lecture_timings_notes.md

2.5 KiB

Slots

  • 09.30 - 11.00
  • 11.30 - 13.00
  • 14.30 - 15.30

Actual timings

PART 1 (01h:40m)

  • 09.32. Fork/clone the repo
  • 09.35. Begin exercise: why do we parallelize?
  • 09.41. Begin section: Processes, threads and THE GIL.
  • 09.47. Begin exercise: design dakos program.
  • 09.54. Begin discussion.
  • 10.04. Discussion ends, resume presentation.
  • 10.06. Begin exercise: decode the metaphor.
  • 10.35. Begin exercise: how can NumPy multithread?
  • 10.44. Start kahoot quiz.
  • 11.11. End kahoot quiz.

(coffee break)

PART 2 (01h:50m)

Exercise A

  • 11.41. Introduce exercise A.
  • 11.51. Begin exercise: first part of A.
  • 12.02. Introduce second part of A.
  • 12.25. Discuss: second part of A.

Exercise B

  • 12.32. Begin live-coding demo.
  • 12.45. Begin Exercise B.
  • 13.02. End work exercise B (lunch).

(lunch)

  • 14.31. Discuss results exercise B.

Exercise C

  • 14.48. Begin exercise C.

PART 3 (00h:30m)

  • 15.04. Begin presenting.
  • 15.32. End lecture.

Notes for next time

  • REMEMBER for the kahoot to emphasize that the choices are whether you should modify your code to use multiprocessing or multithreading. The question at the end with numpy tripped up students.
  • Exercise A:
    • Some groups wanted to have a more rigorous timing so tried to do a for loop.
    • Took forever to make a PR, even through groups were done with "basic" tasks.
    • Almost everyone added the plot in the commit.
    • Suggest rewriting the exercise text to be much more clear and constrained.
  • Exercise B:
    • The recursion in the fibonacci function in the live-coding made some students confused. Consider making an example without recursion.
    • Forgot in the live-coding to explain that you can do pool.map as a context manager and what happens if you don't. But we were short on time anyway...
    • The exercise skeleton did not include code for the timing, nor did we tell them they needed to add it. Consider modifying the exercise text to be a bit more explicit that they need to do that (faster for time).
  • Exercise C:
    • Not a lot of time to discuss this.
    • Results are weird/not very great for student laptops. Is it even worth it for them to try to run code on their laptop?
    • Discussion was rushed.
    • Consider to removing exercise and pure walkthrough, then ask the students to analyse the results and explain why they do/do not make sense.