Advanced Python concepts. Optimizing Python. Analyzing performance. Optimized use of Numpy and Pandas. Interactions with C Language. Interactions with FORTRAN. Using Cython. Exploring the Pypy. Numba. Concurrency and asynchronous processing. Parallel processing: Threads and processes. Distributed processing: Dask and Pyspark.
Basic Information
Mandatory:
- Python High Performance - Second Edition: Build high-performing, concurrent, and distributed applications. Gabriele Lanaro. 2017
- High Performance Python: Practical Performant Programming for Humans. Misha Gorelik e Ian Ozvald. O’Reilly. 2014
- Fluent Python. Luciano Ramalho. O’Reilly. 2015
Complementary:
- Cython: A guide for programmers. Kurt Smith. 2015
- IPython Interactive Computing and Visualization Cookbook - Second Edition: Over 100 hands-on recipes to sharpen your skills in high-performance and data science in the Jupyter Notebook. Cyrille Rossant. 2018
- Elegant SciPy: The Art of Scientific Python. Juan Nunez-Iglesias and Stéfan van der Walt. 2017
- Guide to NumPy: 2nd Edition. Travis E. Oliphant. 2015
- Computação Científica com Python, Flávio Codeço Coelho. 2007