R並行編程實戰

R並行編程實戰是作者〔美〕西蒙 R.查普爾〔美〕伊麗·特魯普〔美〕托斯頓·福斯特〔美〕特倫斯·斯隆撰寫的書籍,於2017年1月出版發行。

內容介紹

並行計算是一種通過執行多條指令來解決大型複雜計算問題的有效算法,可以顯著提高計算機系統的計算速度和處理能力。R語言是目前非常流行的一種開源程式語言,在統計學和生物學等學科中得到了廣泛套用。本書成功地藉助於R語言實現了並行計算的多種有效算法,並且通過案例分析了如何運用R語言執行並行計算。同時詳細介紹了並行計算中的R程式包的使用,如SPRINT包提供了一套從R中調用並行計算的MPI函式。全書案例簡單易懂,程式翔實,敘述清晰。本書4位作者都是計算機專業的資深專家和學者,從事並行計算多年,發表了眾多優秀成果。本書的引進有益於讀者運用R語言進行並行計算的研究,讀者可以結合實際套用來學習本書中討論的算法和模型。

目錄

譯者序

前言

關於作者

第1章 簡單的R並行性

1.1 亞里士多德數謎

1.1.1 求解程式的實現

1.1.2 改進求解程式

1.1.3 將問題分解為多個任務

1.2 R的並行包

1.2.1 使用mclapply()

1.2.2 使用parLapply()

1.2.3 並行負載均衡

1.3 segue包

1.3.1 安裝segue

1.3.2 設定AWS賬戶

1.3.3 運行segue

1.3.4 求解亞里士多德數謎

1.4 總結

第2章 訊息傳遞入門

2.1 為MPI設定系統環境

2.1.1 為MPI選擇R包

2.1.2 選擇MPI子系統

2.1.3 安裝OpenMPI

2.2 MPI標準

2.2.1 MPI的世界

2.2.2 安裝Rmpi

2.2.3 安裝pbdMPI

2.3 MPI API

2.3.1 點對點阻塞通信

2.3.2 點對點非阻塞通信

2.3.3 集體通信

2.4 總結

第3章 高級訊息傳遞

3.1 格線並行性

3.1.1 創建格線集群

3.1.2 邊界數據交換

3.1.3 中值濾波

3.1.4 平鋪分配圖像

3.1.5 中值濾波格線程式

3.2 檢查和管理通信

3.3 lapply()的函式變體

3.4 總結

第4章 開發SPRINT—超級計算機的基於MPI的R包

4.1 關於ARCHER

4.2 從R中調用MPI代碼

4.2.1 MPI Hello World

4.2.2 從R中調用C

4.3 建立一個MPI R包—SPRINT

4.3.1 簡單的並行R接口(SPRINT)包

4.3.2 SPRINT包的體系結構

4.4 將一個新函式添加到SPRINT包中

4.4.1 下載SPRINT原始碼

4.4.2 在R中創建一個存根—phello.R

4.4.3 添加接口函式—phello.c

4.4.4 添加實現函式—hello.c

4.4.5 連線存根、接口和實現

4.4.6 編譯並運行SPRINT代碼

4.5 基因組學分析案例研究

4.5.1 基因組學

4.5.2 基因組數據

4.6 基因組學與超級計算機

4.6.1 目標

4.6.2 ARCHER超級計算機

4.6.3 隨機森林

4.6.4 基因組分析案例研究的數據

4.6.5 ARCHER中的隨機森林性能

4.6.6 排名產品

4.6.7 ARCHER中的排名產品性能

4.6.8 結論

4.7 總結

第5章 筆記本中的超級計算機

5.1 OpenCL

5.2 ROpenCL包

5.2.1 ROpenCL編程模型

5.2.2 距離矩陣示例

5.3 總結

第6章 並行程式設計的藝術

6.1 理解並行效率

6.1.1 加速比

6.1.2 阿姆達爾定律

6.1.3 並行或者不並行

6.2 數值逼近

6.3 隨機數

6.4 死鎖

6.5 減少並行開銷

6.6 自適應負載均衡

6.6.1 任務場

6.6.2 有效的格線處理

6.6.3 成功並行化的3個步驟

6.6.4 未來將會怎樣

6.6.5 混合併行性

6.7 總結

相關詞條

熱門詞條

聯絡我們