|
|
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.