码迷,mamicode.com
首页 > 编程语言 > 详细

cs231n spring 2017 lecture8 听课笔记

时间:2017-11-05 13:52:08      阅读:231      评论:0      收藏:0      [点我收藏+]

标签:而不是   mon   pad   spring   ati   opencl   通信   ace   解决办法   

1. CPU vs. GPU:

  CPU核心少(几个),更擅长串行任务。GPU有很多核心(几千个),每一个核都弱,有自己的内存(几个G),很适合并行任务。GPU最典型的应用是矩阵运算。

  GPU编程:1)CUDA,只能在英伟达;2)OpenCL类似CUDA,好处是可以跑在任何平台上,但相对慢一些。深度学习可以直接调用现成的库,不用自己写CUDA代码。

  用cuDNN比不用快几倍。

  深度学习的瓶颈可能不在GPU的运算,而在GPU和数据的通信上,解决办法是:1)把数据读入RAM;2)用SSD而不是HDD;3)用CPU多线程提前读取数据。

 

2. 深度学习框架:Caffe(UC Berkeley)/Caffe2(Facebook), Torch(NYU, Facebook)/PyTorch(Facebook), Theano(U Montreal)/TensorFlow(Google), Paddle(Baidu), CNTK(Microsoft), MXNet(Amazon).

  框架分为static(TensorFlow、Caffe2)和dynamic(PyTorch)。TensorFlow是很安全的选择。PyTorch最适合做研究。TensorFlow和Caffe2更适合实际部署应用。

cs231n spring 2017 lecture8 听课笔记

标签:而不是   mon   pad   spring   ati   opencl   通信   ace   解决办法   

原文地址:http://www.cnblogs.com/zonghaochen/p/7787214.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!