|
|
课程介绍:
3 H, J, c, e, u& [+ S4 e( x& |近年来,随着深度学习的高速发展,大数据技术的普及,接下来紧接的会普及发展的想必就是硬件层面的配合,而GPU无疑是最重要的趋势。过去几年,计算领域我们目睹了英伟达(NVIDIA)公司带来的变革。计算统一设备架构(Compute Unified Device Architecture, CUDA)编程语言的引入,第一次使这些非常强大的图形处理器为程序员日常所用,以应对日益复杂的计算工作。从嵌入式设备行业到家庭用户,再到超级计算机,所有的一切都因此而改变。3 m8 G. Z& g, [+ v& ~2 Q1 o! U
计算机软件界较大的变迁是从串行编程转向了并行编程。其中,CUDA起到了重要的作用。究其本质,图形处理单元(Graphics Processor Unit,GPU)是为高速图形处理而设计的,它具有天然的并行性。CUDA采用了一种简单的数据并行模型,再结合编程模型,从而无需操纵复杂的图形基元。
9 d7 G" G- x4 L7 ^. X1 r我们也可以轻而易举的发现各种各样的开源计算机库,例如OpenCV,Caffe,TensorFlow等等,都提供了对应于GPU的使用接口,使得GPU的使用越来越主流而高效。& K$ z) H& I5 [, q. l
: {8 G7 H# M$ ^4 K; C7 _3 z本课程主要分为四部分,分别涵盖了硬件搭载知识、CUDA编程基础、CUDA性能优化与设计、实战项目经验。
0 M; j( m n& f& F2 v9 q5 `' @
+ q- m3 @0 c% C8 V7 d/ Z4 a授课对象:
+ {6 b, F+ b h5 h3 l( _5 @. k6 W+ g对并行计算,GPU编程刚兴趣的同学,熟悉C/C++编程语言。
" w4 R. T5 v o% U; j2 F; \需要有带NVIDIA显卡的计算机,如果没有的同学可能需要额外购买AWS的GPU服务器,费用约是0.4美元/小时。* q4 P' ~- m/ Q5 `% |
4 W; D# d+ T" E2 o2 J课程环境:
: z$ O# I) O+ k硬件环境:AWS G2 Instances(NVIDIA GRID K520) / CG1 Instances(NVIDIA Tesla M2050) /自备带NVIDIA GPU的电脑; 6 O7 R( U& g0 E' I, h4 f( v
操作系统:Linux 64bit
& \* B, p4 P0 n6 U编程语言:C/C++
5 `' J4 y2 T8 l1 J n& |使用软件:CUDA7.5 5 |4 T1 a" w7 n* j. A
1 m& l( A( Z6 S0 C7 W) M. L收获预期:
/ T l- e: W& Z, Y7 z% p具备GPU和CUDA编程能力,可以完成初步的GPU程序设计和优化设计,对于实际应用中CUDA的使用能有全面的考虑和实操能力。. x0 K+ A/ n4 B( ]! k
" S6 @- n- b! O& g/ T课程目录:
" c% e& P* C& `: `) a3 R, S一. GPU与CUDA背景基础介绍6 K. R( d) L4 @% L% C. ~# q
第1课 CUDA硬件环境,体系结构,软件环境介绍,包括平台、架构、开发工具和热点技术* c0 f7 U( f) ~. O3 s) k# o y
第2课 并行编程介绍,CUDA核心概念,包括网格、线程块,不同类型内存的工作机制
( `2 [- f+ a" t
9 v/ b8 B3 T6 c, Y0 E& u二. CUDA编程基础% M/ q# x0 w3 g G+ d" k/ `( V! s* l
第3课 CUDA设备内存、常量内存、共享内存和纹理内存,CUDA流和事件
% I. n! p- W) N& o4 A第4课 CUDA执行模式、线程调度、内核执行和CUDA存储器的使用
2 p$ A/ e. H. ^! o' Q( `第5课 CUDA流处理器簇、多GPU编程、纹理操作
& v1 g: \6 @/ t! J& h( c9 s8 ?9 s$ y
三. CUDA性能优化与设计! i. K- j2 U4 D7 H) Q) e
第6课 CPU/GPU协同编程,串行/并行程序中提高并行度的常用策略* p2 a1 J7 _( L2 V# d, `+ j; U
第7课 流式负载以及使用GPU做应用程序性能优化常用策略$ K$ \& r& S! s. R
第8课 在集群中使用CUDA
" L% ^- l3 H8 V2 a' {+ y5 t
0 _7 k j) M6 E ~& i" o0 J: w# Q, B四. 实战项目经验
' M7 Q/ o& u M" X' D% b第9课 应用CUDA做高维数据处理
$ F) J4 V; i( ?) D第10课 CUDA+OpenGL做图形渲染2 l) W% N+ o& m8 {) A! N. w5 E
第11课 CPGPU实现视频流实时光流跟踪/ y0 h% \( G3 u1 v
第12课 深度学习框架中的GPU应用7 d% K; ~- G' i6 n2 ?% H. C' q
2 L( P3 f0 V; I+ b/ ^
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|