The course is sectioned:
Introduction - Benchmarking: What Why (more speed!)
Computing Pi - Threading/MP: How (low level)
Delayed - Data flow: How (human level: managing complexity)
Whatever and exercise.
- Concepts
- chunking
- dependency diagram
- natural parallelism
- Benchmarking
- timing your code
- checking memory consumption
- First make things fast
- numpy vectorization
- numba just-in-time
- Then make things run parallel
- threading
- OS dependent internal mechanism for running functions concurrently (i.e.
fork)
- need to lift the GIL somehow
+ low on resources
+ shared memory
- multiprocessing
The course is sectioned:
Introduction - Benchmarking: What Why (more speed!)
Computing Pi - Threading/MP: How (low level)
Delayed - Data flow: How (human level: managing complexity)
Whatever and exercise.
fork)-need to lift the GIL somehow+low on resources+shared memory-large overhead-need for data serialisation-complicates shared memory-less flexible: for instance no lambdas+circumvents the GILOpened by @jhidding Have more overview esciencecenter-digital-skills/parallel-python-workbench#11