cupy.cuda.curand.CURANDError: CURAND_STATUS_LAUNCH_FAILUREについて

1,380 views
Skip to first unread message

KK

unread,
Jul 6, 2017, 10:09:58 AM7/6/17
to Chainer Japanese User Group
表題の件なのですが、UbuntuにDeepLearningの環境を構築しようと思い、CUDA、cudnnなどをインストールしていざmnistでgpuを動かそうとしたのですが以下のようなエラーでGPUが使えず困っています。
エラー内容からDropoutがダメなのかと思い、trainをFalseにすると動きましたがTrueにすると再び以下のエラーが出ます。
このようなエラーの対処法をご存知の方がいらっしゃれば教えていただきたいです。
自分の環境は
Ubuntu16.04
CUDA8.0
cudnn5.1
Chainer1.24.0
です。
エラーの内容と使用しているソースを載せますのでよろしくお願いいたします。

fetch MNIST dataset
('epoch', 1)
Traceback (most recent call last):
  File "/home/hoge/ドキュメント/mnist.py", line 89, in <module>
    loss, acc = model(x_batch, y_batch)
  File "/home/hoge/ドキュメント/mnist.py", line 30, in __call__
    h1 = F.dropout(F.maxout(self.l1(x), 1), train=train, ratio = 0.0)
  File "/usr/local/lib/python2.7/dist-packages/chainer/functions/noise/dropout.py", line 55, in dropout
    return Dropout(ratio)(x)
  File "/usr/local/lib/python2.7/dist-packages/chainer/function.py", line 199, in __call__
    outputs = self.forward(in_data)
  File "/usr/local/lib/python2.7/dist-packages/chainer/functions/noise/dropout.py", line 26, in forward
    flag = (xp.random.rand(*x[0].shape, dtype=numpy.float32) >=
  File "/usr/local/lib/python2.7/dist-packages/cupy/random/sample.py", line 28, in rand
    return random_sample(size=size, dtype=dtype)
  File "/usr/local/lib/python2.7/dist-packages/cupy/random/sample.py", line 136, in random_sample
    return rs.random_sample(size=size, dtype=dtype)
  File "/usr/local/lib/python2.7/dist-packages/cupy/random/generator.py", line 152, in random_sample
    func(self._generator, out.data.ptr, out.size)
  File "cupy/cuda/curand.pyx", line 148, in cupy.cuda.curand.generateUniform (cupy/cuda/curand.cpp:2847)
  File "cupy/cuda/curand.pyx", line 151, in cupy.cuda.curand.generateUniform (cupy/cuda/curand.cpp:2749)
  File "cupy/cuda/curand.pyx", line 85, in cupy.cuda.curand.check_status (cupy/cuda/curand.cpp:1437)
cupy.cuda.curand.CURANDError: CURAND_STATUS_LAUNCH_FAILURE

mnist.py

KK

unread,
Jul 6, 2017, 10:20:15 AM7/6/17
to Chainer Japanese User Group
グラフィックスカードはGeForce GTX 1080を使用しています.

2017年7月6日木曜日 23時09分58秒 UTC+9 KK:

Kenta Oono

unread,
Jul 10, 2017, 12:35:48 PM7/10/17
to Chainer Japanese User Group
大野です

Dropoutはtrain=Falseの場合、入力変数をそのまま返すので、CuPy関連の関数に触らなかったため、エラーが発生しなかったと思われます。

CuPyの関数で失敗しているようですので、以下のコマンドを実行していただけますでしょうか:
$ python -c "import cupy"
これで失敗する場合、問題はChainer側ではなく、CuPyのインストールに失敗しています。


2017年7月6日木曜日 23時20分15秒 UTC+9 KK:

KK

unread,
Jul 10, 2017, 10:23:47 PM7/10/17
to Chainer Japanese User Group
返信ありがとうございます。


$ python -c "import cupy"
を実行した結果、問題なく通りました。

このエラーが出た当初は多分こちら側のミスでcudaやcudnnあたりのインストールがうまくいっていないのだろうと思ったのですが、

Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cupy
>>> from cupy.cuda import cudnn
>>>

このように問題なくcupyやcudnnがimportできており、混乱している状況です。。。

2017年7月11日火曜日 1時35分48秒 UTC+9 Kenta Oono:

Kenta Oono

unread,
Jul 18, 2017, 3:12:29 AM7/18/17
to Chainer Japanese User Group
大野です。

それでは、エラーが発生した箇所で実行していたcupy.random_sampleを直接実行するとエラーが発生しますでしょうか?

import cupy
cupy.random_sample(10)


2017年7月11日火曜日 11時23分47秒 UTC+9 KK:

KK

unread,
Jul 18, 2017, 4:25:46 AM7/18/17
to Chainer Japanese User Group
実行したところ

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'random_sample'
このようにrandom_sampleがないというエラーが出ました、、、
CUDAなどのインストールをやり直したほうがよいのでしょうか,,,


2017年7月18日火曜日 16時12分29秒 UTC+9 Kenta Oono:

KK

unread,
Jul 18, 2017, 4:52:10 AM7/18/17
to Chainer Japanese User Group
cupy.randomのなかにrandom_sampleがあるようでしたのでcupy.random.random_sample(10)を実行したところ


Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/cupy/random/sample.py", line 136, in random_sample
    return rs.random_sample(size=size, dtype=dtype)
  File "/usr/local/lib/python2.7/dist-packages/cupy/random/generator.py", line 152, in random_sample
    func(self._generator, out.data.ptr, out.size)
  File "cupy/cuda/curand.pyx", line 154, in cupy.cuda.curand.generateUniformDouble (cupy/cuda/curand.cpp:2994)
  File "cupy/cuda/curand.pyx", line 157, in cupy.cuda.curand.generateUniformDouble (cupy/cuda/curand.cpp:2896)

  File "cupy/cuda/curand.pyx", line 85, in cupy.cuda.curand.check_status (cupy/cuda/curand.cpp:1437)
cupy.cuda.curand.CURANDError: CURAND_STATUS_LAUNCH_FAILURE

最初に発生したエラーと同様のエラーがでるという状況です。

2017年7月18日火曜日 17時25分46秒 UTC+9 KK:

Kenta Oono

unread,
Jul 20, 2017, 3:08:04 AM7/20/17
to Chainer Japanese User Group
大野です

ご確認いただきありがとうございます。
ご指摘の通り、正しくはcupy.random.random_sampleです。失礼いたしました。

CuPyのインストール時に何かエラーが出ていないかを確認するために、一度CuPyをアンインストールし、以下のコマンドで再インストールしていただけますでしょうか?
$ pip install cupy -vvvv
もしかしたらそれにより問題が解決するかもしれませんので、インストールしたら、再度cupy.random.random_sampleを実行していただけますでしょうか?


2017年7月18日火曜日 17時52分10秒 UTC+9 KK:
Reply all
Reply to author
Forward
0 new messages