| *完成訂單後正常情形下約兩周可抵台。 *本賣場提供之資訊僅供參考,以到貨標的為正確資訊。 印行年月:202405*若逾兩年請先於私訊洽詢存貨情況,謝謝。 台灣(台北市)在地出版社,每筆交易均開具統一發票,祝您中獎最高1000萬元。 書名:並行程序設計導論 (原書第2版) ISBN:9787111743194 出版社:機械工業 著編譯者:彼得.S.帕切科 馬修.馬倫塞克 叢書名:計算機科學叢書 頁數:347 所在地:中國大陸 *此為代購商品 書號:1642180 可大量預訂,請先連絡。 內容簡介 并行硬體已經無處不在,但如何在并行環境下編寫出高性能的程序,仍然是擺在廣大程序員面前的一道難題,特別是,不少計算機科學專業的學生在畢業時甚至沒有并行編程的經驗。本書嘗試解決這個問題。主要面向沒有經驗的讀者,清晰講解如何設計、調試和評估分散式內存和共享內存程序的性能。 新版更新及特色: 討論如何利用MPI、Pthreads、OpenMP和CUDA這四種廣泛使用的并行編程API來編寫并行程序。其中,關於CUDA的章節是全新的。 新增關於GPU編程和異構編程的章節,此外,還新增了與并行程序開發相關的示例和練習。 學習曲線友好,從簡單的編程示例開始,逐步構建更具挑戰性的示例,關於四種API的章節相互獨立,便於讀者根據需要選擇閱讀。 配有豐富的練習和編程作業,所有源代碼均可從本書網站免費下載。作者簡介 黃智瀕,計算機系統結構博士,北京郵電大學計算機學院講師。長期從事智能機器學習、超大規模并行計算、三維計算機視覺和深度學習架構方面的研究。目錄 譯者序前言 第1章 為什麼需要并行計算 1 1 為什麼需要不斷提高性能 1 2 為什麼需要建立并行系統 1 3 為什麼需要編寫并行程序 1 4 如何編寫并行程序 1 5 我們將做什麼 1 6 併發、并行和分散式 1 7 本書其餘部分 1 8 一點警告 1 9 排版慣例 1 10 小結 1 11 練習 第2章 并行硬體與并行軟體 2 1 背景知識 2 1 1 馮·諾依曼體繫結構 2 1 2 進程、多任務和線程 2 2 馮·諾依曼模型的改進 2 2 1 緩存基礎 2 2 2 緩存映射 2 2 3 緩存和程序:示例 2 2 4 虛擬內存 2 2 5 指令級并行 2 2 6 硬體多線程 2 3 并行硬體 2 3 1 并行計算機的分類 2 3 2 SIMD系統 2 3 3 MIMD系統 2 3 4 互連網路 2 3 5 高速緩存一致性 2 3 6 共享內存與分散式內存 2 4 并行軟體 2 4 1 注意事項 2 4 2 協調進程/線程 2 4 3 共享內存 2 4 4 分散式內存 2 4 5 GPU編程 2 4 6 混合系統編程 2 5 輸入和輸出 2 5 1 MIMD系統 2 5 2 GPU 2 6 性能 2 6 1 在MIMD系統中的加速比和效率 2 6 2 阿姆達定律 2 6 3 MIMD系統的可擴展性 2 6 4 MIMD程序的計時 2 6 5 GPU性能 2 7 并行程序設計 2 7 1 示例 2 8 編寫和運行并行程序 2 9 假設 2 10 小結 2 10 1 串列系統 2 10 2 并行硬體 2 10 3 并行軟體 2 10 4 輸入和輸出 2 10 5 性能 2 10 6 并行程序設計 2 10 7 假設 2 11 練習 第3章 基於MPI的分散式內存編程 3 1 入門 3 1 1 編譯和執行 3 1 2 MPI程序 3 1 3 MPI_Init和MPI_Finalize 3 1 4 通信域、MPI_Comm_size和MPI_Comm_rank 3 1 5 SPMD程序 3 1 6 通信 3 1 7 MPI_Send 3 1 8 MPI_Recv 3 1 9 消息匹配 3 1 10 status_p參數 3 1 11 MPI_Send和MPI_Recv的語義 3 1 12 一些潛在的陷阱 3 2 MPI中的梯形法則 3 2 1 梯形法則 3 2 2 梯形法則的并行化 3 3 處理I/O 3 3 1 輸出 3 3 2 輸入 3 4 集合通信 3 4 1 樹形結構的通信 3 4 2 MPI_Reduce 3 4 3 集合通信與點對點通信 3 4 4 MPI_Allreduce 3 4 5 廣播 3 4 6 數據分佈 3 4 7 分散 3 4 8 收集 3 4 9 綜合實例 3 5 MPI派生的數據類型 3 6 MPI程序的性能評估 3 6 1 計時 3 6 2 結果 3 6 3 加速比和效率 3 6 4 可擴展性 3 7 一種并行排序演算法 3 7 1 一些簡單的串列排序演算法 3 7 2 并行奇偶移項排序 3 7 3 MPI程序中的安全性 3 7 4 關於并行奇偶排序的一些補充細節 3 8 小結 3 9 練習 3 10 編程作業 第4章 Pthreads共享內存編程 4 1 進程、線程和Pthreads 4 2 Hello, world 4 2 1 執行 4 2 2 預備 4 2 3 啟動線程 4 2 4 運行線程 4 2 5 停止線程 4 2 6 錯誤檢查 4 2 7 啟動線程的其他方法 4 3 矩陣-向量乘法 4 4 臨界區 4 5 忙等待 4 6 互斥鎖 4 7 生產者-消費者同步和信號量 4 8 柵欄和條件變數 4 8 1 忙等待和互斥鎖 4 8 2 信號量 4 8 3 條件變數 4 8 4 Pthreads柵欄 4 9 讀寫鎖 4 9 1 排序的鏈表函數 4 9 2 多線程鏈表 4 9 3 Pthreads的讀寫鎖 4 9 4 各種實現方案的性能 4 9 5 實現讀寫鎖 4 10 緩存、緩存一致性和偽共享 4 11 線程安全 4 11 1 不正確的程序可以產生正確的輸出 4 12 小結 4 13 練習 4 14 編程作業 第5章 OpenMP共享內存編程 5 1 入門 5 1 1 編譯和運行OpenMP程序 5 1 2 程序 5 1 3 錯誤檢查 5 2 梯形法則 5 2 1 第一個OpenMP版本 5 3 變數的作用域 5 4 歸約子句 5 5 parallel指令 5 5 1 注意事項 5 5 2 數據依賴性 5 5 3 尋找循環迭代相關 5 5 4 估算π 5 5 5 關於作用域的更多內容 5 6 關於OpenMP中的循環的更多內容:排序 5 6 1 冒泡排序 5 6 2 奇偶移項排序 5 7 循環的調度 5 7 1 schedule子句 5 7 2 static調度類型 5 7 3 dynamic和guided調度類型 5 7 4 runtime調度類型 5 7 5 哪種調度 5 8 生產者和消費者 5 8 1 隊列 5 8 2 消息傳遞 5 8 3 發送消息 5 8 4 接收消息 5 8 5 終止檢測 5 8 6 開始 5 8 7 atomic指令 5 8 8 臨界區和鎖 5 8 9 在消息傳遞程序中使用鎖 5 8 10 critical指令、atomic指令或鎖 5 8 11 注意 詳細資料或其他書籍請至台灣高等教育出版社查詢,查後請於PChome商店街私訊告知ISBN或書號,我們即儘速上架。 |