本書介紹了多尺度離散模擬的基本思路、方法和不同應用領域,并就分子動力學模擬、復雜流動和多相流動模擬、數據圖像分析等若干重點領域具體討論了利用圖形處理器(GPU)實現其多級并行計算的實施方案和編程技巧,書中對現有的GPU編程環境及其使用方法和注意事項等從應用開發人員的角度作了比較詳細的闡述。
本書可供力學、物理、化學、過程工程,以至經濟和社會等領域對復雜系統的計算機模擬及其高性能計算感興趣的研究生、科研人員和工程技術人員參考。
序
前言
第0章 引言
第1章 CUDA使用初步
1.1 GPU介紹
1.2 CUDA介紹
1.3 CUDA安裝和使用
1.4 及時個CUDA程序——矩陣相加
1.5 調試和優化
第2章 基于CUDA的CT圖像重建
2.1 CT介紹
2.2 CT掃描及重建原理
2.3 FBP圖像重建算法的CUDA實現
2.4 總結
第3章 分子動力學模擬的GPU并行實現
3.1 建立適合GPU計算的分子動力學模擬算法
3.2 GPU—MD算法的應用
3.3 GPU性能發揮
第4章 基于GPU的原子間多體作用計算及其在材料領域的應用
4.1 材料計算領域的原子間多體相互作用模型
4.2 模擬算法
4.3 實例應用
4.4 性能分析
4.5 一些GPU程序開發調試經驗
第5章 長鏈分子分子動力學模擬的GPU實現
5.1 長鏈分子分子動力學模擬的常用模型和算法
5.2 算法的GPU實現
5.3 模擬體系和GPU程序性能
第6章 顆粒流體系統宏觀粒子模擬的GPU實現
第7章 基于GPU的格子玻爾茲曼方法計算
第8章 其他非CPU編程
結束語
參考文獻
附錄
第1章 CUDA使用初步
1.1 GPU介紹
GPU是英文graphic processing unit的縮寫,漢語的意思就是圖形處理器。早期的計算機也需要處理圖形,但相對簡單,多數工作都交由中央處理器(central pro—cessing unit,CPU)來完成。其實當時的業界也有一些圖形處理產品,例如20世紀80年代的GE(geometry engine),但是其功能還是較弱,直到NVIDIA公司在1999年推出了具有標志意義的圖形處理器GeForce256,GPU才真正開始了迅速的發展。到目前為止,GPU已經過了八代的發展,每一代都擁有比前一代更強的性能和更完善的可編程架構。及時代GPU(到1998年為止)包括NVIDIA的TNT2,ATI的Rage和3dfx的Vood003;第二代GPufl999—2000年)包括NVIDIA的GeForce256和GeForce2,ATl的RV200,S3的Savage3D;第三代GPU(2001年)包括NVIDIA的GeForce3和GeForce4 Ti,微軟的Xbox,及ATl的R200;第四代GPU(2003年)包括NVIDIA的GeForce FX(具有CineFX架構),ATl的R300;第五代GPU(2004年)主要以NVIDIA的GeForce 6800為代表;第六代GPU(2006年)主要以NVIDIAGeForce 7800為代表;第七代GPU(2007年)主要以NVIDIA的GeForce 8800為代表;目前的第八代GPU(2008年)主要有NVIDIA的GeForce 200系列以及AMD的RV670、RV770等。GPU的計算能力也在過去10年間有了飛速的發展,基本上是平均每6個月就有性能翻倍的產品面市。同時,GPU的計算性能發展速度也大大快于CPU,如圖1.1所示。
……