This lesson is being piloted (Beta version)

ACENET Summer School - Dask

Prerequisites

Should have experience programming in at least one language, ideally Python. If you do not have any experience programming in Python it is advisable to have a look at the Software Carpentry lesson on Python which introduces the basics of Python.

Schedule

Setup Setup required for the lesson
Day 1 14:00 1. Introduction What is Dask?
How does it work?
14:15 2. Python What is a virtual environment?
How can you time Python scripts?
What is a simple way to run a Python script on a compute node?
14:40 3. Break Break
14:55 4. Dask Delayed How do you install Dask Delayed?
How can Dask Delayed be used to parallelize python code?
How can I see what Dask Delayed is doing?
15:35 5. Real Computations What happens when I use Dask for “real” computations?
How can I see CPU efficiency of a SLURM Job?
16:00 Finish
Day 2 14:00 6. Distributed Computations How can I avoid the GIL problem?
How can I run multiple Python interpreters at once on one problem?
14:30 7. Cython How slow is Python?
Can I make my Python code faster?
How can I turn my Python code into compiled C or C++ code?
15:10 8. Break Break
15:25 9. NumPy Why are NumPy arrays faster than lists?
How do you create NumPy arrays?
What are some things I can do with NumPy arrays?
15:40 10. Dask Array How can I process NumPy arrays in parallel?
Can I distribute NumPy arrays to avoid needing all the memory on one machine?
16:05 11. Wrapping Up What did we learn?
What next?
16:10 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.