This is a workshop on concurrency in Python 3.0. We will talk about the Python multiprocessing module and concurrent futures and look at around 3-4 interesting examples of getting the best out of Python by writing concurrent code using these techniques for solving data parallel problems.
The examples we will be looking at here would be,
- Matrix Multiplication - Parallelize matrix multiplication using multiprocessing.
- Primes - Demoing the effect of GIL in multi-threaded programs.
- Fractal - Demonstrating how to parallelize creation of a Mandelbrot fractal in Python using multiprocessing and/or concurrent futures.
- Crawler - Writing a web-crawler which performs concurrent fetches using concurrent futures and/or multiprocessing .
- Maze Solver - A maze generator and solver in Python running on the text console - Demonstrating serial and concurrent solvers using multiprocessing.
- Hash Detect - Detect a filename matching a given hash - serial and parallel version.