注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)工業(yè)技術(shù)建筑科學(xué)建筑設(shè)計(jì)Python 并行編程手冊(cè)

Python 并行編程手冊(cè)

Python 并行編程手冊(cè)

定 價(jià):¥59.00

作 者: (意大利)詹卡洛 扎克尼 著,張龍 譯
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買這本書(shū)可以去


ISBN: 9787121337536 出版時(shí)間: 2018-04-01 包裝:
開(kāi)本: 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  若想充分利用所有的計(jì)算資源來(lái)構(gòu)建高效的軟件系統(tǒng),并行編程技術(shù)是不可或缺的一項(xiàng)技能。本書(shū)以Python為藍(lán)本,對(duì)并行編程領(lǐng)域的各項(xiàng)技術(shù)與知識(shí)進(jìn)行了廣泛且深入的講解。通過(guò)對(duì)本書(shū)的學(xué)習(xí),讀者將能夠快速且準(zhǔn)確地掌握并行編程方方面面的技能,從而應(yīng)用在自己的項(xiàng)目開(kāi)發(fā)中,提升系統(tǒng)運(yùn)行效率。本書(shū)共分為6章,從原理到實(shí)踐系統(tǒng)化地對(duì)并行編程技術(shù)進(jìn)行了層層剖析,并通過(guò)大量可運(yùn)行的實(shí)例演示了每一個(gè)知識(shí)點(diǎn)的具體運(yùn)用方式,是提升并行編程技能的一本不可多得的好書(shū)。相信本書(shū)的出版將會(huì)填補(bǔ)Python在并行領(lǐng)域應(yīng)用的一大空白,能夠幫助想要從事并行編程與并行計(jì)算的讀者提升實(shí)踐能力,并將這一能力應(yīng)用到實(shí)際的項(xiàng)目開(kāi)發(fā)中。

作者簡(jiǎn)介

  Giancarlo Zaccone擁有超過(guò)10年的管理研發(fā)項(xiàng)目的經(jīng)驗(yàn),涉及到科學(xué)與工業(yè)這兩個(gè)領(lǐng)域。他曾以研究員身份就職于國(guó)家研究委員會(huì)(CNR),主要從事一些并行科學(xué)計(jì)算與科學(xué)可視化項(xiàng)目。他目前作為一名軟件工程師就職于一家咨詢公司,主要負(fù)責(zé)開(kāi)發(fā)和維護(hù)一些面向太空和防御應(yīng)用的軟件系統(tǒng)。Giancarlo擁有那不勒斯費(fèi)德里科II大學(xué)的物理學(xué)碩士學(xué)位,并且獲得了羅馬大學(xué)科學(xué)計(jì)算專業(yè)的第二研究生學(xué)位??梢酝ㄟ^(guò)https://it.linkedin.com/in/giancarlozaccone了解到關(guān)于Giancarlo的更多信息。兩位譯者均擁有10年以上的系統(tǒng)研發(fā)與管理經(jīng)驗(yàn),關(guān)注領(lǐng)域主要有高并發(fā)程序設(shè)計(jì)、JVM設(shè)計(jì)與實(shí)現(xiàn)、函數(shù)式編程與分布式系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)。對(duì)于編寫(xiě)優(yōu)雅的代碼有著不懈的追求,喜歡一切簡(jiǎn)單而美好的事物。

圖書(shū)目錄

1 并行計(jì)算與Python起步...............................................1

介紹 ..................................1

并行計(jì)算內(nèi)存架構(gòu) ..........2

內(nèi)存組織 ..........................5

并行編程模型 ................10

如何設(shè)計(jì)并行程序 ........12

如何評(píng)估并行程序的性能 ....................................................14 

Python簡(jiǎn)介 ....................16

并行世界中的Python ....20

進(jìn)程與線程介紹 ............21

開(kāi)始在Python中使用進(jìn)程 ....................................................21

開(kāi)始在Python中使用線程 ....................................................23

2 基于線程的并行. .27

