注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件工程及軟件方法學(xué)Haskell并行與并發(fā)編程

Haskell并行與并發(fā)編程

Haskell并行與并發(fā)編程

定 價(jià):¥59.00

作 者: (英)Simon Marlow 著
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 計(jì)算機(jī)/網(wǎng)絡(luò) 軟件工程/開(kāi)發(fā)項(xiàng)目管理

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


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

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

  《Haskell并行與并發(fā)編程》深入淺出地介紹如何使用Haskell語(yǔ)言及相關(guān)的庫(kù)和框架編寫(xiě)并行和并發(fā)程序?!禜askell并行與并發(fā)編程》用兩個(gè)部分分別講解并行Haskell編程和并發(fā)Haskell編程。根據(jù)編程模型的不同,并行部分介紹了3種并行編程方式:基于惰性求值的并行(Eval Monad及求值策略)、基于數(shù)據(jù)流的并行(Par Monad)以及面向大規(guī)模數(shù)組算法的并行(Repa數(shù)據(jù)并行編程和Acellerate GPU編程)。并發(fā)部分則按抽象層次由低到高分別涉及線(xiàn)程和MVar、重疊I/O、線(xiàn)程的取消和超時(shí)、軟件事務(wù)內(nèi)存、高級(jí)并發(fā)抽象、并發(fā)網(wǎng)絡(luò)服務(wù)程序、使用線(xiàn)程并行編程和分布式編程等,最后還介紹調(diào)試、性能調(diào)優(yōu)以及外部函數(shù)接口。書(shū)中包含大量可運(yùn)行的代碼示例,并附有詳細(xì)的注釋?zhuān)x者通過(guò)親身運(yùn)行、修改和調(diào)試代碼,可極大地加深對(duì)書(shū)中內(nèi)容的理解。《Haskell并行與并發(fā)編程》適合有一定Haskell語(yǔ)言基礎(chǔ)的程序員或者對(duì)并行或并發(fā)編程感興趣的相關(guān)人員閱讀。

作者簡(jiǎn)介

  Simon Marlow 是Facebook的軟件工程師,Haskell社區(qū)的領(lǐng)軍人物。他主持了Haskell 2010委員會(huì)并擔(dān)任Haskell語(yǔ)言2010報(bào)告的編輯。Simon還是廣泛使用的Glasgow Haskell編譯器(GHC)的主要開(kāi)發(fā)者之一。

圖書(shū)目錄

  第1章 緒論
 1.1 術(shù)語(yǔ):并行性和并發(fā)性
 1.2 工具和資源
 1.3 示例代碼
第一部分 并行Haskell
第2章 并行基礎(chǔ):Eval Monad
 2.1 惰性求值和弱首范式
 2.2 Eval monad、rpar和rseq
 2.3 示例:并行化數(shù)獨(dú)解算器
 2.4 Deepseq
第3章 求值策略
 3.1 參數(shù)化策略
 3.2 列表并行求值策略
 3.3 示例:K均值問(wèn)題
  3.3.1 并行化K均值問(wèn)題求解
  3.3.2 性能和分析
  3.3.3 spark活動(dòng)可視化
  3.3.4 粒度
 3.4 spark垃圾回收與投機(jī)并行
 3.5 使用parBuffer并行化惰性流
 3.6 分塊策略
 3.7 恒等性
第4章 數(shù)據(jù)流并行:Par Monad
 4.1 示例:圖中的最短路徑
 4.2 流水線(xiàn)并行
  4.2.1 生產(chǎn)者限速
  4.2.2 流水線(xiàn)并行的局限性
 4.3 示例:會(huì)議時(shí)間表
 4.4 示例:并行類(lèi)型推斷器
 4.5 使用不同的調(diào)度器
 4.6 Par monad和策略的對(duì)比
第5章 Repa數(shù)據(jù)并行編程
 5.1 數(shù)組、形狀和索引
 5.2 數(shù)組運(yùn)算
 5.3 示例:計(jì)算最短路徑
 5.4 折疊和形狀多態(tài)
 5.5 示例:圖像旋轉(zhuǎn)
 5.6 小結(jié)
第6章 Acellerate GPU編程
 6.1 概述
 6.2 數(shù)組和索引
 6.3 運(yùn)行簡(jiǎn)單Accelerate計(jì)算
 6.4 標(biāo)量數(shù)組
 6.5 數(shù)組索引
 6.6 在Acc中創(chuàng)建數(shù)組
 6.7 數(shù)組配對(duì)
 6.8 常數(shù)
 6.9 示例:最短路徑
  6.9.1 在GPU上運(yùn)行
  6.9.2 調(diào)試CUDA后端
 6.10 示例:Mandelbrot集生成器
第二部分 并發(fā)Haskell
第7章 并發(fā)基礎(chǔ):線(xiàn)程和MVar
 7.1 簡(jiǎn)單的示例:提醒器
 7.2 通信:MVar
 7.3 MVar用作簡(jiǎn)單通道:日志服務(wù)
 7.4 MVar用作共享狀態(tài)的容器
 7.5 MVar用作構(gòu)件單元:界通道
 7.6 公正性
