Python Parallel Programming Cookbook(PACKT,2015)

所需积分/C币:46 2015-09-09 23:32:49 2.92MB PDF
收藏 收藏 3

Parallel programming techniques are required for a developer to get the best use of all the computational resources available today and to build efficient software systems. From multi-core to GPU systems up to the distributed architectures, the high computation of programs throughout requires the us
Python Parallel Programming Cookbook Copyright c 2015 Packt Publishing All rights reserved No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher except in the case of brief quotations embedded in critical articles or reviews. Every effort has been made in the preparation of this book to ensure the accuracy of the information presented, However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book. Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information First published: August 2015 Production reference: 1210815 Published by Packt Publishing Ltd Livery Place 35 Livery Street Birmingham B3 2PB, UK SBN978-1-78528-9583 Credits Au Project Coordi Giancarlo accor Reviewers Proofreader Aditya Avinash Safis editi Ravi Chityala Mike galley Indexer Mariamman chettiyar Ludovic gasc Graphics Commissioning Editor Sheetal Aute Sarah Crofton Disha h Acquisition Editor Jason monterio Meeta Rajani Abhinash Sahu Content Development Editor Production coordinator Rashmi suvarna Condon miranda Technical Editor Cover work Mrunmayee Patil Condon miranda Copy editor Neha vyas About the Author Giancarlo Zaccone has more than 10 years of experience in managing research projects both in scientific and industrial domains. He worked as a researcher at the National research Council(CNR), where he was involved in a few parallel numerical computing and scientific visualization projects He currently works as a software engineer at a consulting company, developing and maintaining software systems for space and defense applications Giancarlo holds a master's degree in physics from the University of Naples federico lI and has completed a second-level postgraduate master's program in scientific computing from the Sapienza University of rome. Youcanknowmoreabouthimat About the reviewers Aditya Avinash is a graduate student who focuses on computer graphics and GPUs. His areas of interest are compilers, drivers, physically based rendering, and real-time rendering His current focus is on making a contribution to mesa (the open source graphics driver stack for Linux), where he will implement Open GL extensions for the aMd backend. This is something that he is really excited about. He also likes writing compilers to translate high- level abstraction code into GPU code. He has developed Urutu, which gives GPUs thread level parallelism with python For this nvidia funded him with a couple of Tesla K40 GPUs Currently, he is working on Rock Chuck, translating the Python code(written using data parallel abstraction)into GPU/CPU code, depending on the available backend. This project was started after he reviewed the opinions of a lot of Python programmers who wanted data parallel abstraction for Python and GPUs He has a computer engineering background, where he designed hardware and software to fit certain applications(ASIC). From this, he gained experience of how to use FPGAs and Hdls Apart from this, he mainly programs using python and c++. In C+t, he uses openGL, CUDa, OpenCL, and other multicore programming APls. Since he is a student, most of his work is not affiliated with any institution or person Ravi Chityala is a senior engineer at Elekta Inc. He has more than 12 years of experience in image processing and scientific computing. He is also a part time instructor at the University of California, Santa Cruz Extension, San Jose, CA, where he teaches advanced Python to programmers. He began using Python as a scripting tool and fell in love with the language's simplicity, power, and expressiveness. He now uses it for web development, scientific prototyping and computing, and he uses it as a glue to automate the process. He combined his experience in image processing and his love for Python and coauthored the book Image Acquisition and processing using Python, published by CrC Press Mike Galloy is a software developer who focuses on high-performance computing and visualization in scientific programming. He works mostly on IDL, but occasionally uses c CUDA, and Python He currently works for the National center for Atmospheric Research (NCAR) at the Mauna loa solar observatory. previously, he worked for Tech-X Corporation where he was the main developer for GPULib, a library of Idl bindings for GPU-accelerated DLdoc, mgunit, and rIDL, as well as the author of the book modern l source Ayo/g computation routines. He is the creator and main developer of the open Ludovic Gasc is a senior software developer and engineer at eyepea and allocloud, a highly renowned open source VolP and unified communications company in Europe Over the last 5 years, he has developed redundant distributed systems for the telecom sector that are based on Python, Asynclo, PostgreSQL, and redis Youcancontacthimonhisblogat Heisalsothecreatoroftheblogapl-hour:Writeefficientnetworkdaemons(http,ssh)with easefoRmoreinformationvisit Support files, eBooks, discount offers, and more Did you know that Packt offers e Book versions of every book published, with PDF and ePub filesavailableYoucanupgradetotheebookversionatwww.Packtpub.comandasaprint book customer, you are entitled to a discount on the eBook copy. Get in touch with us at service@packtpub com for more details Atwww.packtpub.comyoucanalsoreadacollectionoffreetechnicalarticlessignupfor a range of free newsletters and receive exclusive discounts and offers on packt books and eBooks PACKTLIB Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can search, access, and read Packt's entire library of books. Why Subscribe? Fully searchable across every book published by Packt Copy and paste, print, and bookmark content On demand and accessible via a web browser Free Access for packt account holders IfyouhaveanaccountwithPacktatwww.packtpub.comyoucanusethistoaccess PacktLib today and view 9 entirely free books. Simply use your login credentials for immediate access Table of contents Preface Chapter 1: Getting started with Parallel Computing and Python 1 Introduction The parallel computing memory architecture Memory organization 236 Parallel programming models 14 How to design a parallel program 16 How to evaluate the performance of a parallel program 19 Introducing Python 21 Python in a parallel world 26 Introducing processes and threads 26 Start working with processes in Python 27 Start working with threads in Python 29 Chapter 2: Thread-based Parallelism 33 Introductlon 34 Using the python threading module 35 How to define a thread 35 How to determine the current thread 37 How to use a thread in a subclass 39 Thread synchronization with Lock and rlock 41 Thread synchronization with rlock 45 Thread synchronization with semaphores 48 Thread synchronization with a condition 52 Thread synchronization with an event 55 Using the with statement 59 Thread communication using a queue 62 Evaluating the performance of multithread applications 66

