Моя CUDA и Theano не работают вместе

Я пытаюсь проверить работоспособность своего GPU, запустив этот код

from theano import function, config, shared, sandbox
import theano.tensor as T
import numpy
import time

vlen = 10 * 30 * 768  # 10 x #cores x # threads per core
iters = 1000

rng = numpy.random.RandomState(22)
x = shared(numpy.asarray(rng.rand(vlen), config.floatX))
f = function([], T.exp(x))
print(f.maker.fgraph.toposort())
t0 = time.time()
for i in range(iters):
    r = f()
t1 = time.time()
print("Looping %d times took %f seconds" % (iters, t1 - t0))
print("Result is %s" % (r,))
if numpy.any([isinstance(x.op, T.Elemwise) for x in f.maker.fgraph.toposort()]):
    print('Used the cpu')
else:
    print('Used the gpu')

Я получил эту ошибку:

mod.cu(941): предупреждение: бессмысленное сравнение целого числа без знака с нулем
mod.cu(3001): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3004): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3006): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3009): предупреждение: преобразование строкового литерала в char * не рекомендуется
mod.cu(3011): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3014): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3017): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3020): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3022): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3025): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3027): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3030): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3032): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3035): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3038): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3041): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3043): предупреждение: преобразование строкового литерала в char * не рекомендуется
mod.cu(3046): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3048): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3051): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(941): предупреждение: бессмысленное сравнение целого числа без знака с нулем
mod.cu(3001): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3004): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3006): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3009): предупреждение: преобразование строкового литерала в char * не рекомендуется
mod.cu(3011): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3014): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3017): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3020): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3022): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3025): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3027): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3030): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3032): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3035): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3038): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3041): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3043): предупреждение: преобразование строкового литерала в char * не рекомендуется
mod.cu(3046): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3048): предупреждение: преобразование строкового литерала в "char *" не рекомендуется
mod.cu(3051): предупреждение: преобразование строкового литерала в "char " не рекомендуется
/usr/include/string.h: В функции 'void __mempcpy_inline (void *, const void *, size_t)':
/usr/include/string.h:652:42: ошибка: 'memcpy' не был объявлен в этой области
return (символ ) memcpy (__dest, __src, __n) + __n;
^
mod.cu: В функции 'PyObject CudaNdarray_Reshape (CudaNdarray *, PyObject *)':

mod.cu:955:122: предупреждение: формат "%lld" ожидает аргумент типа "long long int", но аргумент 3 имеет тип "size_t {aka long unsigned int} '[-Wformat =]
PyErr_Format (PyExc_ValueError, "размер должен оставаться неизменным, изменен с%lld на%lld", CudaNdarray_SIZE (self), rval_size);
^
['nvcc', '-shared', '-O3', '-m64', '-Xcompiler', '-DCUDA_NDARRAY_CUH = c72d035fdf91890f3b36710688069b2e, -DNPY_NO_DEPRECATED_API = NPY_visible -er_F_I_F_I_F_I_S_F_I_F_I_F_I_F_I_F_I_F_D_R_S_I_F_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_5_7_5_7 '-rpath, / home / rkenaya/.theano/compiledir_Linux-4.4 -generic-x86_64-with-Ubuntu-16.04-xenial-x86_64-2.7.12-64/cuda_ndarray', '-I/usr/local/lib/python2.7/dist-packages/theano/sandbox/cuda', '-I/usr/local/lib/python2.7/dist-packages/numpy/core/include', '-I/usr/include/python2.7', '-I/usr/local/lib/python2.7/dist-packages/theano/gof', '-o', '/home/rkenaya/.theano/compiledir_Linux-4.4--generic-x86_64-with-Ubuntu-16.04-xenial-x86_64-2.7.12-64/cuda_ndarray/cuda_ndarray.so', 'mod.cu', '-L/usr/lib', '-lcublas', '-lpython2.7', '-lcudart'] mod.cu:955:122: предупреждение: формат'%lld 'ожидает аргумент типа' long long int ', но аргумент 4 имеет тип' size_t {aka long unsigned int} '[-Wformat=] ERROR (theano.sandbox.cuda): не удалось скомпилировать cuda_ndarray.cu: ('nvcc return status', 1, 'для cmd', 'nvcc -shared -O3 -m64 -Xcompiler -DCUDA_NDARRAY_CUH=c72d035fdf91890f3b36710688069b2e,-DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION,-fPIC,-fvisibility= скрытый -Xlinker -rp-файл, 2.7.12-64 / cuda_ndarray -I / usr / local / lib / python2.7 / dist-packages / theano / песочница / cuda -I / usr / local / lib / python2.7 / dist-packages / numpy / core / include -I / usr / include / python2.7 -I / usr / local / lib / python2.7 / dist-packages / theano / gof -o /home/rkenaya/.theano/compiledir_Linux-4.4--generic-x86_64- with-Ubuntu-16.04-xenial-x86_64-2.7.12-64 / cuda_ndarray /cuda_ndarray.so mod.cu -L/usr/lib -lcublas -lpython2.7 -lcudart')
ВНИМАНИЕ (theano.sandbox.cuda): CUDA установлен, но gpu устройства недоступен (ошибка: cuda недоступен)
[Elemwise {ехр,no_inplace}()]
Цикл 1000 раз занял 4,233657 секунды
Результат [ 1.23178029 1.61879337 1.52278066 ..., 2.20771813 2.29967761 1.62323284]
Использовал процессор

0 ответов

Другие вопросы по тегам