-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
10/1 新書到! 9/24 新書到! 9/18 新書到! 7/9 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

基于MATLAB的GPU編程

( 簡體 字)
作者:〔希臘〕尼古勞斯·普洛斯卡斯(Nikolaos Ploskas) 尼古勞斯·薩馬拉斯(Nikolaos Samaras)著類別:1. -> 工程繪圖與工程計算 -> Matlab
譯者:
出版社:機械工業出版社基于MATLAB的GPU編程 3dWoo書號: 51228
詢問書籍請說出此書號!

缺書
NT售價: 495

出版日:5/1/2019
頁數:251
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787111625858
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

MATLAB是面向科學計算的高級語言,在很多科學領域它都作為一個快速的原型設計工具而被廣泛使用。很多研究人員和公司使用MATLAB來解決計算密集型問題,并用它來加快代碼運行速度。MATLAB提供了并行計算工具箱,讓用戶可以使用多核處理器、計算機集群和GPU來解決計算密集型問題。

隨著硬件的發展,在過去的十幾年里GPU已經普及開來,并廣泛應用在計算密集型問題上。目前主要有兩個關于GPU的編程模型—CUDA和OpenCL,其中CUDA更加成熟穩定。程序員可以通過使用CUDA C編寫C/C++代碼或使用PGI的CUDA Fortran編寫Fortran代碼等途徑來使用CUDA架構。

本書采用的是另外一種使用CUDA架構的方法,適用的人群是學生、科研人員和工程師,他們使用MATLAB開發或維護應用程序,并希望在保留MATLAB優點的同時利用GPU編程實現加速。本書適用于對MATLAB編程有一定的經驗但是不一定熟悉并行架構的讀者,致力于幫助讀者通過GPU來優化MATLAB程序,使其能夠充分利用硬件優勢來加速。

對于每個概念,本書都提供了示例,以便讀者能夠將理論運用到實際中。由于MATLAB使用者的專業背景不同,本書是以教程式學習方法為主,而不采用案例式學習方法。因此,本書的示例重點在于GPU實用編程技術,而不是特定的應用領域。所提供的例子包括圖像處理、信號處理、優化、通信系統、統計學等多個領域的常見問題。

雖然有關GPU計算的MATLAB文檔非常有用,但是文檔對于GPU編程的具體實現問題并沒有進行深入的討論,從而使其對程序開發的指導作用非常有限。自2010年MATLAB支持GPU編程功能以來,已經開發了各種函數和工具箱,但是這些信息比較分散,本書的目的就是填補這個空白。另外,本書提供了很多來自不同科學領域的實際例子來闡述MATLAB的GPU功能。具有CUDA C/C++編程經驗的讀者也能夠通過利用MATLAB中的CUDA C/C++代碼或通過分析和優化GPU應用來獲取更多的知識。

本書主要從兩個方面著手進行介紹:

第一,MATLAB為GPU編程所提供的一系列功能。這一方面將分為三個部分:

支持GPU的MATLAB內置函數(依賴并行計算工具箱)。

GPU的逐元素操作(不依賴并行計算工具箱)。

除了并行計算工具箱外,支持GPU的其他MATLAB內置函數工具箱,包括通信系統工具箱、圖像處理工具箱、神經網絡工具箱、相控陣系統工具箱、信號處理工具箱以及統計和機器學習工具箱等。

第二,當MATLAB不能在GPU上執行現有的代碼段或者用戶想要使用CUDA提供的加速庫時,可以將MATLAB代碼與CUDA C/C++代碼相鏈接。

本書的主要目標群體是:

學過GPU編程課程并想用MATLAB實現并行的本科生或研究生。

使用MATLAB開發或者維護應用程序并想使用GPU加速MATLAB代碼的科研工作者。

希望在MATLAB中加速其計算密集型程序而無須用其他語言(如CUDA C/C++或CUDA Fortran)進行代碼重寫的工程師。

非常感謝MathWorks通過MathWorks Book Program提供的MATLAB學術許可,也感謝NVIDIA Academic Partnership提供的硬件支持,特別感謝Ioannis Athanasiadis提供的MATLAB工具箱的GPU功能實現與實例展示,最后感謝家人多年來對我們工作的支持與關懷。



Nikolaos Ploskas

Nikolaos Samaras
內容簡介:

