Matlab 将MatConvNet与新旧GPU一起使用
我有两个GPU安装在我的Windows7 64位计算机上:一个NVIDIA GeForce GTX 750 Ti和一个GeForce GTX 570。前者的计算能力为5,后者的计算能力为2 对于我的一个项目,我想利用一个库,以类似于Caffe或TensorFlow的方式在MATLAB中拟合卷积神经网络(CNN)。该软件包支持两种图形卡的使用,但NVIDIA的深度学习工具包cuDNN仅与具有3或更高计算能力的图形卡兼容。如果我决定只使用750 Ti,我可以编译MatConvNet,并将选项设置为Matlab 将MatConvNet与新旧GPU一起使用,matlab,deep-learning,gpu,multiple-gpu,matlab-gpu,Matlab,Deep Learning,Gpu,Multiple Gpu,Matlab Gpu,我有两个GPU安装在我的Windows7 64位计算机上:一个NVIDIA GeForce GTX 750 Ti和一个GeForce GTX 570。前者的计算能力为5,后者的计算能力为2 对于我的一个项目,我想利用一个库,以类似于Caffe或TensorFlow的方式在MATLAB中拟合卷积神经网络(CNN)。该软件包支持两种图形卡的使用,但NVIDIA的深度学习工具包cuDNN仅与具有3或更高计算能力的图形卡兼容。如果我决定只使用750 Ti,我可以编译MatConvNet,并将选项设置为e
enableCudnn
设置为true
,如果我决定只使用570,我必须将选项设置为false
在我创建的一个简单的CNN上,我用三个卷积层、三个池层、一个完全连接层和一个softmax层对手写数字进行分类。我注意到,仅750 Ti,然后是两张卡的组合,然后是570,训练时间最短。这是因为当我使用这两个卡时,我必须使用enableCudnn
将MatConvNet包编译为false
,这会阻止MatConvNet使用作为cuDNN一部分的快速卷积码。然而,拥有两个GPU仍然比单独拥有570要好
我想知道是否有一种方法可以分别为每个图形卡编译MatConvNet,这样750就可以使用cuDNN,而570就不能了。在不考虑在图形卡之间分配工作负载的开销的情况下,与单独使用750相比,这在理论上应该可以加快代码的速度。有没有人能告诉我他们是否做过类似的事情,如果可能的话,和/或如何做