第8章 重疊I/O
 8.1 Haskell中的異常
 8.2 Async的錯(cuò)誤處理
 8.3 合并
第9章 線(xiàn)程的取消和超時(shí)
 9.1 異步異常
 9.2 異步異常的屏蔽
 9.3 bracket操作
 9.4 通道的異步異常安全
 9.5 超時(shí)
 9.6 異步異常的捕獲
 9.7 mask和forkIO
 9.8 關(guān)于異步異常的討論
第10章 軟件事務(wù)內(nèi)存
 10.1 運(yùn)行示例:窗口管理
 10.2 阻塞
 10.3 阻塞直到發(fā)生變化
 10.4 STM的合并
 10.5 Async的重實(shí)現(xiàn)
 10.6 通道的STM實(shí)現(xiàn)
  10.6.1 更多可能的操作
  10.6.2 阻塞操作的復(fù)合
  10.6.3 異步異常安全
 10.7 通道的另一種實(shí)現(xiàn)
 10.8 有界通道
 10.9 STM的適用性
 10.10 性能
 10.11 小結(jié)
第11章 高級(jí)并發(fā)抽象
 11.1 線(xiàn)程泄漏的避免
 11.2 對(duì)稱(chēng)并發(fā)組合子
 11.3 添加函子實(shí)例
 11.4 小結(jié):Async API
第12章 并發(fā)網(wǎng)絡(luò)服務(wù)程序
 12.1 簡(jiǎn)易服務(wù)器
 12.2 包含狀態(tài)的簡(jiǎn)易服務(wù)器
  12.2.1 設(shè)計(jì)一:?jiǎn)我蝗宙i
  12.2.2 設(shè)計(jì)二:每條服務(wù)線(xiàn)程一個(gè)通道
  12.2.3 設(shè)計(jì)三:使用廣播通道
  12.2.4 設(shè)計(jì)四:使用STM
  12.2.5 實(shí)現(xiàn)
 12.3 聊天服務(wù)器
  12.3.1 架構(gòu)
  12.3.2 客戶(hù)數(shù)據(jù)
  12.3.3 服務(wù)器數(shù)據(jù)
  12.3.4 服務(wù)器
  12.3.5 設(shè)置新客戶(hù)
  12.3.6 運(yùn)行客戶(hù)處理
  12.3.7 小結(jié)
第13章 使用線(xiàn)程并行編程
 13.1 如何通過(guò)并發(fā)實(shí)現(xiàn)并行
 13.2 示例:文件搜索
  13.2.1 串行版本
  13.2.2 并行版本
  13.2.3 性能和伸縮性
  13.2.4 使用信號(hào)量限制線(xiàn)程數(shù)量
  13.2.5 ParIO monad
第14章 分布式編程
 14.1 distributed-process及相關(guān)軟件包
 14.2 分布式是并發(fā)還是并行?
 14.3 第一個(gè)示例:ping
  14.3.1 進(jìn)程和Process Monad
  14.3.2 定義消息類(lèi)型
  14.3.3 Ping服務(wù)進(jìn)程
  14.3.4 主進(jìn)程
  14.3.5 main函數(shù)
  14.3.6 Ping示例小結(jié)
 14.4 多節(jié)點(diǎn)ping
  14.4.1 單機(jī)運(yùn)行多節(jié)點(diǎn)
  14.4.2 多機(jī)運(yùn)行
 14.5 有類(lèi)型通道
 14.6 故障處理
 14.7 分布式聊天服務(wù)器
  14.7.1 數(shù)據(jù)類(lèi)型
  14.7.2 發(fā)送消息
  14.7.3 廣播
  14.7.4 分布式處理
  14.7.5 測(cè)試服務(wù)器
  14.7.6 故障以及增刪節(jié)點(diǎn)
 14.8 練習(xí):分布式鍵值存儲(chǔ)
第15章 調(diào)試、性能調(diào)整以及外部函數(shù)接口
 15.1 并發(fā)程序調(diào)試
  15.1.1 查看線(xiàn)程狀態(tài)
  15.1.2 記錄事件日志和ThreadScope
  15.1.3 死鎖檢測(cè)
 15.2 并發(fā)(和并行)程序的調(diào)優(yōu)
  15.2.1 創(chuàng)建線(xiàn)程和Mvar操作
  15.2.2 共享并發(fā)數(shù)據(jù)結(jié)構(gòu)
  15.2.3 RTS選項(xiàng)的調(diào)整
 15.3 并發(fā)和外部函數(shù)接口
  15.3.1 線(xiàn)程和外部對(duì)外調(diào)用
  15.3.2 異步異常和外部調(diào)用
  15.3.3 線(xiàn)程和外部對(duì)內(nèi)調(diào)用

本目錄推薦

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