如何使用链接器在Google colab上从CPU切换到GPU?

时间:2018-06-28 08:12:48

标签: python neural-network gpu google-colaboratory chainer

我按照Chainer文档上的说明进行操作,这导致我在运行代码时遇到错误:

RuntimeErrorTraceback (most recent call last)
<ipython-input-9-ffb21f9880f0> in <module>()
      ...
      6 model = Classifier(CompetitionNetwork(n_units = 64))
----> 7 model.to_gpu()
      ...
RuntimeError: CUDA environment is not correctly set up
(see https://github.com/chainer/chainer#installation).No module named cupy

然后我尝试以多种不同方式安装Cupy, 其中之一是

!apt -y install libcusparse8.0 libnvrtc8.0 libnvtoolsext1
!ln -snf /usr/lib/x86_64-linux-gnu/libnvrtc-builtins.so.8.0 /usr/lib/x86_64-linux-gnu/libnvrtc-builtins.so
!pip install cupy-cuda80 chainer

在导入cupy然后运行我的代码后,它总是给我同样的错误:

RuntimeError: CUDA environment is not correctly set up (see
https://github.com/chainer/chainer#installation).No module named cupy

接下来,我尝试使用此命令安装cuda:

!wget https://developer.nvidia.com/compute/cuda/9.2/Prod/local_installers/cuda-repo-ubuntu1604-9-2-local_9.2.88-1_amd64 -O cuda-repo-ubuntu1604-9-2-local_9.2.88-1_amd64.deb

!dpkg -i cuda-repo-ubuntu1604-9-2-local_9.2.88-1_amd64.deb

!apt-key add /var/cuda-repo-<version>/7fa2af80.pub

!apt-get update

!apt-get install cuda

花了很长时间,并且似乎工作了,但是最后还是给了我同样的错误。

除非我做错了事,否则似乎很难在Google Colab的GPU上使用Chainer。使用Tensorflow可以轻松得多。有没有人在Google GPU上使用Chainer的经验?

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

如果您在Google Colab环境中陷入困境,

  1. 首先尝试通过从“运行时”菜单中选择“重新启动运行时...”来重新启动运行时。
  2. 如果不能解决问题,请运行以下代码来破坏并重新创建容器(注意:您将丢失在容器上创建的文件),以便可以从干净状态重新开始。运行命令后,您可能需要等待一分钟,然后刷新浏览器以重新加载笔记本。

    !kill -9 -1
    

您安装Chainer / CuPy的安装步骤正确。 https://github.com/kmaehashi/chainer-colab

您不必手动安装CUDA Toolkit;默认情况下,Colab容器会提供它。

答案 2 :(得分:0)

我检查了python2上的链接器是否可以在google-colab上使用。

https://colab.research.google.com/gist/fiarabbit/a44a8b3ff25afc78849c62c2f75b25dd

我确认带python2的链接器已在google-colab上工作。

重点是您不需要像kmaehashi给出的mnist示例那样通过wget安装cupy。

此外,不要忘记打开GPU。