内容简介
A fast, easy-to-follow and clear tutorial to help you develop Parallel computing systems using Python. Along with explaining the fundamentals, the book will also introduce you to slightly advanced concepts and will help you in implementing these techniques in the real world.If you are an experienced Python programmer and are willing to utilize the available computing resources by parallelizing applications in a simple way, then this book is for you. You are required to have a basic knowledge of
AI简介
这是一本深度解析并行计算系统的Python教程。本书首先介绍了并行编程的基本概念,包括多线程编程、多进程编程和异步I/O编程等,并详细阐述了这些技术的优缺点和适用场景。接着,本书深入探讨了分而治之技术和数据分解方法,以及如何利用这些技术来设计和实现并行算法。
书中还详细介绍了可并行化问题的特征,包括任务之间的独立性和计算过程的可分性,并探讨了如何利用这些特征来识别和解决并行化问题。此外,本书还讨论了进程间通信的重要性,以及如何利用Parallel Python (PP) 等工具来实现进程间通信和并行计算。
本书还对阻塞、非阻塞和异步操作的区别进行了深入解析,并介绍了如何利用asyncio等模块来实现异步编程。此外,本书还探讨了理解事件循环的重要性,并详细介绍了如何使用事件循环来管理和调度异步任务。
在介绍并行化问题识别时,本书详细阐述了如何判断一个问题是否适合并行化,并介绍了多种工具和模块,如线程池和进程池等,以及如何利用这些工具来解决并行化问题。本书还深入探讨了竞争条件与非确定性,并介绍了如何避免这些问题。
最后,本书详细介绍了Celery分布式任务队列的使用方法,并探讨了死