“隨著GPU編程的普及,這本專業、詳細且可讀性強的書籍將備受歡迎,成為任何一個想利用GPU將自己的MATLAB程序進行并行化的程序員的必讀之作。”

——Yair Altman,《Accelerating MATLAB Performance》的作者

本書面向的讀者群主要是想在保留MATLAB優點的同時利用GPU編程實現加速的科研人員、工程師或學生。書中對各種工具箱和函數做了清晰的梳理,不僅是對當前MATLAB文檔的有益補充,而且提供了大量來自不同領域的應用實例。

本書首先介紹支持GPU計算的MATLAB工具箱,這使得程序可以直接在GPU上運行,而不需要太多關于GPU編程的知識。接著介紹了MATLAB內置的GPU計算功能,包括在多核或不同計算機系統中利用GPU的方法。最后介紹了一些高階主題,如在MATLAB中引入CUDA代碼,以優化現有的GPU應用。

本書特點

·介紹支持GPU的MATLAB工具箱及函數,如并行計算工具箱、通信系統工具箱、神經網絡工具箱以及統計和機器學習工具箱等。

·講解如何在不使用另一門編程語言(如CUDA C/C++或CUDA Fortran)的情況下加速計算密集型的MATLAB應用。

·涵蓋圖像處理、信號處理、統計學等不同領域的實例,幫助讀者快速理解GPU編程的關鍵概念。
目錄:

譯者序
推薦序
前言
關于作者
第1章 引言 1
1.1 并行編程 1
1.1.1 并行計算導引 1
1.1.2 并行計算機的類別 4
1.1.3 并行計算機的內存架構 6
1.2 GPU編程 7
1.3 CUDA架構 7
1.4 為什么在MATLAB中進行GPU編程,什么情況下使用GPU編程 11
1.5 本書的組織結構 15
1.6 本章回顧 16
第2章 入門準備 17
2.1 硬件要求 17
2.2 軟件要求 19
2.2.1 NVIDIA CUDA 工具包 19
2.2.2 MATLAB 26
2.3 本章回顧 29
第3章 并行計算工具箱 30
3.1 產品描述與目標 30
3.2 并行for循環(parfor) 32
3.3 單程序多數據(spmd) 43
3.4 分布式數組和共分布式數組 47
3.5 交互式并行開發(pmode) 52
3.6 GPU計算 53
3.7 集群和作業調度 53
3.8 本章回顧 57
第4章 基于MATLAB的GPU編程介紹 58
4.1 基于MATLAB的GPU編程特性 58
4.2 GPU數組 59
4.3 基于GPU的MATLAB內置函數 66
4.4 基于GPU的MATLAB逐元素操作 78
4.5 本章回顧 91
第5章 基于MATLAB工具箱的GPU編程 92
5.1 通信系統工具箱 92
5.2 圖像處理工具箱 109
5.3 神經網絡工具箱 112
5.4 相控陣系統工具箱 131
5.5 信號處理工具箱 136
5.6 統計和機器學習工具箱 137
5.7 本章回顧 142
第6章 多GPU并行 143
6.1 在指定GPU設備上定義和運行代碼 143
6.2 多GPU運算舉例 150
6.3 本章回顧 166
第7章 運行CUDA或PTX代碼 168
7.1 CUDA C編程簡介 168
7.2 在GPU上通過MATLAB運行CUDA或PTX代碼的步驟 172
7.3 示例:向量加法 180
7.4 示例:矩陣乘法 182
7.5 本章回顧 185
第8章 包含CUDA代碼的MATLAB MEX函數 186
8.1 MATLAB MEX文件簡介 186
8.2 在GPU上執行MATLAB MEX函數的步驟 191
8.3 示例:向量加法 198
8.4 示例:矩陣乘法 201
8.5 本章回顧 204
第9章 CUDA加速庫 205
9.1 引言 205
9.2 cuBLAS 206
9.3 cuFFT 210
9.4 cuRAND 213
9.5 cuSOLVER 216
9.6 cuSPARSE 219
9.7 NPP 223
9.8 Thrust 227
9.9 本章回顧 229
第10章 代碼分析與GPU性能提升 230
10.1 MATLAB分析 230
10.2 CUDA分析 242
10.3 提升GPU性能的最佳實踐 246
10.4 本章回顧 251
參考文獻 252
序: