支持 caffe 并支持 GPU 的 Microsoft Azure VM

Posted

技术标签:

【中文标题】支持 caffe 并支持 GPU 的 Microsoft Azure VM【英文标题】:caffe powered and GPU enabled Microsoft Azure VM 【发布时间】:2017-12-20 04:47:17 【问题描述】:

我正在尝试构建一个用于在 Azure 中进行模型训练的 VM。我发现这个Data Science Virtual Machine for Linux (Ubuntu) VM 似乎是一个合适的候选人。

不幸的是,当我启动 VM 并安装 caffe 先决条件时,我无法运行测试。我在 make runtest 上收到以下错误(make allmake test 已完成且没有错误):

NVIDIA: no NVIDIA devices found
Cuda number of devices: 0
Setting to use device 0
Current device id: 0
Current device name: 
Note: Randomizing tests' orders with a seed of 97204 .
[==========] Running 2041 tests from 267 test cases.
[----------] Global test environment set-up.
[----------] 11 tests from AdaDeltaSolverTest/3, where TypeParam = caffe::GPUDevice<double>
[ RUN      ] AdaDeltaSolverTest/3.TestAdaDeltaLeastSquaresUpdateWithHalfMomentum
NVIDIA: no NVIDIA devices found
E0715 02:24:32.097311 59355 common.cpp:114] Cannot create Cublas handle. Cublas won't be available.
NVIDIA: no NVIDIA devices found
E0715 02:24:32.103780 59355 common.cpp:121] Cannot create Curand generator. Curand won't be available.
F0715 02:24:32.103914 59355 test_gradient_based_solver.cpp:80] Check failed: error == cudaSuccess (30 vs. 0)  unknown error
*** Check failure stack trace: ***
    @     0x7f77a463f5cd  google::LogMessage::Fail()
    @     0x7f77a4641433  google::LogMessage::SendToLog()
    @     0x7f77a463f15b  google::LogMessage::Flush()
    @     0x7f77a4641e1e  google::LogMessageFatal::~LogMessageFatal()
    @           0x7115e3  caffe::GradientBasedSolverTest<>::TestLeastSquaresUpdate()
    @           0x7122af  caffe::AdaDeltaSolverTest_TestAdaDeltaLeastSquaresUpdateWithHalfMomentum_Test<>::TestBody()
    @           0x8e6023  testing::internal::HandleExceptionsInMethodIfSupported<>()
    @           0x8df63a  testing::Test::Run()
    @           0x8df788  testing::TestInfo::Run()
    @           0x8df865  testing::TestCase::Run()
    @           0x8e0b3f  testing::internal::UnitTestImpl::RunAllTests()
    @           0x8e0e63  testing::UnitTest::Run()
    @           0x466ecd  main
    @     0x7f77a111c830  __libc_start_main
    @           0x46e589  _start
    @              (nil)  (unknown)
Makefile:532: recipe for target 'runtest' failed
make: *** [runtest] Aborted (core dumped)

是否可以在 Azure 中使用 caffe 启动适用于支持 GPU 的机器学习的虚拟机?

VM here 的所有详细信息

【问题讨论】:

【参考方案1】:

适用于 Ubuntu 的数据科学虚拟机 (DSVM) 已经在 /opt/caffe 中安装了 Caffe。要在 GPU 上使用它,请通过选择其中一种 NC 大小来创建具有 K80 GPU 的 VM。 (请务必选择 HDD 作为存储类型,否则 NC 大小将不会出现。)Caffe 将开箱即用。

还要注意 PyCaffe 是可用的。在终端:

source activate root

然后 python 将提供 PyCaffe。

【讨论】:

以上是关于支持 caffe 并支持 GPU 的 Microsoft Azure VM的主要内容,如果未能解决你的问题,请参考以下文章

为 caffe 构建 GPU docker 映像时出错:不支持的 gpu 架构“compute_60”

nvcc 致命:安装 cuda 9.1+caffe+openCV 3.4.0 时不支持 gpu 架构“compute_20”

(译)综合指南:通过Ubuntu 16.04上从Source构建来安装支持GPU的Caffe2

caffe环境配置

Caffe深度学习计算框架

Caffe 深度学习框架介绍