×
Python并行编程参考手册-(影印版)

包邮Python并行编程参考手册-(影印版)

¥23.1 (3.5折) ?
00:00:00
1星价 ¥33.0
2星价¥33.0 定价¥66.0

温馨提示:5折以下图书主要为出版社尾货,大部分为全新(有塑封/无塑封),个别图书品相8-9成新、切口有划线标记、光盘等附件不全详细品相说明>>

暂无评论
图文详情
  • ISBN:9787564170738
  • 装帧:暂无
  • 册数:暂无
  • 重量:暂无
  • 开本:32开
  • 页数:262
  • 出版时间:2017-04-01
  • 条形码:9787564170738 ; 978-7-5641-7073-8

本书特色

对于开发人员而言,如今要想充分利用所有可用 的计算资源来构建出高效的软件系统,并行编程技术 是必不可少的技能。从多核到GPU系统,再到分布式 架构,计算量繁重的程序都离不开编程工具和软件库 。
吉安卡洛·扎克尼*的《Python并行编程参考手 册》首先简要介绍了并行编程,然后讲述了Python的 基础知识,接着探究了基于线程的并行模型、采用同 步线程的Python线程模块以及锁、互斥量、信号量队 列、GIL和线程池的用法。

内容简介

对于开发人员而言,如今要想充分利用所有可用的计算资源来构建出高效的软件系统,并行编程技术是必不可少的技能。从多核到GPU系统,再到分布式架构,计算量繁重的程序都离不开编程工具和软件库。本书首先简要介绍了并行编程,然后讲述了Python的基础知识。随后探究了基于线程的并行模型、采用同步线程的Python线程模块以及锁、互斥量、信号量队列、GIL和线程池的用法。

目录

Preface Chapter 1: Getting Started with Parallel Computing and PythonIntroductionThe parallel computing memory architectureMemory organizationParallel programming modelsHow to design a parallel programHow to evaluate the performance of a parallel programIntroducing PythonPython in a parallel worldIntroducing processes and threadsStart working with processes in PythonStart working with threads in Python Chapter 2: Thread-based ParallelismIntroductionUsing the Python threading moduleHow to define a threadHow to determine the current threadHow to use a thread in a subclassThread synchronization with Lock and RLockThread synchronization with RLockThread synchronization with semaphoresThread synchronization with a conditionThread synchronization with an eventUsing the with statementThread communication using a queueEvaluating the performance of multithread applications Chapter 3: Process-based ParallelismIntroductionHow to spawn a processHow to name a processHow to run a process in the backgroundHow to kill a processHow to use a process in a subclassHow to exchange objects between processesHow to synchronize processesHow to manage a state between processesHow to use a process poolUsing the mpi4py Python modulePoint-to-point communicationAvoiding deadlock problemsCollective communication using broadcastCollective communication using scatterCollective communication using gatherCollective communication using AIItoallThe reduction operationHow to optimize communication Chapter 4: Asynchronous ProgrammingIntroductionUsing the concurrent.futures Python modulesEvent loop management with AsyncioHandling coroutines with AsyncioTask manipulation with AsyncioDealing with Asyncio and Futures Chapter 5: Distributed PythonIntroductionUsing Celery to distribute tasksHow to create a task with CeleryScientific computing with SCOOPHandling map functions with SCOOPRemote Method Invocation with Pyro4Chaining objects with Pyro4Developing a client-server application with Pyro4Communicating sequential processes with PyCSPUsing MapReduce with DiscoA remote procedure call with RPyC Chapter 6: GPU Programming with PythonIntroductionUsing the PyCUDA moduleHow to build a PyCUDA applicationUnderstanding the PyCUDA memory model with matrix manipulationKernel invocations with GPUArrayEvaluating element-wise expressions with PyCUDAThe MapReduce operation with PyCUDAGPU programming with NumbaProUsing GPU-accelerated libraries with NumbaProUsing the PyOpenCL moduleHow to build a PyOpenCL applicationEvaluating element-wise expressions with PyOpenCITesting your GPU application with PyOpenCL Index
展开全部

作者简介

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 Ⅱ and has completed a second-level postgraduate master's program in scientific computing from the Sapienza University of Rome.

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航