Running Python Code in Parallel and Asynchronously
Offered By: EuroPython Conference via YouTube
Course Description
Overview
Explore parallel and asynchronous execution in Python through this comprehensive EuroPython 2017 conference talk. Delve into the distinctions between parallelism and concurrency, understand the impact of the Global Interpreter Lock (GIL), and learn when to leverage parallel programming in Python. Discover the differences between threads and processes, proper implementation techniques, and potential pitfalls in parallel execution. Investigate the combination of parallel and asynchronous code execution, its benefits, and implementation methods. Gain insights into multi-worker applications from a web development perspective, moving beyond traditional scientific use cases. Examine topics such as memory architectures, shared memory, worker models, and multi-machine setups. Acquire practical knowledge on avoiding deadlocks, utilizing pipes, and optimizing resource utilization in parallel Python programming.
Syllabus
Introduction
Other talks
About me
Frameworks and tools
Akamai
Concurrent
Parallel and asynchronous
Threads and processes
How it applies to Python
Raymond Hettinger
Amdahl Law
Example
Parallel vs coarsegrained problems
Memory architectures
Ctype objects
Shared memory
Managers
Pullmap
Pool
Worker models
Multiworking applications
Multiple machines
Hyper threading
Slots
Dont target 100 utilization
How pipes are implemented
deadlocks
diamonds
readpep
what will you get
run
one obvious way
summary
questions
Taught by
EuroPython Conference
Related Courses
Multithreaded Python without the GILEuroPython Conference via YouTube Extending Cython with GIL-Free Types
EuroPython Conference via YouTube Is It Me, or the GIL
EuroPython Conference via YouTube Addressing Multithreading and Multiprocessing in Transparent and Pythonic Ways
EuroPython Conference via YouTube Fast Async Code with Cython and AsyncIO
EuroPython Conference via YouTube