试读 127P Python Parallel Programming Cookbook(PACKT,2015)
立即下载 低至0.43元/次 身份认证VIP会员低至7折
adq1_2 图书清晰,推荐
liuyaqiu1993 很不错的书
firefox_1980 最近在用Python写一个多线程的应用,读了前面两张,感觉非常不错。 最后几张,打算用一到二周读完。 有利于提高自己的Python编程技巧。
Teddyeat 图书清晰,推荐
关注 私信 TA的资源
Python Parallel Programming Cookbook(PACKT,2015) 46积分/C币 立即下载
Python Parallel Programming Cookbook(PACKT,2015)第1页
Python Parallel Programming Cookbook(PACKT,2015)第2页
Python Parallel Programming Cookbook(PACKT,2015)第3页
Python Parallel Programming Cookbook(PACKT,2015)第4页
Python Parallel Programming Cookbook(PACKT,2015)第5页
Python Parallel Programming Cookbook(PACKT,2015)第6页
Python Parallel Programming Cookbook(PACKT,2015)第7页
Python Parallel Programming Cookbook(PACKT,2015)第8页
Python Parallel Programming Cookbook(PACKT,2015)第9页
Python Parallel Programming Cookbook(PACKT,2015)第10页
Python Parallel Programming Cookbook(PACKT,2015)第11页
Python Parallel Programming Cookbook(PACKT,2015)第12页
Python Parallel Programming Cookbook(PACKT,2015)第13页
Python Parallel Programming Cookbook(PACKT,2015)第14页
Python Parallel Programming Cookbook(PACKT,2015)第15页
Python Parallel Programming Cookbook(PACKT,2015)第16页
Python Parallel Programming Cookbook(PACKT,2015)第17页
Python Parallel Programming Cookbook(PACKT,2015)第18页
Python Parallel Programming Cookbook(PACKT,2015)第19页
Python Parallel Programming Cookbook(PACKT,2015)第20页

试读结束, 可继续阅读

46积分/C币 立即下载 >