?近年來,隨著深度學習的高速發(fā)展,大數(shù)據(jù)技術的普及,接下來緊接的會普及發(fā)展的想必就是硬件層面的配合,而GPU無疑是最重要的趨勢。過去幾年,計算領域我們目睹了英偉達(NVIDIA)公司帶來的變革。計算統(tǒng)一設備架構(Compute Unified Device Architecture, CUDA)編程語言的引入,第一次使這些非常強大的圖形處理器為程序員日常所用,以應對日益復雜的計算工作。從嵌入式設備行業(yè)到家庭用戶,再到超級計算機,所有的一切都因此而改變。
? ???
計算機軟件界較大的變遷是從串行編程轉向了并行編程。其中,CUDA起到了重要的作用。究其本質(zhì),圖形處理單元(Graphics Processor Unit,GPU)是為高速圖形處理而設計的,它具有天然的并行性。CUDA采用了一種簡單的數(shù)據(jù)并行模型,再結合編程模型,從而無需操縱復雜的圖形基元。
一. GPU與CUDA背景基礎介紹
第1部份 CUDA硬件環(huán)境,體系結構,軟件環(huán)境介紹,包括平臺、架構、開發(fā)工具和熱點技術
第2部份 并行編程介紹,CUDA核心概念,包括網(wǎng)格、線程塊,不同類型內(nèi)存的工作機制
二. CUDA編程基礎
第3部份 CUDA設備內(nèi)存、常量內(nèi)存、共享內(nèi)存和紋理內(nèi)存,CUDA流和事件
第4部份 CUDA執(zhí)行模式、線程調(diào)度、內(nèi)核執(zhí)行和CUDA存儲器的使用
第5部份 CUDA流處理器簇、多GPU編程、紋理操作
三. CUDA性能優(yōu)化與設計
第6部份 CPU/GPU協(xié)同編程,串行/并行程序中提高并行度的常用策略
第7部份 流式負載以及使用GPU做應用程序性能優(yōu)化常用策略
第8部份 在集群中使用CUDA
四. 實戰(zhàn)項目經(jīng)驗
第9部份 應用CUDA做高維數(shù)據(jù)處理
第10部份 CUDA+OpenGL做圖形渲染
第11部份 CPGPU實現(xiàn)視頻流實時光流跟蹤
第12部份 深度學習框架中的GPU應用
|