Иногда, через некоторое время нормального запуска, я получаю такую ошибку с Theano/CUDA:
RuntimeError: cublasSgemm failed (14) an internal operation failed
unit=0 N=0, c.dims=[512 2048], a.dim=[512 493], alpha=%f, beta=%f, a=%p, b=%p, c=%p sa_0=%d, sa_1=%d, sb_0=%d, sb_1=%d, sc_0=%d, sc_1=%d
Apply node that caused the error: GpuDot22(GpuReshape{2}.0, GpuReshape{2}.0)
Inputs types: [CudaNdarrayType(float32, matrix), CudaNdarrayType(float32, matrix)]
Inputs shapes: [(512, 493), (493, 2048)]
Inputs strides: [(493, 1), (2048, 1)]
Inputs values: ['not shown', 'not shown']
Поскольку мой код некоторое время работает нормально (я занимаюсь обучением нейронной сети, и он работает большую часть времени, и даже когда эта ошибка возникает, он уже работает нормально для> 2000 мини-пакетов), я задаюсь вопросом о причине этого . Может какая-то аппаратная неисправность?
Это с CUDA 6.0 и совсем недавним Theano (вчера из Git), Ubuntu 12.04, GTX 580.
Я также получил ошибку с CUDA 6.5 на K20:
RuntimeError: cublasSgemm failed (14) an internal operation failed
unit=0 N=0, c.dims=[2899 2000], a.dim=[2899 493], alpha=%f, beta=%f, a=%p, b=%p, c=%p sa_0=%d, sa_1=%d, sb_0=%d, sb_1=%d, sc_0=%d, sc_1=%d
Apply node that caused the error: GpuDot22(GpuReshape{2}.0, GpuReshape{2}.0)
Inputs types: [CudaNdarrayType(float32, matrix), CudaNdarrayType(float32, matrix)]
Inputs shapes: [(2899, 493), (493, 2000)]
Inputs strides: [(493, 1), (2000, 1)]
Inputs values: ['not shown', 'not shown']
(Другая ошибка, которую я иногда получал в прошлом, - это это теперь вместо этого. Не уверен, что это связано.)
Через Markus, который получил ту же ошибку:
RuntimeError: cublasSgemm failed (14) an internal operation failed
unit=0 N=0, c.dims=[2 100], a.dim=[2 9919], alpha=%f, beta=%f, a=%p, b=%p, c=%p sa_0=%d, sa_1=%d, sb_0=%d, sb_1=%d, sc_0=%d, sc_1=%d
Apply node that caused the error: GpuDot22(GpuFlatten{2}.0, weight_hidden_)
Inputs types: [CudaNdarrayType(float32, matrix), CudaNdarrayType(float32, matrix)]
Inputs shapes: [(2, 9919), (9919, 100)]
Inputs strides: [(9919, 1), (100, 1)]
Inputs values: ['not shown', 'not shown']
С CUDA 6.5, Windows 8.1, Python 2.7, GTX 970M.
Ошибка возникает только в моей собственной сети, если я запускаю пример LeNet из Theano, он работает нормально. Хотя сеть компилируется и работает нормально на процессоре (а также на графическом процессоре у некоторых коллег, использующих Linux). Кто-нибудь знает, в чем может быть проблема?