從20世紀(jì)70年代Cleve Moler開發(fā)MATLAB開始, MATLAB受到學(xué)術(shù)界和工業(yè)界的歡迎,用戶超過200萬。然而,很多算法的MATLAB實(shí)現(xiàn)代碼都有加速的需求。以深度學(xué)習(xí)為例,相關(guān)的MATLAB代碼需要運(yùn)行數(shù)小時(shí)甚至數(shù)天的時(shí)間。GPU計(jì)算和CUDA編程為MATLAB加速提供了很好的解決方案。
現(xiàn)代的硬件技術(shù)的發(fā)展,使MATLAB程序的開發(fā)者和使用者能夠擁有多核(multicore)、大內(nèi)存等有效工具;圖形處理器(Graphics Processing Unit,GPU)具有很好的加速能力。同時(shí),一些公司還推出了專用的計(jì)算加速卡,如英偉達(dá)公司的Tesla系列計(jì)算加速卡、AMD公司的Fire Pro系列計(jì)算加速卡、Intel公司的Xeon Phi計(jì)算加速卡等。
GPU是現(xiàn)代計(jì)算機(jī)必備的配件,都有不錯(cuò)的加速能力。GPU的主要生產(chǎn)廠商包括英偉達(dá)公司和AMD公司。MATLAB通過并行計(jì)算工具箱(Parallel Computing Toolbox,PCT)對(duì)英偉達(dá)公司的GPU單卡提供支持,MATLAB的開發(fā)者和使用者可以通過PCT使用英偉達(dá)公司生產(chǎn)的GPU。需要英偉達(dá)公司GPU多卡的計(jì)算支持和對(duì)英偉達(dá)公司GPU計(jì)算加速性能要求好的程序員,可以通過MATLAB與C / C++程序或者Fortran程序的接口,獲得計(jì)算性能的提升。MATLAB不直接提供對(duì)AMD公司GPU的提供支持,MATLAB的開發(fā)者和使用者需要對(duì)AMD公司生產(chǎn)的GPU編寫程序,并通過MATLAB與C / C++程序或者Fortran程序的接口功能(wrapper function),獲得MATLAB對(duì)AMD公司的GPU的支持。
《加速M(fèi)ATLAB編程指南:CUDA實(shí)現(xiàn)》基于作者多年GPU計(jì)算與加速的研究和經(jīng)驗(yàn)[1-10],全面敘述了基于CUDA編程的加速M(fèi)ATLAB編程的方法。
《加速M(fèi)ATLAB編程指南:CUDA實(shí)現(xiàn)》適應(yīng)于各行各業(yè)利用MATLAB進(jìn)行算法開發(fā),并且對(duì)MATLAB程序有加速需求的專業(yè)人員?!都铀費(fèi)ATLAB編程指南:CUDA實(shí)現(xiàn)》主要是面向滿足日常辦公需要的個(gè)人計(jì)算機(jī)(Personal Computer,PC)和服務(wù)器(Server),并安裝了GPU加速卡。
MATLAB是廣泛應(yīng)用的算法開發(fā)語(yǔ)言之一。然而,MATLAB簡(jiǎn)單易用的特性與算法復(fù)雜性的矛盾,造成了各個(gè)領(lǐng)域的MATLAB程序運(yùn)行緩慢。本書總結(jié)了作者多年來在算法開發(fā)工作中關(guān)于MATLAB程序加速的實(shí)戰(zhàn)經(jīng)驗(yàn),系統(tǒng)地介紹了利用GPU計(jì)算能力和CUDA編程語(yǔ)言實(shí)現(xiàn)加速M(fèi)ATLAB編程的方法。
本書首先介紹了MATLAB程序的性能評(píng)估的方法,幫助讀者找到制約MATLAB程序運(yùn)行速度的“瓶頸”所在; 接著循序漸進(jìn)地介紹加速M(fèi)ATLAB編程的方法,包括基于多核處理器的MATLAB程序加速、基于大內(nèi)存和向量化的MATLAB程序加速、基于并行計(jì)算工具箱和GPU計(jì)算的MATLAB加速、基于CUDA庫(kù)的MATLAB加速、基于CUDA語(yǔ)言的MATLAB加速等。同時(shí),本書附帶了大量程序?qū)嵗ㄉ疃葘W(xué)習(xí)及大數(shù)據(jù)分析領(lǐng)域的例子,深入淺出地示范各種基于CUDA語(yǔ)言的MATLAB程序加速的技巧。
本書可幫助讀者對(duì)所在領(lǐng)域的MATLAB應(yīng)用程序進(jìn)行顯著加速,大幅提升算法開發(fā)的效率。
趙地獲得美國(guó)路易斯安娜理工大學(xué)(Louisiana Tech University)計(jì)算機(jī)與應(yīng)用數(shù)學(xué)專業(yè)博士學(xué)位,曾在美國(guó)哥倫比亞大學(xué)(Columbia University)和美國(guó)俄亥俄州立大學(xué)(The Ohio State University)從事博士后研究工作。
趙地博士在GPU計(jì)算方面具有豐富的研究經(jīng)驗(yàn),發(fā)表了多篇學(xué)術(shù)論文和會(huì)議論文。現(xiàn)任CNIC-英偉達(dá)公司GPU研究中心(GPU Research Center, GRC)、CNIC-英偉達(dá)公司GPU教育中心(GPU Education Center, GEC)和CNIC-英偉達(dá)公司“智慧醫(yī)療”聯(lián)合實(shí)驗(yàn)室負(fù)責(zé)人;中國(guó)圖象圖形學(xué)學(xué)會(huì)視覺大數(shù)據(jù)專業(yè)委員會(huì)委員,CCF會(huì)員。