介紹 ................................27

使用Python的線程模塊 28

如何定義線程 ................28 

如何確定當(dāng)前的線程 ....30

如何在子類中使用線程 32

使用Lock與RLock實(shí)現(xiàn)線程同步 ........................................34

使用RLock實(shí)現(xiàn)線程同步 .....................................................38

使用信號(hào)量實(shí)現(xiàn)線程同步 ....................................................40

使用條件實(shí)現(xiàn)線程同步 44

使用事件實(shí)現(xiàn)線程同步 47

使用with語(yǔ)句 ................51

使用隊(duì)列實(shí)現(xiàn)線程通信 53

評(píng)估多線程應(yīng)用的性能 57

3 基于進(jìn)程的并行63

介紹 ................................64

如何生成進(jìn)程 ................64

如何對(duì)進(jìn)程命名 ............66

如何在后臺(tái)運(yùn)行進(jìn)程 ....68

如何殺死進(jìn)程 ................69

如何在子類中使用進(jìn)程 70

如何在進(jìn)程間交換對(duì)象 72

如何同步進(jìn)程 ................78

如何管理進(jìn)程間狀態(tài) ....81

如何使用進(jìn)程池 ............82

使用mpi4py模塊 ...........84

點(diǎn)對(duì)點(diǎn)通信 ....................87

避免死鎖問(wèn)題 ................91

使用廣播實(shí)現(xiàn)聚合通信 94

使用scatter實(shí)現(xiàn)聚合通信 .....................................................96

使用gather實(shí)現(xiàn)聚合通信 ......................................................99

使用Alltoall實(shí)現(xiàn)聚合通信 .................................................101 

匯聚操作 ......................103

如何優(yōu)化通信 ..............105

4 異步編程. ........111

介紹 .............................. 111

使用 Python的 concurrent.futures 模塊 .............................. 112

使用Asyncio實(shí)現(xiàn)事件循環(huán)管理 ........................................ 116

使用Asyncio處理協(xié)程 120

使用Asyncio管理任務(wù) 125

使用Asyncio和Futures 128

5 分布式Python133

介紹 ..............................133

使用 Celery 分發(fā)任務(wù) .134

如何使用 Celery 創(chuàng)建任務(wù) .................................................136

使用 SCOOP進(jìn)行科學(xué)計(jì)算 ...............................................139

使用 SCOOP處理映射函數(shù) ...............................................143

使用 Pyro4 遠(yuǎn)程調(diào)用方法 ..................................................147

使用 Pyro4 鏈接對(duì)象 ..150

使用 Pyro4 開(kāi)發(fā)一個(gè)客戶端-服務(wù)器應(yīng)用.........................156

使用 PyCSP實(shí)現(xiàn)順序進(jìn)程通信 ........................................162

在Disco中使用 MapReduce ................................................167

使用 RPyC 調(diào)用遠(yuǎn)程過(guò)程 ..................................................172

6 使用Python進(jìn)行GPU編程. ......................................175

介紹 ..............................175

使用 PyCUDA模塊 ....177

如何構(gòu)建一個(gè) PyCUDA應(yīng)用 ............................................181 

通過(guò)矩陣操作理解 PyCUDA內(nèi)存模型 ............................186

使用 GPUArray 調(diào)用內(nèi)核 ..................................................192

使用 PyCUDA對(duì)逐元素表達(dá)式求值 ................................194

使用 PyCUDA進(jìn)行 MapReduce 操作 ...............................198

使用 NumbaPro 進(jìn)行GPU編程 ..........................................201

通過(guò) NumbaPro 使用 GPU 加速的庫(kù) ................................206

使用 PyOpenCL模塊 .. 211

如何構(gòu)建一個(gè) PyOpenCL應(yīng)用 ..........................................214

使用PyOpenCL對(duì)逐元素表達(dá)式求值 ................................218

使用 PyOpenCL測(cè)試 GPU 應(yīng)用 ........................................221


本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)