Tensorflow: تعطل: تعذر إنشاء مقبض cuDNN عند استخدام convnets

تم إنشاؤها على ٦ يناير ٢٠١٧  ·  145تعليقات  ·  مصدر: tensorflow/tensorflow

تم استيراد Tensorflow (GPU) بنجاح ، ولكن عند تشغيل جلسة تتضمن شبكة عصبية تلافيفية (CNN) ، تتعطل Python بالرسالة التالية:

E tensorflow/stream_executor/cuda/cuda_dnn.cc:385] could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
E tensorflow/stream_executor/cuda/cuda_dnn.cc:352] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
F tensorflow/core/kernels/conv_ops.cc:605] Check failed: stream->parent()->GetConvolveAlgorithms(&algorithms)

تستمر المشكلة في أي مجموعة من مجموعة أدوات CUDA 7.5 / 8.0 و Tensorflow مثبتة من نقطة / مصدر. يتم تشغيل جلسات الاختبار التي لا تستخدم شبكات CNN بنجاح.

ما هي مشكلات GitHub ذات الصلة أو سلاسل StackOverflow التي عثرت عليها من خلال البحث في الويب عن مشكلتك؟

تشبه المشكلة https://github.com/tensorflow/tensorflow/issues/6586 ، حيث علّقت لأول مرة. ولكن نظرًا لأنني واجهت المشكلة على جهاز Mac ، فقد تم اقتراح فتح مشكلة منفصلة.

معلومات البيئة

نظام التشغيل: macOS Sierra 10.12.2
الإصدار 8.2 (8C38) من Xcode (عندما جربت لاحقًا CUDA 7.5 ، قمت بتثبيت الإصدار 7.3.1 من أدوات سطر الأوامر لأن CUDA 7.5 تفتقر إلى دعم المترجمين الأحدث.)
Python 3.5.2 (أناكوندا)

الإصدار المثبت من CUDA: جرب كلاً من 8.0 (في البداية) و 7.5 (تم الإبلاغ عنه هنا ، مجموعة الأدوات فقط - لا يزال برنامج التشغيل 8.0)
الإصدار المثبت من cuDNN: 5.1 (عمليات تثبيت مختلفة وفقًا لإصدارات CUDA)
(يرجى إرفاق ناتج ls -l /path/to/cuda/lib/libcud* ):

lrwxr-xr-x  1 root   wheel        33  5 Jan 20:33 /usr/local/cuda/lib/libcuda.1.dylib -> /usr/local/cuda/lib/libcuda.dylib
-rwxr-xr-x@ 1 root   wheel      8280 13 Apr  2016 /usr/local/cuda/lib/libcuda.dylib
lrwxr-xr-x@ 1 root   wheel        45 13 Apr  2016 /usr/local/cuda/lib/libcudadevrt.a -> /Developer/NVIDIA/CUDA-7.5/lib/libcudadevrt.a
lrwxr-xr-x@ 1 root   wheel        50 13 Apr  2016 /usr/local/cuda/lib/libcudart.7.5.dylib -> /Developer/NVIDIA/CUDA-7.5/lib/libcudart.7.5.dylib
lrwxr-xr-x@ 1 root   wheel        46 13 Apr  2016 /usr/local/cuda/lib/libcudart.dylib -> /Developer/NVIDIA/CUDA-7.5/lib/libcudart.dylib
lrwxr-xr-x@ 1 root   wheel        49 13 Apr  2016 /usr/local/cuda/lib/libcudart_static.a -> /Developer/NVIDIA/CUDA-7.5/lib/libcudart_static.a
lrwxr-xr-x  1 root   wheel        16  5 Jan 17:14 /usr/local/cuda/lib/libcudnn.5 -> libcudnn.5.dylib
-rwxr-xr-x@ 1 ymfa   staff  58975112 10 Jun  2016 /usr/local/cuda/lib/libcudnn.5.dylib
lrwxr-xr-x@ 1 ymfa   staff        16 10 Jun  2016 /usr/local/cuda/lib/libcudnn.dylib -> libcudnn.5.dylib
lrwxr-xr-x  1 root   wheel        16  5 Jan 17:14 /usr/local/cuda/lib/libcudnn5.dylib -> libcudnn.5.dylib
-rw-r--r--@ 1 ymfa   staff  56392320 10 Jun  2016 /usr/local/cuda/lib/libcudnn_static.a

حاولت التثبيت من النقطة والمصدر. قمت بالتثبيت لأول مرة من حزمة النقطة الثنائية:

  1. رابط لحزمة النقطة التي قمت بتثبيتها:
    tensorflow-gpu
  2. الناتج من python -c "import tensorflow; print(tensorflow.__version__)" .
    0.12.head

لاحقًا قمت بالتثبيت من المصدر (تم إلغاء تثبيت حزمة النقطة):

  1. تجزئة الالتزام ( git rev-parse HEAD )
    d67c09d98a576e1fbf2f3609ddb842e53890f31c
  2. ناتج bazel version

    ملصق البناء: 0.4.3-homebrew
    هدف البناء: bazel-out / local-opt / bin / src / main / java / com / google / devtools / build / lib / bazel / BazelServer_deploy.jar
    وقت البناء: الخميس 22 ديسمبر 15:20:15 2016 (1482420015)
    الطابع الزمني للبناء: 1482420015
    بناء الطابع الزمني على النحو الدولي: 1482420015

إذا كان ذلك ممكنًا ، قدِّم مثالًا بسيطًا يمكن استنساخه

لقد قدمت مثالًا بسيطًا عن طريق تبسيط الشبكة وتقليل بيانات التدريب إلى عشرين صورة فقط وفصلين للتصنيف. يحتوي issue.zip على كود Python والبيانات. لقد كتبت طبقتين تلافيفيتين لأنني وجدت أن الشبكة ذات طبقة تلافيفية واحدة تعمل بدون مشكلة.

سجل كامل باستخدام CUDA 7.5 و Tensorflow المترجمة من المصدر

I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcublas.7.5.dylib locally
I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcudnn.5.dylib locally
I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcufft.7.5.dylib locally
I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcuda.1.dylib locally
I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcurand.7.5.dylib locally
W tensorflow/core/platform/cpu_feature_guard.cc:95] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
W tensorflow/core/platform/cpu_feature_guard.cc:95] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
W tensorflow/core/platform/cpu_feature_guard.cc:95] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:874] OS X does not support NUMA - returning NUMA node zero
I tensorflow/core/common_runtime/gpu/gpu_device.cc:885] Found device 0 with properties: 
name: GeForce GT 650M
major: 3 minor: 0 memoryClockRate (GHz) 0.9
pciBusID 0000:01:00.0
Total memory: 1023.69MiB
Free memory: 740.18MiB
I tensorflow/core/common_runtime/gpu/gpu_device.cc:906] DMA: 0 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:916] 0:   Y 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:975] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GT 650M, pci bus id: 0000:01:00.0)
E tensorflow/stream_executor/cuda/cuda_dnn.cc:385] could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
E tensorflow/stream_executor/cuda/cuda_dnn.cc:352] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
F tensorflow/core/kernels/conv_ops.cc:605] Check failed: stream->parent()->GetConvolveAlgorithms(&algorithms)

سجل كامل باستخدام CUDA 8.0 و Tensorflow المثبت من النقطة

I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcublas.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcudnn.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcufft.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcuda.1.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcurand.dylib locally
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:901] OS X does not support NUMA - returning NUMA node zero
I tensorflow/core/common_runtime/gpu/gpu_device.cc:885] Found device 0 with properties: 
name: GeForce GT 650M
major: 3 minor: 0 memoryClockRate (GHz) 0.9
pciBusID 0000:01:00.0
Total memory: 1023.69MiB
Free memory: 590.00MiB
I tensorflow/core/common_runtime/gpu/gpu_device.cc:906] DMA: 0 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:916] 0: Y 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:975] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GT 650M, pci bus id: 0000:01:00.0)
E tensorflow/stream_executor/cuda/cuda_dnn.cc:385] could not create cudnn handle: CUDNN_STATUS_NOT_INITIALIZED
E tensorflow/stream_executor/cuda/cuda_dnn.cc:392] error retrieving driver version: Invalid argument: expected %d.%d or %d.%d.%d form for driver version; got ""
E tensorflow/stream_executor/cuda/cuda_dnn.cc:352] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
F tensorflow/core/kernels/conv_ops.cc:532] Check failed: stream->parent()->GetConvolveAlgorithms(&algorithms)
awaiting tensorflower builinstall

التعليق الأكثر فائدة

إليك المزيد من المعلومات حول كيفية حلها مؤقتًا. أعتقد أن هذه المشكلات كلها مرتبطة بتخصيص ذاكرة وحدة معالجة الرسومات وليس لها علاقة بالأخطاء التي يتم الإبلاغ عنها. كانت هناك أخطاء أخرى قبل هذا تشير إلى نوع من مشكلة تخصيص الذاكرة ولكن البرنامج استمر في التقدم ، وفي النهاية أعطى أخطاء cudnn التي يحصل عليها الجميع. السبب في اعتقادي أنه يعمل في بعض الأحيان هو أنه إذا كنت تستخدم وحدة معالجة الرسومات لأشياء أخرى إلى جانب Tensorflow مثل الشاشة الأساسية ، فإن الذاكرة المتاحة تتقلب. في بعض الأحيان يمكنك تخصيص ما تحتاجه وفي أحيان أخرى لا يمكنك ذلك.

من API
https://www.tensorflow.org/versions/r0.12/how_tos/using_gpu/
"بشكل افتراضي ، يقوم TensorFlow بتعيين كل ذاكرة GPU تقريبًا لجميع وحدات معالجة الرسومات (تخضع لـ CUDA_VISIBLE_DEVICES) المرئية للعملية. ويتم ذلك لاستخدام موارد ذاكرة GPU الثمينة نسبيًا بكفاءة أكبر على الأجهزة عن طريق تقليل تجزئة الذاكرة."

أعتقد أن هذا التخصيص الافتراضي قد تم كسره بطريقة ما تؤدي إلى هذا السلوك غير المنتظم وبعض المواقف للعمل وإخفاق البعض الآخر.

لقد قمت بحل هذه المشكلة عن طريق تغيير السلوك الافتراضي لـ TF لتخصيص الحد الأدنى من الذاكرة والنمو حسب الحاجة كما هو مفصل في صفحة الويب.
التكوين = tf.ConfigProto ()
config.gpu_options.allow_growth = صحيح
جلسة = tf.Session (config = config، ...)

لقد جربت أيضًا الطريقة البديلة وتمكنت من تشغيلها وفشلت في اختيار النسبة المئوية التي نجحت بشكل تجريبي. في حالتي ، انتهى الأمر بحوالي 0.7.

التكوين = tf.ConfigProto ()
config.gpu_options.per_process_gpu_memory_fraction = 0.4
جلسة = tf.Session (config = config، ...)

لا توجد حتى الآن أي كلمة من أي شخص في فريق TF يؤكد ذلك ، لكن الأمر يستحق التجربة لمعرفة ما إذا كان بإمكان الآخرين تأكيد سلوك مماثل.

ال 145 كومينتر

I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcurand.so locally
I tensorflow/core/common_runtime/gpu/gpu_device.cc:885] Found device 0 with properties:
name: GeForce GTX 1080
major: 6 minor: 1 memoryClockRate (GHz) 1.835
pciBusID 0000:02:00.0
Total memory: 7.92GiB
Free memory: 3.76GiB
I tensorflow/core/common_runtime/gpu/gpu_device.cc:906] DMA: 0
I tensorflow/core/common_runtime/gpu/gpu_device.cc:916] 0:   Y
I tensorflow/core/common_runtime/gpu/gpu_device.cc:975] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 1080, pci bus id: 0000:02:00.0)
E tensorflow/stream_executor/cuda/cuda_dnn.cc:385] could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
E tensorflow/stream_executor/cuda/cuda_dnn.cc:352] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
F tensorflow/core/kernels/conv_ops.cc:532] Check failed: stream->parent()->GetConvolveAlgorithms(&algorithms)

لقد قابلت نفس المشكلة تمامًا كما فعلت مع CUDA8 و TF r0.12.1.

EncodeTS لقد قمت للتو بإضافة مثال

يمكنني أن أؤكد أن ymfa الحد الأدنى من المثال فشل على MacOS NVidia 750 ، ولكن نفس المثال يعمل أيضًا على Linux / Titan X

المثال الأدنى يعمل على Ubuntu الخاص بي. يبدو أن احتمالية حدوث المشكلة التي واجهتها منخفضة جدًا على جهاز الكمبيوتر الخاص بي.

أواجه نفس المشكلة. سيعمل الرسم البياني بشكل جيد عند إجباره على وحدة المعالجة المركزية ، لكنه يتعطل على وحدة المعالجة المركزية.

بيئة

نظام التشغيل: macOS 10.12.2
وحدة معالجة الرسومات: GeForce GT 750M
TF: 0.12.1 (تثبيت نقطة)
بايثون: 3.6.0
كودا: 8.0
cuDNN: 5.1

(ناتج ls -l /path/to/cuda/lib/libcud* ):

lrwxr-xr-x  1 root  wheel     33 Dec 14 14:25 /usr/local/cuda/lib/libcuda.1.dylib -> /usr/local/cuda/lib/libcuda.dylib
-rwxr-xr-x  1 root  wheel  13504 Dec  2 16:48 /usr/local/cuda/lib/libcuda.dylib
lrwxr-xr-x  1 root  wheel     45 Nov  3 11:40 /usr/local/cuda/lib/libcudadevrt.a -> /Developer/NVIDIA/CUDA-8.0/lib/libcudadevrt.a
lrwxr-xr-x  1 root  wheel     50 Nov  3 11:40 /usr/local/cuda/lib/libcudart.8.0.dylib -> /Developer/NVIDIA/CUDA-8.0/lib/libcudart.8.0.dylib
lrwxr-xr-x  1 root  wheel     46 Nov  3 11:40 /usr/local/cuda/lib/libcudart.dylib -> /Developer/NVIDIA/CUDA-8.0/lib/libcudart.dylib
lrwxr-xr-x  1 root  wheel     49 Nov  3 11:40 /usr/local/cuda/lib/libcudart_static.a -> /Developer/NVIDIA/CUDA-8.0/lib/libcudart_static.a
lrwxr-xr-x  1 root  wheel     47 Dec 14 10:21 /usr/local/cuda/lib/libcudnn.5.dylib -> /Developer/NVIDIA/CUDA-8.0/lib/libcudnn.5.dylib
lrwxr-xr-x  1 root  wheel     45 Dec 14 10:21 /usr/local/cuda/lib/libcudnn.dylib -> /Developer/NVIDIA/CUDA-8.0/lib/libcudnn.dylib
lrwxr-xr-x  1 root  wheel     48 Dec 14 10:21 /usr/local/cuda/lib/libcudnn_static.a -> /Developer/NVIDIA/CUDA-8.0/lib/libcudnn_static.a

مثال

المثال الأدنى الذي قدمته ymfa كلاهما يفشل وينجح في الإعداد الخاص بي. فيما يلي ثلاث نواتج تم إنتاجها.
فشل (1)

I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcublas.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcudnn.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcufft.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcuda.1.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcurand.dylib locally
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:901] OS X does not support NUMA - returning NUMA node zero
I tensorflow/core/common_runtime/gpu/gpu_device.cc:885] Found device 0 with properties: 
name: GeForce GT 750M
major: 3 minor: 0 memoryClockRate (GHz) 0.9255
pciBusID 0000:01:00.0
Total memory: 2.00GiB
Free memory: 1.76GiB
I tensorflow/core/common_runtime/gpu/gpu_device.cc:906] DMA: 0 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:916] 0:   Y 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:975] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GT 750M, pci bus id: 0000:01:00.0)
Training...
E tensorflow/stream_executor/cuda/cuda_dnn.cc:385] could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
E tensorflow/stream_executor/cuda/cuda_dnn.cc:352] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
F tensorflow/core/kernels/conv_ops.cc:532] Check failed: stream->parent()->GetConvolveAlgorithms(&algorithms) 
Abort trap: 6

فشل (2)

I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcublas.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcudnn.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcufft.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcuda.1.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcurand.dylib locally
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:901] OS X does not support NUMA - returning NUMA node zero
I tensorflow/core/common_runtime/gpu/gpu_device.cc:885] Found device 0 with properties: 
name: GeForce GT 750M
major: 3 minor: 0 memoryClockRate (GHz) 0.9255
pciBusID 0000:01:00.0
Total memory: 2.00GiB
Free memory: 1.53GiB
I tensorflow/core/common_runtime/gpu/gpu_device.cc:906] DMA: 0 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:916] 0:   Y 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:975] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GT 750M, pci bus id: 0000:01:00.0)
Training...
E tensorflow/stream_executor/cuda/cuda_blas.cc:372] failed to create cublas handle: CUBLAS_STATUS_NOT_INITIALIZED
W tensorflow/stream_executor/stream.cc:1390] attempting to perform BLAS operation using StreamExecutor without BLAS support
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/tensorflow/python/client/session.py", line 1021, in _do_call
    return fn(*args)
  File "/usr/local/lib/python3.6/site-packages/tensorflow/python/client/session.py", line 1003, in _run_fn
    status, run_metadata)
  File "/usr/local/Cellar/python3/3.6.0/Frameworks/Python.framework/Versions/3.6/lib/python3.6/contextlib.py", line 89, in __exit__
    next(self.gen)
  File "/usr/local/lib/python3.6/site-packages/tensorflow/python/framework/errors_impl.py", line 469, in raise_exception_on_not_ok_status
    pywrap_tensorflow.TF_GetCode(status))
tensorflow.python.framework.errors_impl.InternalError: Blas SGEMM launch failed : a.shape=(20, 400), b.shape=(400, 2), m=20, n=2, k=400
     [[Node: MatMul = MatMul[T=DT_FLOAT, transpose_a=false, transpose_b=false, _device="/job:localhost/replica:0/task:0/gpu:0"](Flatten/Reshape, Variable_4/read)]]

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "issue.py", line 52, in <module>
    sess.run(training_operation, feed_dict={x: X, y: Y})
  File "/usr/local/lib/python3.6/site-packages/tensorflow/python/client/session.py", line 766, in run
    run_metadata_ptr)
  File "/usr/local/lib/python3.6/site-packages/tensorflow/python/client/session.py", line 964, in _run
    feed_dict_string, options, run_metadata)
  File "/usr/local/lib/python3.6/site-packages/tensorflow/python/client/session.py", line 1014, in _do_run
    target_list, options, run_metadata)
  File "/usr/local/lib/python3.6/site-packages/tensorflow/python/client/session.py", line 1034, in _do_call
    raise type(e)(node_def, op, message)
tensorflow.python.framework.errors_impl.InternalError: Blas SGEMM launch failed : a.shape=(20, 400), b.shape=(400, 2), m=20, n=2, k=400
     [[Node: MatMul = MatMul[T=DT_FLOAT, transpose_a=false, transpose_b=false, _device="/job:localhost/replica:0/task:0/gpu:0"](Flatten/Reshape, Variable_4/read)]]

Caused by op 'MatMul', defined at:
  File "issue.py", line 43, in <module>
    logits = SimpleNet(x)
  File "issue.py", line 34, in SimpleNet
    logits = tf.matmul(fc1, fc1_W) + fc1_b
  File "/usr/local/lib/python3.6/site-packages/tensorflow/python/ops/math_ops.py", line 1729, in matmul
    a, b, transpose_a=transpose_a, transpose_b=transpose_b, name=name)
  File "/usr/local/lib/python3.6/site-packages/tensorflow/python/ops/gen_math_ops.py", line 1442, in _mat_mul
    transpose_b=transpose_b, name=name)
  File "/usr/local/lib/python3.6/site-packages/tensorflow/python/framework/op_def_library.py", line 759, in apply_op
    op_def=op_def)
  File "/usr/local/lib/python3.6/site-packages/tensorflow/python/framework/ops.py", line 2240, in create_op
    original_op=self._default_original_op, op_def=op_def)
  File "/usr/local/lib/python3.6/site-packages/tensorflow/python/framework/ops.py", line 1128, in __init__
    self._traceback = _extract_stack()

InternalError (see above for traceback): Blas SGEMM launch failed : a.shape=(20, 400), b.shape=(400, 2), m=20, n=2, k=400
     [[Node: MatMul = MatMul[T=DT_FLOAT, transpose_a=false, transpose_b=false, _device="/job:localhost/replica:0/task:0/gpu:0"](Flatten/Reshape, Variable_4/read)]]

يمر

I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcublas.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcudnn.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcufft.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcuda.1.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcurand.dylib locally
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:901] OS X does not support NUMA - returning NUMA node zero
I tensorflow/core/common_runtime/gpu/gpu_device.cc:885] Found device 0 with properties: 
name: GeForce GT 750M
major: 3 minor: 0 memoryClockRate (GHz) 0.9255
pciBusID 0000:01:00.0
Total memory: 2.00GiB
Free memory: 1.71GiB
I tensorflow/core/common_runtime/gpu/gpu_device.cc:906] DMA: 0 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:916] 0:   Y 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:975] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GT 750M, pci bus id: 0000:01:00.0)
Training...
Training complete!

الإغلاق التلقائي بسبب نقص النشاط الأخير. يُرجى تحديث المشكلة عند توفر معلومات جديدة ، وسنعيد فتح المشكلة. شكرا!

ليس بهذه السرعة ، أرى هذا الانهيار أيضًا. ماك بوك برو ، جيفورسي 650. تي اف v1.0 يعمل عبر نواة jupyter ، والتي يجب علي إعادة تشغيلها بشكل متكرر. ربما تكون بطاقة الرسومات هذه ضعيفة للغاية؟ رؤية كيف يستخدم المرجع نفس البطاقة: على الأرجح.

I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcublas.8.0.dylib locally
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcudnn.5.dylib locally
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcufft.8.0.dylib locally
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcuda.1.dylib locally
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcurand.8.0.dylib locally
...
I tensorflow/core/common_runtime/gpu/gpu_device.cc:885] Found device 0 with properties: 
name: GeForce GT 650M
major: 3 minor: 0 memoryClockRate (GHz) 0.9
pciBusID 0000:01:00.0
Total memory: 1023.69MiB
Free memory: 870.46MiB
I tensorflow/core/common_runtime/gpu/gpu_device.cc:906] DMA: 0 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:916] 0:   Y 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:975] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GT 650M, pci bus id: 0000:01:00.0)
E tensorflow/stream_executor/cuda/cuda_dnn.cc:397] could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
E tensorflow/stream_executor/cuda/cuda_dnn.cc:364] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
F tensorflow/core/kernels/conv_ops.cc:605] Check failed: stream->parent()->GetConvolveAlgorithms(&algorithms) 

لدي نفس المشكلة مع GTX 960m و cudnn5.1.5 و cuda-8.0.44.

لديك نفس المشكلة مع CentOS ، titan X.

لديك نفس المشكلة مع Ubuntu (14.04) و GRID K520 (aws g2.2)

لديك نفس المشكلة windows 10 cudnn 5.1 cuda 8 gtx 1060. يعمل البرنامج على نسخة وحدة المعالجة المركزية من Tensor flow ولكن تحصل على نفس الأخطاء مع إصدار gpu.

لدي نفس المشكلة مع gtx1060 ، win8.1 ، cuda8.0.60 ، cudnn5.0. تمت الترقية إلى أحدث إصدار ثابت من tensorflow-gpu ليلاً (حاليًا http://ci.tensorflow.org/job/nightly-win/133/) و cudnn5.1. تم حل المشكلة.

نفس المشكلة هنا.

كنت أواجه هذه المشكلة مع إصدارات البرامج المدرجة أدناه ، باستثناء TF كان الإصدار 1.0.0. ثم قمت بالترقية إلى TF 1.0.1. ركضت نفس البرنامج مرة واحدة وأنه يعمل. ثم قمت بتشغيله مرة أخرى ولم ينجح - لقد نتج عن نفس الخطأ كما كان من قبل.

Tensorflow-GPU 1.0.1.0 تحديث
نظام التشغيل Mac OS X 10.12.3
كودا 8.0.61
CuDNN 5.1.0 تحديث
GeForce GT 750M

تواجه نفس المشكلة مع gtx650 و ubuntu 16.04 و CUDA الإصدار 8.0.61 و TF الإصدار 1.0.0
كان يعمل الآن ، ولكنه يعطي بعض التحذيرات المتعلقة بضعف الذاكرة. ومع ذلك ، كان يعمل
الآن لا يعمل على الإطلاق ، أعطاني نفس فشل التحقق: تيار-> الأصل () -> GetConvolveAlgorithms (& algorithms) خطأ

تواجه نفس المشكلة مع gtx 1080 ti و windows 10 و CUDA الإصدار 8.0.61 و TF إصدار 1.0.1 و 5.1 Cudann و cuda 8.0.61

تمكنت من تشغيل برنامج عن طريق الحد من استخدام وحدة معالجة الرسومات. في حالتي مع 3 جيجابايت gtx 1060 على ubuntu 16.04 ، إذا قمت بتعيين خيار gpu per_process_gpu_memory_fraction على .7 فإنه يعمل. أي شيء أعلى ، أحصل على هذه الأخطاء

E tensorflow / stream_executor / cuda / cuda_dnn.cc: 397] تعذر إنشاء مقبض cudnn: CUDNN_STATUS_INTERNAL_ERROR
E tensorflow / stream_executor / cuda / cuda_dnn.cc: 364] تعذر تدمير مقبض cudnn: CUDNN_STATUS_BAD_PARAM
F tensorflow / core / kernels / conv_ops.cc: 605] فشل التحقق: تيار-> الأصل () -> GetConvolveAlgorithms (& algorithms)

يمكن أن تكون حالة الإبلاغ عن خطأ سيئ بواسطة Tensorflow. يبدو غير مرتبط على الإطلاق. ربما هو دليل على حل هذا بطريقة أفضل؟

@ zheng-xq هل هناك مشكلة إعداد واضحة؟

نفس المشكلة أيضا. أنا على Windows 10 و GTX1070 و CUDA 8.0 و cuDNN 5.1.

E c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ stream_executor \ cuda \ cuda_dnn.cc: 359] تعذر إنشاء مقبض cudnn: CUDNN_STATUS_NOT_INITIALIZED
E c: \ tf_jenkins \ home \ workspace \ Release-win \ device \ gpu \ os \ windows \ tensorflow \ stream_executor \ cuda \ cuda_dnn.cc: 366] خطأ في استرداد إصدار برنامج التشغيل: غير مُنفَّذ: أبلغت kernel عن إصدار برنامج التشغيل غير مطبق على Windows
E c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ stream_executor \ cuda \ cuda_dnn.cc: 326] تعذر إتلاف مقبض cudnn: CUDNN_STATUS_BAD_PARAM
F c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ core \ kernels \ conv_ops.cc: 659] فشل التحقق: stream-> الأصل () -> GetConvolveAlgorithms (& algorithms)

إذا كان ذلك يساعد أي شخص ، فيبدو أن هناك أحيانًا عمليات غيبوبة متبقية تمنع tf من البدء مرة أخرى بشكل صحيح وأعطتني هذا الخطأ. قتلهم والعمل على حل هذه القضية.

إليك المزيد من المعلومات حول كيفية حلها مؤقتًا. أعتقد أن هذه المشكلات كلها مرتبطة بتخصيص ذاكرة وحدة معالجة الرسومات وليس لها علاقة بالأخطاء التي يتم الإبلاغ عنها. كانت هناك أخطاء أخرى قبل هذا تشير إلى نوع من مشكلة تخصيص الذاكرة ولكن البرنامج استمر في التقدم ، وفي النهاية أعطى أخطاء cudnn التي يحصل عليها الجميع. السبب في اعتقادي أنه يعمل في بعض الأحيان هو أنه إذا كنت تستخدم وحدة معالجة الرسومات لأشياء أخرى إلى جانب Tensorflow مثل الشاشة الأساسية ، فإن الذاكرة المتاحة تتقلب. في بعض الأحيان يمكنك تخصيص ما تحتاجه وفي أحيان أخرى لا يمكنك ذلك.

من API
https://www.tensorflow.org/versions/r0.12/how_tos/using_gpu/
"بشكل افتراضي ، يقوم TensorFlow بتعيين كل ذاكرة GPU تقريبًا لجميع وحدات معالجة الرسومات (تخضع لـ CUDA_VISIBLE_DEVICES) المرئية للعملية. ويتم ذلك لاستخدام موارد ذاكرة GPU الثمينة نسبيًا بكفاءة أكبر على الأجهزة عن طريق تقليل تجزئة الذاكرة."

أعتقد أن هذا التخصيص الافتراضي قد تم كسره بطريقة ما تؤدي إلى هذا السلوك غير المنتظم وبعض المواقف للعمل وإخفاق البعض الآخر.

لقد قمت بحل هذه المشكلة عن طريق تغيير السلوك الافتراضي لـ TF لتخصيص الحد الأدنى من الذاكرة والنمو حسب الحاجة كما هو مفصل في صفحة الويب.
التكوين = tf.ConfigProto ()
config.gpu_options.allow_growth = صحيح
جلسة = tf.Session (config = config، ...)

لقد جربت أيضًا الطريقة البديلة وتمكنت من تشغيلها وفشلت في اختيار النسبة المئوية التي نجحت بشكل تجريبي. في حالتي ، انتهى الأمر بحوالي 0.7.

التكوين = tf.ConfigProto ()
config.gpu_options.per_process_gpu_memory_fraction = 0.4
جلسة = tf.Session (config = config، ...)

لا توجد حتى الآن أي كلمة من أي شخص في فريق TF يؤكد ذلك ، لكن الأمر يستحق التجربة لمعرفة ما إذا كان بإمكان الآخرين تأكيد سلوك مماثل.

أتلقى أيضًا الخطأ CUDNN_STATUS_NOT_INITIALIZED . هذا هو سجل الأخطاء الكامل:

2017-04-26 00:08:57.526234: I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\gpu\gpu_device.cc:977] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 1080, pci bus id: 0000:01:00.0)
2017-04-26 00:09:01.111706: E c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_dnn.cc:359] could not create cudnn handle: CUDNN_STATUS_NOT_INITIALIZED
2017-04-26 00:09:01.111805: E c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_dnn.cc:366] error retrieving driver version: Unimplemented: kernel reported driver version not implemented on Windows
2017-04-26 00:09:01.114040: E c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_dnn.cc:326] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
2017-04-26 00:09:01.114232: F c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\kernels\conv_ops.cc:659] Check failed: stream->parent()->GetConvolveAlgorithms(&algorithms)

أنا على Windows 10 ، CUDA 8.0 ، cuDNN 5.1. هل يمكن عمل أي شيء لتجنب ذلك؟ تمكنت من إجراء بعض اختبارات tensorflow الأخرى في وقت سابق وقد عملت بشكل جيد (بما في ذلك عملية التحويل) ، لكنها الآن لا تعمل في هذا الاختبار الجديد ...

@ serans1 ما هي عمليات الزومبي التي تشير إليها؟

يرجى إعلامي إذا كان هناك حل بديل لذلك. شكرا لك!

تحرير قد يكون هذا خطأ مبتدئًا ، لكنني سأذكره هنا فقط ، في حالة تشغيل شخص آخر في نفس المشكلة:
كانت مشكلتي أنني قمت بالفعل بتشغيل مثيل من Jupyter Python Notebook (تم تشغيل جميع خلاياها بالفعل ، وبالتالي تم تحميلها في الذاكرة) ، وكذلك بعض العمليات الأخرى التي كانت تستهلك ذاكرة GPU (لعبة فيديو مصغرة). لذلك ، عندما تحققت من استخدام الذاكرة على وحدة معالجة الرسومات الخاصة بي ، كان بالفعل حوالي 4 جيجابايت (50 +٪). لقد أغلقت Jupyter Notebook والتطبيق الآخر ، وأعدت تشغيل اختبار tensorflow الخاص بي. الآن كل شيء يسير بسلاسة :) أيضًا ، أثناء التشغيل ، لاحظت أنه يستخدم في الذروة ما يصل إلى 90 ٪ من ذاكرة GPU الخاصة بي ، وبالتالي فمن المنطقي سبب عدم تمكنه من تهيئة CUDNN عندما كان أقل من 50 ٪ متاحًا في موقفي الأولي .

آسف مرة أخرى لخطئي! أنا فقط في بداية اللعب بهذا :)

نفس المشكلة هل يوجد حل لها؟

I c: \ tf_jenkins \ home \ workspace \ Release-win \ device \ gpu \ os \ windows \ tensorflow \ core \ common_runtime \ gpu \ gpu_device.cc: 885] تم العثور على الجهاز 0 مع الخصائص:
الاسم: GeForce GTX 960M
رئيسي: 5 ثانوي: 0 memoryClockRate (جيجاهرتز) 1.176
معرف PCiBus 0000: 01: 00.0
إجمالي الذاكرة: 4.00 جيجا بايت
الذاكرة المجانية: 3.35 جيجا بايت
I c: \ tf_jenkins \ home \ workspace \ Release-win \ device \ gpu \ os \ windows \ tensorflow \ core \ common_runtime \ gpu \ gpu_device.cc: 906] DMA: 0
I c: \ tf_jenkins \ home \ workspace \ Release-win \ device \ gpu \ os \ windows \ tensorflow \ core \ common_runtime \ gpu \ gpu_device.cc: 916] 0: Y
I c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ core \ common_runtime \ gpu \ gpu_device.cc: 975] إنشاء جهاز TensorFlow (/ gpu: 0) -> (الجهاز: 0 ، الاسم: GeForce GTX 960M ، معرف ناقل PCI: 0000: 01: 00.0)
E c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ core \ common_runtime \ gpu \ gpu_device.cc: 586] تعذر تحديد NUMA node of / job: localhost / replica: 0 / مهمة: 0 / gpu: 0 ، الافتراضي إلى 0. ربما لم يتم بناء النواة الخاصة بك بدعم NUMA.
E c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ stream_executor \ cuda \ cuda_dnn.cc: 385] تعذر إنشاء مقبض cudnn: CUDNN_STATUS_NOT_INITIALIZED
E c: \ tf_jenkins \ home \ workspace \ Release-win \ device \ gpu \ os \ windows \ tensorflow \ stream_executor \ cuda \ cuda_dnn.cc: 392] خطأ في استرداد إصدار برنامج التشغيل: تم رفض الإذن: تعذر فتح مسار إصدار برنامج التشغيل للقراءة : / proc / driver / nvidia / version
E c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ stream_executor \ cuda \ cuda_dnn.cc: 352] تعذر إتلاف مقبض cudnn: CUDNN_STATUS_BAD_PARAM
F c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ core \ kernels \ conv_ops.cc: 532] فشل التحقق: stream-> الأصل () -> GetConvolveAlgorithms (& algorithms)

لدي نفس المشكلة بالضبط.
لكن يمكنني تشغيل أكوادي مع الوصول إلى الجذر (مع sudo).
أنا أعمل حاليًا على Ubuntu 16.04 مع GTX 960.
إصدار CUDA الخاص بي هو 8.0 وأنا أستخدم tensorflow 1.01

نظام التشغيل Windows 10 / Tensorflow 1.01
كنت أستخدمه بشكل مثالي ولكن الآن حدث لي الخطأ نفسه عن طريق الخطأ

الاسم: GeForce GTX 1070
رئيسي: 6 ثانوي: 1 MemoryClockRate (جيجاهرتز) 1.7715
معرف PCiBusID 0000: 03: 00.0
إجمالي الذاكرة: 8.00 جيجا بايت
الذاكرة المجانية: 6.68 جيجا بايت
2017-05-08 21: 12: 16.103654: I c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ core \ common_runtime \ gpu \ gpu_device.cc: 908] DMA: 0
2017-05-08 21: 12: 16.105184: I c: \ tf_jenkins \ home \ workspace \ Release-win \ device \ gpu \ os \ windows \ tensorflow \ core \ common_runtime \ gpu \ gpu_device.cc: 918] 0: Y
2017-05-08 21: 12: 16.106710: I c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ core \ common_runtime \ gpu \ gpu_device.cc: 977] إنشاء جهاز TensorFlow (/ gpu: 0) -> (الجهاز: 0 ، الاسم: GeForce GTX 1070 ، معرف ناقل PCI: 0000: 03: 00.0)
2017-05-08 21: 12: 24.395060: E c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ stream_executor \ cuda \ cuda_dnn.cc: 359] تعذر إنشاء مقبض cudnn : CUDNN_STATUS_NOT_INITIALIZED
2017-05-08 21: 12: 24.395177: E c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ stream_executor \ cuda \ cuda_dnn.cc: 366] خطأ في استرداد إصدار برنامج التشغيل: غير مُطبَّق: أبلغت kernel عن أن إصدار برنامج التشغيل غير مطبق على Windows
2017-05-08 21: 12: 24.396636: E c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ stream_executor \ cuda \ cuda_dnn.cc: 326] تعذر تدمير مقبض cudnn : CUDNN_STATUS_BAD_PARAM
2017-05-08 21: 12: 24.396846: F c: \ tf_jenkins \ home \ workspace \ release-win \ device \ gpu \ os \ windows \ tensorflow \ core \ kernels \ conv_ops.cc: 659] فشل التحقق: تيار- > الأصل () -> GetConvolveAlgorithms (& algorithms)

طريقة strickon عملت معي. يبدو أن Tensorflow يحاول استنزاف الكثير من الموارد في وقت واحد ولا يمكن أن يؤدي إلى تعطل العملية. لقد استخدمت على وجه التحديد:

config.gpu_options.allow_growth = صحيح

تأكيد نجاح اقتراح

أنا أقوم بتشغيل https://github.com/awjuliani/DeepRL-Agents/blob/master/Double-Dueling-DQN.ipynb وكنت أتلقى الإخفاقات المذكورة في هذا الموضوع في أول استدعاء لـ sess.run داخل كتلة التحديث (The السطر: Q1 = sess.run(mainQN.predict,feed_dict={mainQN.scalarInput:np.vstack(trainBatch[:,3])}) .

أدت إضافة علامة allow_growth (كما هو موضح أدناه) إلى تجاوز هذا النتوء - يعمل الرمز حاليًا في الخلفية ، وسنرى إلى أي مدى يذهب.

config = tf.ConfigProto()
config.gpu_options.allow_growth = True
sess = tf.Session(config=config)

كومة:

  • MacBook Pro ، يعمل بنظام Sierra 10.12.4 ، مع NVIDIA GeForce GT 750M 2048 ميجابايت. عادةً ما يكون لديك 1.7 جيجابايت فقط مجانًا.
  • TensorFlow 1.1 باستخدام تعليمات تثبيت Anaconda.
  • Python 3.6 ، وليس Virtual (Anaconda)
  • كودا 8 / cuDNN 5

سأكون بخير مع إغراق المزيد من الإحصائيات عند الطلب.

كنت أعمل مع محطتين في نفس الوقت ولدي نفس المشكلة. تم حلها عن طريق إغلاق محطة واحدة.

الإغلاق التلقائي بسبب نقص النشاط الأخير. يُرجى تحديث المشكلة عند توفر معلومات جديدة ، وسنعيد فتح المشكلة. شكرا!

بعد تنفيذ التغييرات التي اقترحها strickon ، بدأت في رؤية مجموعة جديدة من سجلات المعلومات تظهر:

2017-06-23 04:45:57.156787: I c:\tf_jenkins\home\workspace\release-win\m\windows-gpu\py\35\tensorflow\core\common_runtime\gpu\pool_allocator.cc:247] PoolAllocator: After 3205 get requests, put_count=2333 evicted_count=1000 eviction_rate=0.428633 and unsatisfied allocation rate=0.615289
2017-06-23 04:45:57.156880: I c:\tf_jenkins\home\workspace\release-win\m\windows-gpu\py\35\tensorflow\core\common_runtime\gpu\pool_allocator.cc:259] Raising pool_size_limit_ from 100 to 110
step 0 - loss = 5.632, (19.351 sec/step)

غير متأكد إذا كانت ذات صلة.

نفس الخطأ هنا.

Windows 10 x86_64 ، GeForce GTX 970 ، برامج التشغيل 376.53 ، Cuda 8.0 ، cuDNN 5.1. ، tensorflow-gpu 1.2.0 من pip ، python 3.6

أحاول تشغيل المثال الافتراضي من قسم البرامج التعليمية على موقع الويب:

https://www.tensorflow.org/tutorials/image_recognition

python classify_image.py

لدي نفس الخطأ:

"
""
(C: \ ProgramData \ Anaconda3) C: \ Users \ Locky \ Google Диск \ MachineLearning \ Tensorflow-Tutorials \ Repo \ Models \ tutorials \ image \ imagenet> python classify_image.py
2017-06-25 18: 36: 32.318287: W c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ platform \ cpu_feature_guard.cc: 45] مكتبة TensorFlow لم يتم تجميعها لاستخدام تعليمات SSE ، ولكنها متوفرة على جهازك ويمكن أن تسرع من عمليات حساب وحدة المعالجة المركزية.
2017-06-25 18: 36: 32.318514: W c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ platform \ cpu_feature_guard.cc: 45] مكتبة TensorFlow لم يتم تجميعها لاستخدام تعليمات SSE2 ، ولكنها متوفرة على جهازك ويمكن أن تسرع من عمليات حساب وحدة المعالجة المركزية.
2017-06-25 18: 36: 32.323556: W c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ platform \ cpu_feature_guard.cc: 45] مكتبة TensorFlow لم يتم تجميعها لاستخدام تعليمات SSE3 ، ولكنها متوفرة على جهازك ويمكن أن تسرع من عمليات حساب وحدة المعالجة المركزية.
2017-06-25 18: 36: 32.323719: W c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ platform \ cpu_feature_guard.cc: 45] مكتبة TensorFlow لم يتم تجميعها لاستخدام تعليمات SSE4.1 ، ولكنها متوفرة على جهازك ويمكن أن تسرع من عمليات حساب وحدة المعالجة المركزية.
2017-06-25 18: 36: 32.323834: W c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ platform \ cpu_feature_guard.cc: 45] مكتبة TensorFlow لم يتم تجميعها لاستخدام تعليمات SSE4.2 ، ولكنها متوفرة على جهازك ويمكن أن تسرع من عمليات حساب وحدة المعالجة المركزية.
2017-06-25 18: 36: 32.323930: W c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ platform \ cpu_feature_guard.cc: 45] مكتبة TensorFlow لم يتم تجميعها لاستخدام تعليمات AVX ، ولكنها متوفرة على جهازك ويمكن أن تسرع من عمليات حساب وحدة المعالجة المركزية.
2017-06-25 18: 36: 32.324205: W c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ platform \ cpu_feature_guard.cc: 45] مكتبة TensorFlow لم يتم تجميعها لاستخدام تعليمات AVX2 ، ولكنها متوفرة على جهازك ويمكن أن تسرع من عمليات حساب وحدة المعالجة المركزية.
2017-06-25 18: 36: 32.324351: W c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ platform \ cpu_feature_guard.cc: 45] مكتبة TensorFlow لم يتم تجميعها لاستخدام تعليمات FMA ، ولكنها متوفرة على جهازك ويمكن أن تسرع من عمليات حساب وحدة المعالجة المركزية.
2017-06-25 18: 36: 32.707933: I c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ common_runtime \ gpu \ gpu_device.cc: 940] موجود الجهاز 0 مع الخصائص:
الاسم: GeForce GTX 970
رئيسي: 5 ثانوي: 2 MemoryClockRate (جيجاهرتز) 1.253
معرف PCiBus 0000: 01: 00.0
إجمالي الذاكرة: 4.00 جيجا بايت
الذاكرة المجانية: 3.31 جيجا بايت
2017-06-25 18: 36: 32.708332: I c: \ tf_jenkins \ home \ workspace \ Release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ common_runtime \ gpu \ gpu_device.cc: 961] DMA : 0
2017-06-25 18: 36: 32.713764: I c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ common_runtime \ gpu \ gpu_device.cc: 971] 0 : ص
2017-06-25 18: 36: 32.713991: I c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ common_runtime \ gpu \ gpu_device.cc: 1030] الإنشاء جهاز TensorFlow (/ gpu: 0) -> (الجهاز: 0 ، الاسم: GeForce GTX 970 ، معرف ناقل PCI: 0000: 01: 00.0)
2017-06-25 18: 36: 34.854555: W c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ framework \ op_def_util.cc: 332] Op BatchNormWithGlobalNormalization is إهمال. سيتوقف عن العمل في الإصدار 9. من GraphDef. استخدم tf.nn.batch_normalization ().
2017-06-25 18: 36: 35.836895: E c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ stream_executor \ cuda \ cuda_dnn.cc: 359] تعذر الإنشاء مقبض cudnn: CUDNN_STATUS_NOT_INITIALIZED
2017-06-25 18: 36: 35.837068: E c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ stream_executor \ cuda \ cuda_dnn.cc: 366] خطأ في استرداد السائق الإصدار: غير مُطبَّق: أبلغت kernel عن أن إصدار برنامج التشغيل غير مطبق على Windows
2017-06-25 18: 36: 35.841593: E c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ stream_executor \ cuda \ cuda_dnn.cc: 326] لا يمكن تدميره مقبض cudnn: CUDNN_STATUS_BAD_PARAM
2017-06-25 18: 36: 35.841690: F c: \ tf_jenkins \ home \ workspace \ release-win \ m \ windows-gpu \ py \ 36 \ tensorflow \ core \ kernels \ conv_ops.cc: 671] فشل التحقق: تيار-> الأصل () -> GetConvolveAlgorithms (& algorithms)

(C: \ ProgramData \ Anaconda3) C: \ Users \ Locky \ Google Диск \ MachineLearning \ Tensorflow-Tutorials \ Repo \ Models \ tutorials \ image \ imagenet>

""

في حالتي ، حدث هذا لأن مثيلات tensorflow الأخرى كانت تحتفظ بوحدة معالجة الرسومات. (نصوص برمجية أخرى قيد التشغيل.)

هل يمكنني اقتراح رسائل خطأ أفضل؟ قل ، "خطأ: تشغيل مثيلات tensorflow الأخرى ، بينما يتم دعم مثيل واحد فقط."

لدي نفس المشكلة. يعمل بنظام macOS 10.12.5 GT 750M 2GB

python neural_style.py --content /Users/qinyuhang/Pictures/0.jpeg  --styles IMG_1105.JPG --output 1.out.jpg --iterations 500
2017-07-05 22:16:54.531699: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:857] OS X does not support NUMA - returning NUMA node zero
2017-07-05 22:16:54.532257: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 0 with properties: 
name: GeForce GT 750M
major: 3 minor: 0 memoryClockRate (GHz) 0.9255
pciBusID 0000:01:00.0
Total memory: 2.00GiB
Free memory: 1.54GiB
2017-07-05 22:16:54.532435: I tensorflow/core/common_runtime/gpu/gpu_device.cc:961] DMA: 0 
2017-07-05 22:16:54.532461: I tensorflow/core/common_runtime/gpu/gpu_device.cc:971] 0:   Y 
2017-07-05 22:16:54.532471: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GT 750M, pci bus id: 0000:01:00.0)
2017-07-05 22:17:07.284016: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GT 750M, pci bus id: 0000:01:00.0)
2017-07-05 22:17:44.973549: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GT 750M, pci bus id: 0000:01:00.0)
Optimization started...
Iteration    1/ 500
2017-07-05 22:17:47.485948: E tensorflow/stream_executor/cuda/cuda_dnn.cc:359] could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
2017-07-05 22:17:47.485977: E tensorflow/stream_executor/cuda/cuda_dnn.cc:326] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
2017-07-05 22:17:47.485983: F tensorflow/core/kernels/conv_ops.cc:671] Check failed: stream->parent()->GetConvolveAlgorithms(&algorithms) 
[1]    66448 abort      python neural_style.py --content /Users/qinyuhang/Pictures/0.jpeg --styles   

حلها (على الأقل بالنسبة لي). لا تقودك رسالة الخطأ إلى المشكلة الصحيحة. تلقيت هذا الخطأ من مصدرين مختلفين:

أولاً (مثل lockywolf قال):
أنا أستخدم دفتر jupyter وأحيانًا لن يقوم TF kernel بتحرير ذاكرة GPU وعليك إعادة تشغيل jupyter لجعله يعمل مرة أخرى . يحدث هذا بشكل عام بعد أخطاء وقت التشغيل أو إعادة تشغيل kernel بشكل غير صحيح ...

ثانيا:
أحيانًا تصبح جشعًا بذاكرة وحدة معالجة الرسومات وتجربة أشياء مثل هذه:

gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.9)
sess = tf.InteractiveSession(config=tf.ConfigProto(gpu_options=gpu_options))

كان هذا قاتلًا للتكوين الخاص بي وبدأ في الحصول على هذا الخطأ. كان الحل هو استخدام الطريقة الافتراضية لبدء الجلسة التفاعلية :
sess = tf.InteractiveSession()

نظام:

أوبونتو 14.04.2018
GeForce GTX 780
إصدار برنامج تشغيل CUDA = 8.0
إصدار CUDNN = 5.1
إصدار TensorFlow = 1.2.1

لدي نفس المشكلة في تشغيل البرامج النصية الخاصة بي الآن.
أعتقد أن هذا هو نفس السبب مثل وصف lockywolf :

في حالتي ، حدث هذا لأن مثيلات tensorflow الأخرى كانت تحتفظ بوحدة معالجة الرسومات. (نصوص برمجية أخرى قيد التشغيل.)

كان هذا الخطأ كثيرًا ولكن غير منتظم ، ثم اتبعت توجيهRawthiL وأضفت جلسة إلى البرنامج النصي الخاص بي. ومع ذلك ، قمت بتنفيذ البرنامج النصي بنجاح وأعدت تشغيل النواة وحصلت على نفس رسالة الخطأ مرة أخرى. هل يوجد أي حل لفتح الجلسة والمطالبة بوحدة معالجة الرسومات وإغلاقها بعد الانتهاء من الحساب؟

في صحتك!

يحرر:
بجانب حلRawthiL الصورة تابعت Keras TF مقدمة حيث يقولون:

يجب أن نبدأ بإنشاء جلسة TensorFlow وتسجيلها مع Keras. هذا يعني أن Keras ستستخدم الجلسة التي سجلناها لتهيئة جميع المتغيرات التي تنشئها داخليًا.

استيراد tensorflow مثل tf
sess = tf.Session ()

من خلفية استيراد keras كـ K
K.Set_s Session (sess)

نفس المشكلة. تم القتال شاقة للحصول على هذا العمل طوال اليوم.

$ ~/neural-style$ python neural_style.py --content ~/Documents/8UhFDcjT.jpg --styles ~/Documents/9odz6-jbngd.png --output ./Documents/Scott.png
2017-07-26 20:57:08.373361: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
2017-07-26 20:57:08.373397: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
2017-07-26 20:57:08.373413: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
2017-07-26 20:57:08.373417: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX2 instructions, but these are available on your machine and could speed up CPU computations.
2017-07-26 20:57:08.373421: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use FMA instructions, but these are available on your machine and could speed up CPU computations.
2017-07-26 20:57:08.431319: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:893] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2017-07-26 20:57:08.431630: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 0 with properties: 
name: GeForce GTX 870M
major: 3 minor: 0 memoryClockRate (GHz) 0.967
pciBusID 0000:01:00.0
Total memory: 2.95GiB
Free memory: 2.53GiB
2017-07-26 20:57:08.431664: I tensorflow/core/common_runtime/gpu/gpu_device.cc:961] DMA: 0 
2017-07-26 20:57:08.431674: I tensorflow/core/common_runtime/gpu/gpu_device.cc:971] 0:   Y 
2017-07-26 20:57:08.431690: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 870M, pci bus id: 0000:01:00.0)
2017-07-26 20:57:11.692616: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 870M, pci bus id: 0000:01:00.0)
2017-07-26 20:57:19.800938: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 870M, pci bus id: 0000:01:00.0)
Optimization started...
Iteration    1/1000
2017-07-26 20:57:20.535515: E tensorflow/stream_executor/cuda/cuda_dnn.cc:359] could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
2017-07-26 20:57:20.535573: E tensorflow/stream_executor/cuda/cuda_dnn.cc:326] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
2017-07-26 20:57:20.535588: F tensorflow/core/kernels/conv_ops.cc:671] Check failed: stream->parent()->GetConvolveAlgorithms(&algorithms) 

لقد وجدت أنه في بعض الحالات لن تعمل إعادة تعيين نواة jupyter. في الواقع حدث هذا لي أثناء استخدام jupyterhub.
لقد أعدت تشغيل kernel ، وألغيت تنشيط virtualenv الخاصة بي ، وكانت ذاكرة GPU لا تزال محتجزة من خلال بعض العمليات. قال الأمر nvidia-smi إنه لم تكن هناك عملية باستخدام وحدة معالجة الرسومات وعندما حاولت إعادة تعيينه باستخدام sudo nvidia-smi --gpu-reset -i 0 (لـ 0 gpu core) قال ما يلي:

غير قادر على إعادة تعيين GPU لأنه يتم استخدامه من قبل بعض العمليات الأخرى (مثل تطبيق CUDA ، تطبيق الرسومات مثل خادم X ، تطبيق المراقبة مثل مثيل آخر من nvidia-smi). يرجى أولاً إيقاف جميع العمليات باستخدام وحدة معالجة الرسومات هذه وجميع تطبيقات الحوسبة التي تعمل في النظام (حتى عندما تعمل على وحدات معالجة الرسومات الأخرى) ثم محاولة إعادة تعيين وحدة معالجة الرسومات مرة أخرى.
الإنهاء المبكر بسبب أخطاء سابقة.

لذلك كانت هناك بعض العمليات التي تحتفظ بوحدة معالجة الرسومات ، وقد بحثت عنها باستخدام sudo fuser -v /dev/nvidia* والتي قالت أن هناك شيئًا ما يحمل وحدة معالجة الرسومات ... حيلة.
قد لا أكون أفضل طريقة لحل هذه المشكلة ، ولكنها أفضل من إعادة تعيين الكمبيوتر عندما تفشل جميع الخيارات الأخرى.

لديك نفس المشكلة. GPU هو GTX 1070 و CUDA 8.0 و CUDNN 5.1 لـ CUDA 8.0.

لا تعتمد المشكلة على رمز المستخدم ، بل تعتمد على الأجهزة أو حالة برنامج Nvidia أو Google. يمكن أن يبدأ هذا الخطأ في الارتفاع في أي وقت ويمكن إعادة التشغيل إصلاحه برمز المستخدم نفسه.

نفس المشكلة مع Windows 10 و GTX770 و CUDA 8.0 و CUDNN 5.1 و TF-GPU 1.1.0 ، لست متأكدًا من مكان الحصول على إصدار برنامج تشغيل الجهاز ولكن Windows Device Manager يبلغ 21.21.13.7651 لبرنامج تشغيل العرض.

connect  84557d348c06492e80ff0304d516367b
2017-08-11 15:51:41.974028: E c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_dnn.cc:359] could not create cudnn handle: CUDNN_STATUS_NOT_INITIALIZED
2017-08-11 15:51:41.974536: E c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_dnn.cc:366] error retrieving driver version: Unimplemented: kernel reported driver version not implemented on Windows
2017-08-11 15:51:41.974923: E c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_dnn.cc:326] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
2017-08-11 15:51:41.975194: F c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\kernels\conv_ops.cc:659] Check failed: stream->parent()->GetConvolveAlgorithms(&algorithms)

نفس المشكلة مع Windows 10 و GTX770 و CUDA 8.0 و CUDNN 5.1 و TF-GPU 1.1.0 ، لست متأكدًا من مكان الحصول على إصدار برنامج تشغيل الجهاز ولكن Windows Device Manager يبلغ 21.21.13.7651 لبرنامج تشغيل العرض.

connect  84557d348c06492e80ff0304d516367b
2017-08-11 15:51:41.974028: E c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_dnn.cc:359] could not create cudnn handle: CUDNN_STATUS_NOT_INITIALIZED
2017-08-11 15:51:41.974536: E c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_dnn.cc:366] error retrieving driver version: Unimplemented: kernel reported driver version not implemented on Windows
2017-08-11 15:51:41.974923: E c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_dnn.cc:326] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
2017-08-11 15:51:41.975194: F c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\kernels\conv_ops.cc:659] Check failed: stream->parent()->GetConvolveAlgorithms(&algorithms)

نجح إصلاح

config = tf.ConfigProto()
config.gpu_options.allow_growth = True
sess = tf.Session(config=config)

في حالتي ، تم حل نفس المشكلة عن طريق تحديث برنامج تشغيل NVIDIA gpu.

هل تم حل هذه المشكلة بالكامل. أقوم بتشغيل TF 1.3.0 على Ubuntu 16.04 مع CUDA 8.0 و cuDNN 5.1. لقد استخدمت أناكوندا لتثبيت حزمتي. منذ 4 أيام بشكل عشوائي ، واجهت هذا الخطأ أيضًا

name: GeForce GTX 1080 Ti major: 6 minor: 1 memoryClockRate (GHz) 1.582 pciBusID 0000:05:00.0 Total memory: 10.91GiB Free memory: 10.30GiB 2017-09-05 07:47:05.397839: W tensorflow/stream_executor/cuda/cuda_driver.cc:523] A non-primary context 0x30028e0 exists before initializing the StreamExecutor. We haven't verified StreamExecutor works with that. 2017-09-05 07:47:05.401343: I tensorflow/core/common_runtime/gpu/gpu_device.cc:955] Found device 1 with properties: name: GeForce GTX 1080 Ti major: 6 minor: 1 memoryClockRate (GHz) 1.582 pciBusID 0000:06:00.0 Total memory: 10.91GiB Free memory: 10.75GiB 2017-09-05 07:47:05.658932: W tensorflow/stream_executor/cuda/cuda_driver.cc:523] A non-primary context 0x2ffe910 exists before initializing the StreamExecutor. We haven't verified StreamExecutor works with that. 2017-09-05 07:47:05.659690: I tensorflow/core/common_runtime/gpu/gpu_device.cc:955] Found device 2 with properties: name: GeForce GTX 1080 Ti major: 6 minor: 1 memoryClockRate (GHz) 1.582 pciBusID 0000:09:00.0 Total memory: 10.91GiB Free memory: 10.75GiB 2017-09-05 07:47:05.898536: W tensorflow/stream_executor/cuda/cuda_driver.cc:523] A non-primary context 0x2ffa940 exists before initializing the StreamExecutor. We haven't verified StreamExecutor works with that. 2017-09-05 07:47:05.899294: I tensorflow/core/common_runtime/gpu/gpu_device.cc:955] Found device 3 with properties: name: GeForce GTX 1080 Ti major: 6 minor: 1 memoryClockRate (GHz) 1.582 pciBusID 0000:0a:00.0 Total memory: 10.91GiB Free memory: 10.75GiB 2017-09-05 07:47:05.903197: I tensorflow/core/common_runtime/gpu/gpu_device.cc:976] DMA: 0 1 2 3 2017-09-05 07:47:05.903209: I tensorflow/core/common_runtime/gpu/gpu_device.cc:986] 0: Y Y Y Y 2017-09-05 07:47:05.903215: I tensorflow/core/common_runtime/gpu/gpu_device.cc:986] 1: Y Y Y Y 2017-09-05 07:47:05.903218: I tensorflow/core/common_runtime/gpu/gpu_device.cc:986] 2: Y Y Y Y 2017-09-05 07:47:05.903223: I tensorflow/core/common_runtime/gpu/gpu_device.cc:986] 3: Y Y Y Y 2017-09-05 07:47:05.903236: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 1080 Ti, pci bus id: 0000:05:00.0) 2017-09-05 07:47:05.903242: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:1) -> (device: 1, name: GeForce GTX 1080 Ti, pci bus id: 0000:06:00.0) 2017-09-05 07:47:05.903248: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:2) -> (device: 2, name: GeForce GTX 1080 Ti, pci bus id: 0000:09:00.0) 2017-09-05 07:47:05.903252: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:3) -> (device: 3, name: GeForce GTX 1080 Ti, pci bus id: 0000:0a:00.0) 2017-09-05 07:47:20.297138: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 1080 Ti, pci bus id: 0000:05:00.0) 2017-09-05 07:47:20.297190: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:1) -> (device: 1, name: GeForce GTX 1080 Ti, pci bus id: 0000:06:00.0) 2017-09-05 07:47:20.297206: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:2) -> (device: 2, name: GeForce GTX 1080 Ti, pci bus id: 0000:09:00.0) 2017-09-05 07:47:20.297220: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:3) -> (device: 3, name: GeForce GTX 1080 Ti, pci bus id: 0000:0a:00.0) 2017-09-05 07:47:24.845499: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 1080 Ti, pci bus id: 0000:05:00.0) 2017-09-05 07:47:24.845534: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:1) -> (device: 1, name: GeForce GTX 1080 Ti, pci bus id: 0000:06:00.0) 2017-09-05 07:47:24.845542: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:2) -> (device: 2, name: GeForce GTX 1080 Ti, pci bus id: 0000:09:00.0) 2017-09-05 07:47:24.845548: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:3) -> (device: 3, name: GeForce GTX 1080 Ti, pci bus id: 0000:0a:00.0) 2017-09-05 07:47:34.884524: E tensorflow/stream_executor/cuda/cuda_dnn.cc:371] could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR 2017-09-05 07:47:34.884597: E tensorflow/stream_executor/cuda/cuda_dnn.cc:338] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM 2017-09-05 07:47:34.884616: F tensorflow/core/kernels/conv_ops.cc:672] Check failed: stream->parent()->GetConvolveAlgorithms( conv_parameters.ShouldIncludeWinogradNonfusedAlgo<T>(), &algorithms)

لدي 4 وحدات معالجة رسومات 1080ti. أثناء تشغيل نموذجي ، راقبت nvidia-smi وحصلت

-------------------------------------------------- --------------------------- +
| العمليات: ذاكرة وحدة معالجة الرسومات |
| GPU PID اكتب اسم العملية الاستخدام |
| =================================================== ============================== |
| 0 1422 G / usr / lib / xorg / Xorg 279MiB |
| 0 3530 G كومبيز 195 ميجا بايت |
| 0 11249 C / home / simon / anaconda3 / bin / python 10157MiB |
| 1 11249 C / home / simon / anaconda3 / bin / python 10611MiB |
| 2 11249 C / home / simon / anaconda3 / bin / python 10611MiB |
| 3 11249 C / home / simon / anaconda3 / bin / python 10611MiB |
+ ------------------------------------------------- ---------------------------- +

لذلك ، لسبب ما ، تستحوذ بايثون على الذاكرة. بالطبع إذا قتلت هذا ، فإنه يقتل دفتر جوبيتر الخاص بي. ليس لدي أي عمليات غيبوبة قيد التشغيل. لقد حاولت.

gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.1) sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))

مما يقلل من استخدام وحدة معالجة الرسومات ولكن ما زلت أحصل على نفس خطأ معالجة cuDDN. لقد أعدت تثبيت TF. CUDA و cuDNN و Anaconda دون أي تأثير على المشكلة.

لماذا يحدث هذا الخطأ بشكل عشوائي وكيف يمكن حل ذلك.

تم تصميم TensorFlow 1.3 مقابل cuDNN 6.
الرجاء ترقية تثبيت cuDNN الخاص بك.

شكرًا غونان - هذا لا فرق ، لسوء الحظ. حتى مع cuDNN 6 ، ما زلت أحصل على cuDNN لا يمكنه إنشاء خطأ في المقبض. حتى تعيين GPUptions مباشرة لا يمنع الخطأ ، على الرغم من أنه يقلل من حجم ذاكرة GPU المستخدمة. يتم استخدام ذاكرة GPU بواسطة Python ، لذلك إذا قمت بإغلاق هذا ، فإنه يغلق دفتر Jupyter الخاص بي. لقد علقت في هذا لمدة 4 أيام تقريبًا ويبدو أنني استنفدت جميع الاقتراحات التي رأيتها عبر الإنترنت. هل يمكن أن تكون هذه مشكلة TF 1.3؟

فقط لأولئك الذين يدفعهم هذا إلى الجنون:

لقد تلقيت أحيانًا خطأ CUBLAS أيضًا. لذلك فعلت هذا:

cd /usr/local/cuda/samples/7_CUDALibraries/simpleCUBLAS
make
./simpleCUBLAS

واكتشفت أنه لا يمكنني تهيئة CUBLAS

بعد ذلك فعلت هذا (بناءً على نصيحة)

sudo rm -f ~/.nv

وقد نجحت. في صحتك ..... هذا 4 أيام ضائعة. أتمنى أن ينقذ هذا شخصًا آخر

@ SimonWalsh1000 هذا

تحقق من ملف .theanorc الخاص بك في مسار منزلك (إذا كان Ubuntu) ، وقم بتعيين cnmem أصغر ... ربما cnmem = 0.8 ، وقد نجح معي الآن

لقد عملت بشكل مثالي مع نظام التشغيل Windows 10 مع GTX 1070.
كنت أستخدم cudnn 7.0.2
أدى الرجوع إلى الإصدار 6.0 إلى حل المشكلات لي:

cuda_8.0.61_win10.exe
cudnn-8.0-windows10-x64-v6.0.zip
python-3.6.2-amd64.exe

قم بنشر عملية التثبيت بأكملها هنا:
http://klaatuveratanecto.com/installing-tensorflow-gpu-windows-10-running-image_retraining/

مرحبًا ، لدي نفس السؤال. ومع ذلك ، وجدت السبب هو أنني استخدمت Tensorflow مرتين في نفس الوقت.

على سبيل المثال ، عادةً ما كنت أستخدم دفتر Jupyter للسيناريو البسيط واستخدمت PyCharm للمشروع. إذا لم أقم بإغلاق دفتر jupyter ، فقد أواجه هذا الخطأ في Pycharm.

أتمنى أن يساعد هذا.


WIndows10 64 ،
NVIDIA TitanX ،
سائق 385.41 ،
كودا 8.0.60
Cudnn 6.0.0 تحديث
بايثون 3.5.2
Tensorflow 1.3

أتفق مع strickon : يبدو أنها مشكلة تخصيص الذاكرة.
كان لدي جهاز كمبيوتر محمول مع برنامج tensorflow قيد التشغيل وحاولت تشغيل python + tensorflow في محطة Windows أخرى وحصلت على الخطأ. ثم أعدت تشغيل الكمبيوتر الدفتري (حرر ذاكرة GPU) وحاولت تشغيل python على محطة Windows مرة أخرى وقد نجح الأمر! أعتقد أن Tensorflow يجب أن يوفر رسالة خطأ أفضل لإعلام المستخدم بشرح أكثر تفصيلاً.

أنا على windows 10 و cuda 8 و cudnn 6 مع:

الاسم: كوادرو K620
رئيسي: 5 ثانوي: 0 memoryClockRate (جيجاهرتز) 1.124
معرف PCiBus 0000: 01: 00.0
إجمالي الذاكرة: 2.00 جيجا بايت
الذاكرة المجانية: 1.66 جيجا بايت

لقد تم اتباع نفس الخطوات تقريبًا بالنسبة لي أيضًا ، وليس لدي سوى القليل من الفهم لكيفية عمل ذلك. أقوم فقط بإغلاق جميع النوافذ ، وفتحت محطة بيثون مغلقة على pycharm - بما في ذلك تلك النوافذ التي تم فتحها من خلال التنفيذ السابق لنفس البرنامج لتخطيط التقدم في التدريب وإعادة الفتح والتشغيل - إنها تعمل بدون أخطاء. يبدو أن الأخطاء السابقة التي تم الإبلاغ عنها لا تعطي فكرة مباشرة ---

أهلا،
واجهت نفس المشكلة ، تشغيل python مع sudo حل مشكلتي.

@ SimonWalsh1000 أنت بطلي !! وهو يعمل بالنسبة لي كذلك !

كما ساعدنا تشغيل sudo . تمكنا من العمل كمستخدم غير جذر عن طريق إضافة مستخدمنا غير الجذر إلى مجموعة nvidia-persistenced . انظر تعليقي الأصلي: https://github.com/tensorflow/tensorflow/issues/14048#issuecomment -340898847

واجهت نفس المشكلة في Ubuntu 16.04 و cuda-8.0 (مع GTX1080Ti). أود فقط أن أبلغ أيًا منكم بنفس المشكلة أن الحل الذي قدمه @ SimonWalsh1000 قد نجح معي تمامًا (على سبيل المثال ، تم حل مشكلة تهيئة CUBLAS بواسطة sudo rm -rf ~/.nv/ ). لذا ، شكرًا جزيلاً @ SimonWalsh1000 ، لقد كلفني ذلك بعض الساعات ...

@ SimonWalsh1000 إنه يعمل حقًا. شكرا جزيلا!

@ SimonWalsh1000 يعمل مثل السحر ، شكرا لك !!!!

واجهت نفس المشكلة في Windows 10 ، CUDA 8.0 ، cuDNN 6.1 مع GTX1070Ti.
أجد السبب: لقد قمت بتشغيل كود tensorflow في annconda spyder IDE ، وبعد ذلك قمت بتشغيل كود tensorflow آخر في موجه annconda.
حلها عن طريق إغلاق سبايدر IDE
lockywolf هو حق

كان لي نفس المشكلة. أحاول استخدام طريقة cuDNN 6.0 لـ CUDA8.0 إلى cuDNN 7.0 لـ CUDA8.0

النظام في البداية:

  • نظام التشغيل Windows10
  • CUDA8.0
  • cuDNN6.0
  • أناكوندا 3.5 (بيثون 3.5)
  • GeForce 840M major: 5 ثانوي: 0 MemoryClockRate (جيجاهرتز): 1.124
  • 2.00 جيجا بايت مجانًا الذاكرة: 1.66 جيجا بايت

النظام بعد حلها:

  • نظام التشغيل Windows10
  • CUDA8.0
  • cuDNN7.0
  • أناكوندا 3.5 (بيثون 3.5)
  • GeForce 840M major: 5 ثانوي: 0 MemoryClockRate (جيجاهرتز): 1.124
  • 2.00 جيجا بايت مجانًا الذاكرة: 1.66 جيجا بايت

أعتقد أن سبب هذه المشكلة هو عدم تطابق إصدار المكتبة والأجهزة. chleibig أيضًا حل هذه المشكلة عن طريق تحديث برنامج تشغيل GPU. نأمل أن يكون هذا يمكن أن يكون مفيدا.

بالنسبة لي وضع: config.gpu_options.allow_growth = صحيح في جلسة tensorflow تم إصلاح المشكلة.
كودا 8 ، TF 1.4 ، Cudnn 6

تشغيل هذا إصلاح المشكلة.

sudo rm -rf ~ / .nv

نفس السؤال. هل يوجد حل لحل المشكلة؟
وضعي هو:
الاسم: GeForce GTX 1080
totalMemory: 7.92 جيجا بايت مجانًا الذاكرة: 2.50 جيجا بايت
Tensorflow: GPU-1.4.0

أنا أختبر وحدة معالجة الرسومات واحدة ولكن تشغيل ثلاثة مثيل tensorflow.
في الكود الخاص بي مثل هذا:
gpu_options = tf.GPUOptions (per_process_gpu_memory_fraction = 0.3)
sess = tf.Session (config = tf.ConfigProto (gpu_options = gpu_options))

تعمل مثيلات tensorflow الأخرى بشكل جيد ، ولكن الخطأ الأخير فقط يعمل مثل هذا:

E tensorflow / stream_executor / cuda / cuda_dnn.cc: 371] تعذر إنشاء مقبض cudnn: CUDNN_STATUS_INTERNAL_ERROR
E tensorflow / stream_executor / cuda / cuda_dnn.cc: 338] تعذر تدمير مقبض cudnn: CUDNN_STATUS_BAD_PARAM
F tensorflow / core / kernels / conv_ops.cc: 672] فشل التحقق: تيار-> الأصل () -> GetConvolveAlgorithms (conv_parameters.ShouldIncludeWinogradNonfusedAlgo() والخوارزميات)

لماذا ا؟ هل تهيئة وحدة معالجة الرسومات صغيرة جدًا: gpu_options = tf.GPUOptions (per_process_gpu_memory_fraction = 0.3)
لست متأكد. تريد بعض الاقتراحات. سوف احاول.

تحقق من الحل الخاص بي ....

في 19 ديسمبر 2017 الساعة 08:20 ، كتب tbchj [email protected] :

نفس السؤال. هل يوجد حل لحل المشكلة؟
وضعي هو:
الاسم: GeForce GTX 1080
totalMemory: 7.92 جيجا بايت مجانًا الذاكرة: 2.50 جيجا بايت
Tensorflow: GPU-1.4.0

أنا أختبر وحدة معالجة الرسومات واحدة ولكن تشغيل ثلاثة مثيل tensorflow.
في الكود الخاص بي مثل هذا:
gpu_options = tf.GPUOptions (per_process_gpu_memory_fraction = 0.3)
sess = tf.Session (config = tf.ConfigProto (gpu_options = gpu_options))

المثيلتان الأخريان tensorflow يعملان بشكل جيد ، لكن آخرهما فقط
خطأ مثل هذا:

E tensorflow / stream_executor / cuda / cuda_dnn.cc: 371] تعذر إنشاء cudnn
مقبض: CUDNN_STATUS_INTERNAL_ERROR
E tensorflow / stream_executor / cuda / cuda_dnn.cc: 338] لا يمكن تدميره
مقبض cudnn: CUDNN_STATUS_BAD_PARAM
F tensorflow / core / kernels / conv_ops.cc: 672] فشل الفحص:
تيار-> الأصل () -> GetConvolveAlgorithms (conv_parameters.
يجب تضمين WinogradNonfusedAlgo () والخوارزميات)

لماذا ا؟ هل تهيئة وحدة معالجة الرسومات صغيرة جدًا: gpu_options = tf.GPUOptions (per_process_gpu_)
memory_fraction = 0.3)
لست متأكد. تريد بعض الاقتراحات. سوف احاول.

-
أنت تتلقى هذا لأنه تم ذكرك.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/tensorflow/tensorflow/issues/6698#issuecomment-352670885 ،
أو كتم الخيط
https://github.com/notifications/unsubscribe-auth/AJq-HpINYs1Uae6ghIW3qKCD56SUDhFeks5tB3HZgaJpZM4Lc7S1
.

-
أفضل
سيمون

SLFWalsh MD MRCP FFRRCSI
[email protected]

في حالتي ، كنت أقوم بتشغيل الشعلة على خلفية ولدي نفس المشكلة.
أعتقد أن ... CUDNN_STATUS_INTERNAL_ERROR يمكن أن يحدث عندما يستخدم برنامج آخر cudnn

في حالتي ، يمكنني تشغيل cudnn في بيئة ipython ، ومع ذلك ، تلقيت نفس رسائل الخطأ عندما حاولت تشغيل الكود في دفتر jupyter

مرحبًا ، لدي نفس المشكلة ولم يساعدني أي من الاقتراحات حتى الآن في حلها.
أنا أستخدم جهاز كمبيوتر محمول Asus Zenbook Pro يعمل بنظام التشغيل Windows 10 بالمواصفات التالية:

imagen

مواصفات GPU الخاصة بي هي كما يلي:

imagen

أنا أتابع هذا البرنامج التعليمي: https://www.tensorflow.org/get_started/mnist/pros ، حيث يتعين عليك تنفيذ وتدريب 1) انحدار softmax و 2) CNN متعدد الطبقات باستخدام مجموعة بيانات MNIST.

هذه هي أكوادي :

1) عندما أقوم بتشغيل MNIST_softmax_regression.py ، فإنه يعمل بشكل جيد:
imagen
كما ترى ، يتم استخدام وحدة معالجة الرسومات (GPU) والدقة النهائية تبلغ حوالي 92٪ كما هو متوقع وفقًا للبرنامج التعليمي.

2) ومع ذلك ، عند تشغيل MNIST_multilayer_CNN.py ، يتعطل بيثون:
imagen

لقد جربت حلين بناءً على الاقتراحات السابقة:

config = tf.ConfigProto()
config.gpu_options.allow_growth = True
with tf.Session(config=config) as sess:

و

config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.8
with tf.Session(config=config) as sess:

لم يعمل أي منهم ، على الرغم من أن الثاني ينتج المخرجات التالية:

imagen

كما ترى ، يحاول tensorflow أولاً تخصيص الذاكرة عدة مرات (CUBLAS_STATUS_ALLOC_FAILED) حتى ينجح على ما يبدو ولكن بعد ذلك يظهر خطأ CUDNN_STATUS_NOT_INITIALIZED ويفشل كل شيء مرة أخرى.

راجع للشغل ، لقد قمت بتثبيت tensorflow وفقًا للنهج البديل في نهاية هذه التعليمات: http://www.python36.com/install-tensorflow-gpu-windows/
imagen

لقد استخدمت مثبّت CUDA هذا:
imagen
imagen

واستخدمت هذا الملف .whl لتثبيت tensorflow:
imagen

فيما يلي بعض المعلومات الإضافية حول Python و pip و conda:
imagen

أي مساعدة سوف تكون محل تقدير كبير.
شكرا لك مقدما.

أهلا،
أواجه نفس المشكلة على جهازين مختلفين:

الإعداد 1:
ويندوز 10 برو 64 بت
معلومات GPU
كودا 8.0
cudnn 6.0
Tensorflow 1.4
بايثون 3.6.4

الإعداد 2:
ويندوز 10 برو 64 بت
معلومات GPU
كودا 8.0
cudnn 6.0
Tensorflow 1.4
بايثون 3.6.2

أي تحديثات؟

لديك إعداد مشابه جدًا لما ورد أعلاه ، يعمل على:

نوافذ 10
GPU
Tensorflow 1.5
كودا 9.0.176.00
كدن 7
بيثون 3.6.4 ، اناكوندا

لقد جربت تغييرات التكوين وما زلت أتلقى مجموعة "CUDNN_STATUS_NOT_INITIALIZED" من الأخطاء.

لست متأكدًا من مكان وجود مجلد .nv المكافئ على windows ، لذلك لم أتمكن من تشغيل حل @ SimonWalsh1000 .

HeinzBenjamin ، أي نجاح؟

تحرير: ما زلت متعثرًا ، هل يمكن أن يكون ذلك بسبب استخدامي Tensorflow 1.5 و CUDA 9؟

لقد واجهت نفس المشكلة.
ومع ذلك ، وجدت أنه بعد تثبيت CUDA 9.0 ، لن يكون برنامج التشغيل الخاص بي هو أحدث إصدار.
لذا ، حاول تحديث برنامج تشغيل Nvdia الخاص بك إلى أحدث إصدار وأعد تشغيل الكمبيوتر. إنه يعمل بالنسبة لي!

بالأمس كان الكود الخاص بي يعمل بشكل جيد ، كان هناك تحديث لأوبونتو هذا الصباح والآن الكود الخاص بي ينتج هذا. لم يتغير شيء آخر.

2018-02-11 07: 54: 57.097712: E tensorflow / stream_executor / cuda / cuda_dnn.cc: 385] تعذر إنشاء مقبض cudnn: CUDNN_STATUS_INTERNAL_ERROR
2018-02-11 07: 54: 57.097756: E tensorflow / stream_executor / cuda / cuda_dnn.cc: 352] تعذر تدمير مقبض cudnn: CUDNN_STATUS_BAD_PARAM
2018-02-11 07: 54: 57.097767: F tensorflow / core / kernels / conv_ops.cc: 667] فشل التحقق: Stream-> الأصل () -> GetConvolveAlgorithms (conv_parameters.ShouldIncludeWinogradNonfusedAlgo () ، والخوارزميات)

لقد أعدت تشغيل النظام عشرات المرات.
بعد إعادة تشغيل قليلة ، تغير الخطأ إلى

2018-02-11 07: 19: 33.487404: I tensorflow / stream_executor / cuda / cuda_dnn.cc: 393] ربما يكون إصدار برنامج التشغيل غير كافٍ: 384.111.0 2018-02-11 07: 19: 33.487423: E tensorflow / stream_executor / cuda / cuda_dnn.cc:352] تعذر تدمير مقبض cudnn: CUDNN_STATUS_BAD_PARAM 2018-02-11 07: 19: 33.487439: F tensorflow / core / kernels / conv_ops.cc: 667] فشل التحقق: تيار-> الأصل () -> GetConvolveAlgorithms () conv_parameters.ShouldIncludeWinogradNonfusedAlgo () والخوارزميات)

ولكن بعد الترقية إلى 390.25 ينتج الآن الخطأ الأول مرة أخرى.

يعمل كود tensorflow الآخر الخاص بي بشكل جيد.

حاولت أيضًا إزالة دليل nv لكن ذلك لم يكن له أي تأثير

أوبونتو 17.10 ، جي تي إكس 1060 6 جيجابايت

لقد تلقيت هذا الخطأ على نظام التشغيل Windows 10 مع CUDA 9.0 و GT 750M لقد قمت بحلها عن طريق الحد من استخدام GPU إلى 0.7 مع: config.gpu_options.per_process_gpu_memory_fraction = 0.7

كما نشر شخص آخر ، فإن أي شيء أعلى من 0.7 يحطم بايثون.

بعد استلام ثالوث الأخطاء أيضًا:

CUDNN_STATUS_NOT_INITIALIZED
conv_parameters.ShouldIncludeWinogradNonfusedAlgo(), &algorithms)

حاول @ zzhang68 الصورة الحل ... تحديث برامج التشغيل بعد 9.0 كبار السن من السائقين المثبتة.
_وعملت! _

نظام التشغيل Windows 10 | بطاقة GTX 980 Ti
CUDA 9.0 (التي تأتي مع برامج تشغيل قديمة !!!!)
\ cudnn-9.0-windows10-x64-v7 \ cuda \ bin (cudann64_7.dll) في PATH

بيثون 3.6 مينيكوندا
تينسورفلو- gpu 1.5.0

تواجه نفس المشكلة. tf1.5 py2.7 تيتان x كودا 8.
config.gpu_options.allow_growth = True
لا يعمل

حصلت على هذا الخطأ في Windows 10 مع CUDA 9.0 و GTX 1060.
بيثون 3.5
تينسورفلو- gpu 1.5.0
أجد طريقة سهلة لحلها: قم بتحديث برنامج تشغيل العرض NVIDIA إلى أحدث إصدار ، وأعد تشغيل الكمبيوتر
ثم عملت!

@ SimonWalsh1000 ، إنه يعمل حقًا بالنسبة لي ، شكرًا جزيلاً!

الحل من strickon و granum بالإضافة إلى تحديث برنامج التشغيل حل هذا الأمر بالنسبة لي. أعتقد أن بعض الأشخاص لديهم تكوينات طاقة مخصصة تعمل على تفريغ بعض الوظائف حتى يتم الاحتياج إليها.

أدى تحديث برنامج تشغيل gpu الخاص بي إلى حل هذه المشكلة بالنسبة لي. كان برنامج تشغيل GPU الخاص بي هو ديسمبر 2017 وآخرها كان 26 فبراير 2018.

يجب أن يكون لديك tensorflow الصحيح وإصدار CUDA وإصدار cuDNN وبرنامج تشغيل gpu لتجنب هذه المشكلة

المواصفات الخاصة بي:
tensorflow 1.6
cuDNN v7.0.4 (13 نوفمبر 2017) ، لـ CUDA 9.0 (كان علي استخدام هذا الإصدار حتى يعمل TF الخاص بي)

إليك كيف أصلحته. لقد قمت بتثبيت كلاً من CUDA 9.1 و CUDA 9.0. مثل الآخرين ، اضطررت إلى ترقية برامج تشغيل GPU الخاصة بي مرة أخرى بعد تثبيت CUDA (عبر برنامج Geforce Experience). تستخدم TensorFlow الخلفية لـ Keras CUDA 9.0 اعتبارًا من تاريخ اليوم ، لذا تأكد من تثبيت ذلك. بعد ذلك ، قم بتنزيل cuDNN 7.0.5 (وليس أحدث إصدار 7.1) من https://developer.nvidia.com/rdp/cudnn-download ثم قم باستخراجه ونسخ الحاوية ، التضمين ، إلخ إلى المجلدات C: \ Program Files \ NVIDIA GPU Computing Toolkit \ CUDA \ v9.0 folder. الآن يجب أن تعمل.

شكرًا لكل هذه المساعدة وبعد أن حاولت تدهور cuCNN الخاص بي من cnDNN-9.1 إلى cnDNN-9.0 وهو يعمل.
بيئتي هي Centos7 + CUDA 9.0 + Tensorflow 1.6

نفس الخطأ في Python3.5 و ubuntu 16.04 و tf1.5
أدى تحديث برنامج تشغيل وحدة معالجة الرسومات إلى الإصدار 390.42 إلى حل هذه المشكلة بالنسبة لي.

اهلا ياجماعة،

لقد حصلت للتو على نفس المشكلة
"E tensorflow / stream_executor / cuda / cuda_dnn.cc: 385] تعذر إنشاء مقبض cudnn: CUDNN_STATUS_INTERNAL_ERRORE tensorflow / stream_executor / cuda / cuda_dnn.cc: 352] تعذر تدمير مقبض cudnn: CUDNN_STATUS_BAD_PARAMF tensorflow / core / kernels / conv_ops.cc: 605] فشل التحقق: تيار-> الأصل () -> GetConvolveAlgorithms (& algorithms) "

وحلها:
1- تحديث برنامج تشغيل NVIDIA Geforce920M
2- تحديد جلسة التليفزيون بالشكل الصحيح كالتالي:
التكوين = tf.ConfigProto ()
config.gpu_options.allow_growth = صحيح
sess = tf.Session (config = config)
3- إعادة تشغيل الكمبيوتر

بعد ذلك تلقيت رسالة خطأ أكثر دقة:
"تم العثور على cuDNN7.1 ، ولكن من المتوقع cuDNN7.0. ترقية"

وحلها:
بدلاً من ترقية الباقي (tf ، cuda ، ..) لتلبية cuDNN ، قمت بدلاً من ذلك بخفض cuDNN7.0 لتلبية الباقي.
(خفض مستوى cuDNN من 7.1 إلى 7.0.4) وعمل جيدًا.

لقد واجهت هذا الخطأ أيضًا عندما كنت أقوم بتشغيل Cnn_Mnist.py

معلومات البيئة :

  • Window10 + tensorflow_gpuV1.6 + cudav9.0 , cudnnv7.0 + Python3.5 (Anaconda) + GeForce 920MX
| NVIDIA-SMI 385.54                 Driver Version: 385.54                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name            TCC/WDDM | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce 920MX      WDDM  | 00000000:01:00.0 Off |                  N/A |
| N/A   37C    P0    N/A /  N/A |     84MiB /  2048MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0     11988      C   ...naconda3\envs\tensorflow_GPU\python.exe N/A      |
+-----------------------------------------------------------------------------+

معلومات الخطأ:

2018-03-20 13:38:27.439071: E C:\tf_jenkins\workspace\rel-win\M\windows-gpu\PY\35\tensorflow\stream_executor\cuda\cuda_dnn.cc:385] could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
2018-03-20 13:38:27.443473: E C:\tf_jenkins\workspace\rel-win\M\windows-gpu\PY\35\tensorflow\stream_executor\cuda\cuda_dnn.cc:352] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
2018-03-20 13:38:27.449591: F C:\tf_jenkins\workspace\rel-win\M\windows-gpu\PY\35\tensorflow\core\kernels\conv_ops.cc:717] Check failed: stream->parent()->GetConvolveAlgorithms( conv_parameters.ShouldIncludeWinogradNonfusedAlgo<T>(), &algorithms)

نأمل مخلصين في الحصول على مساعدة الجميع: د

في حالتي (Windows 10) ، كان سبب هذه المشكلة هو استخدام الإصدار الخاطئ من cuDNN. على الرغم من أنني اتبعت تعليمات TensorFlow الرسمية عن كثب ، فقد قمت بتنزيل الإصدار 7.0.5 عن طريق الخطأ لـ CUDA 9.1 ، بينما يستدعي TF صراحةً لـ CUDA 9.0.

بمجرد أن أصحح خطأ cuDNN ، بدأت مجموعاتي في العمل 💯 👍 🥇 :)

نفس المشكلة tf 1.2 ، cuda 8.0 ، cudnn 5.1
Nvidia تحديث السائقين

حسنًا ، لقد تمكنت من تحديث برنامج تشغيل nvidia إلى الإصدار الأخير وفقًا لـ cuda ، وهو يعمل. لذا ، يمكنك تجربة هذه الطريقة.

حسنا حسنا. لا يمكن أن تعمل بشكل جيد. المشكلة تحدث مرة أخرى

باستخدام: cudnn-9.0-windows10-x64-v7 و tensorflow-gpu == 1.7.0

دروس \ صورة \ تخيل> بيثون classify_image.py
فشل مع الخطأ: تعذر إنشاء مقبض cudnn: CUDNN_STATUS_INTERNAL_ERROR

إضافة ثلاثة أسطر من التعليمات البرمجية من ggranum أعلاه يحل المشكلة

بالنسبة لي كانت المشكلة هي استخدام cudnn lib الخاطئ
لقد استخدمت cudnn لـ cuda 9.1 عندما كان لدي cuda 9.0. لذلك قمت بإعادة تثبيت cudnn لـ cuda 9.0 وعمل كل شيء.

حصلت على نفس المشكلة مع Win10 / Anaconda3 / tf-1.3 / keras-2.1.3
أضف الكود التالي إلى بداية ملف .py ، والذي يحل مشكلتي.

from __future__ import print_function, division
import tensorflow as tf
from keras.backend.tensorflow_backend import set_session  
config = tf.ConfigProto()  
config.gpu_options.allow_growth = True  
set_session(tf.Session(config=config)) 

هههههههههههههه
هذا يعمل بالنسبة لي :)

شكرا لك @ zzhang68 . الحل الخاص بك يعمل معي.

إضافة هذا في بداية الملف يعمل لي:

التكوين = tf.ConfigProto ()
config.gpu_options.allow_growth = صحيح
sess = tf.Session (config = config)

GTX 1070. كان يحصل على هذه المشكلة. تم تحديث برنامج التشغيل الخاص بي آخر مرة في عام 2017. تم تحديثه إلى أحدث برنامج تشغيل (مايو 2018) ، وأعد تعيين جهاز الكمبيوتر الخاص بي وتوقف عن الحصول على المشكلة. أتمنى أن يساعدك هذا

يعمل بالنسبة لي أيضًا مع حل @ zzhang68 .
Ubuntu16.04 ، Tensorflow1.7 ، nvidia1080 ، cuda9.0 ، cudnn7.05.
بعد تحديث برنامج التشغيل إلى 390.59 ، اختفت المشكلة.

خيار آخر لـ win10 باستخدام tensorflow cpu ... جرب

def run_inference_for_single_image (صورة ، رسم بياني):
مع رسم بياني. as_default ():
التكوين = tf.ConfigProto (
device_count = {'GPU': 0}
)
مع tf.Session (config = config) كـ sess:

@ lwd1132438569 هل لي أن أسأل أي "أحدث إصدار" تقصد؟ واجهت أيضًا هذه المشكلة مع Ubuntu ، ولدي python 3.5.2 و CUDA 9.0 و tensorflow-gpu 1.9.0 ، وبرنامج التشغيل هو 390.48 في الوقت الحالي.
أريد أن أحاول ، لكنني أخشى أن Tensorflow لن يدعم الإصدار "الأحدث" الآن ...
شكرا 1

vburca شكرا جزيلا لك. لم أكن أدرك أن وجود دفتر ملاحظات آخر من نوع jupyter سيستهلك ذاكرة وحدة معالجة الرسومات. شكرا جزيلا!!!

أنا واجهت نفس المشكلة. لقد خفضت حالتي من إصدار tensorflow وعملت مع طلبي.

لقد وجدت نفس المشكلة. في حالتي ، كان هذا السبب هو نقص ذاكرة النظام. عندما انتهيت من تشغيل تطبيق آخر ، اختفت هذه المشكلة.

2018-09-03 22:50:26.576765: E tensorflow/stream_executor/cuda/cuda_dnn.cc:352] Could not create cudnn handle: CUDNN_STATUS_NOT_INITIALIZED
2018-09-03 22:50:26.576831: E tensorflow/stream_executor/cuda/cuda_dnn.cc:360] Possibly insufficient driver version: 390.77.0
[1]    8515 segmentation fault (core dumped)  python3 training.py

GTX1070
كودا 9.0
CUDNN7.1 لـ CUDA9.0
TensorFlow 1.10.1
تشغيل tensorflow بسيط مثل hello world بدون مشكلة.
لا مكان لمعرفة سبب حدوث ذلك .................

بالتأكيد مشكلة الذاكرة ذات الصلة cuda ، تقتل جميع العمليات الأخرى المتعلقة بـ cuda وتدريب / اختبار نموذجك ، الذي يجب أن يحل المشكلة

يبدو أن حل @ drproy2k فعالًا بالنسبة لي أيضًا. كانت المشكلة أنني كنت أشغل نسخة أخرى من دفتر ملاحظات jupyter باستخدام keras ، وكنت أحاول تشغيل تدريب keras في Pycharm. لذلك ببساطة إغلاق دفتر jupyter وقتل هذه العملية حل هذه المشكلة.

[محلول] في حالتي ، قمت بتثبيت CUDA v9.2 و cuDNN المقابل ، لكن لم أقم بتثبيت cuDNN الخاص بـ CUDA v9.0 الذي يتطلبه tensorflow بشكل صحيح.

تأكد من تنزيل الإصدار الصحيح من cuDNN من هنا: https://developer.nvidia.com/rdp/cudnn-archive

وليس من هنا: https://developer.nvidia.com/cudnn

الحيلة الذهبية ، إعادة تشغيل كل شيء ، عملت معي.

لقد فعلت
(لكن تفسير حدوث ذلك سيكون رائعًا حقًا)

cuDNN

كنت أواجه نفس المشكلة. لن تعمل النماذج ذات طبقات الالتفاف.
لقد قمت بتنزيل cuDNN الإصدار 7.0 لـ CUDA 9.0. بعد استبدال الملف cudnn64_7.dll ، يمكنني استخدام convnets دون أي متاعب.

إصدار DLL المتسبب في حدوث مشكلات => 6.14.11.9020
إصدار DLL الذي حل المشكلة => 6.14.11.9000
إصدار Tensorflow GPU => 1.11.00
إصدار CUDA => 9.0
إصدار Python => 3.5
نظام التشغيل => Windows 10
خطوات أخرى => قم بإنشاء ملف BAT لإلحاقه بالمتغير PATH ثم قم بتشغيل CMD.EXE مع خيار / k
شكرا لكم جميعا.

تمكنت من تشغيل برنامج عن طريق الحد من استخدام وحدة معالجة الرسومات. في حالتي مع 3 جيجابايت gtx 1060 على ubuntu 16.04 ، إذا قمت بتعيين خيار gpu per_process_gpu_memory_fraction على .7 فإنه يعمل. أي شيء أعلى ، أحصل على هذه الأخطاء

E tensorflow / stream_executor / cuda / cuda_dnn.cc: 397] تعذر إنشاء مقبض cudnn: CUDNN_STATUS_INTERNAL_ERROR
E tensorflow / stream_executor / cuda / cuda_dnn.cc: 364] تعذر تدمير مقبض cudnn: CUDNN_STATUS_BAD_PARAM
F tensorflow / core / kernels / conv_ops.cc: 605] فشل التحقق: تيار-> الأصل () -> GetConvolveAlgorithms (& algorithms)

يمكن أن تكون حالة الإبلاغ عن خطأ سيئ بواسطة Tensorflow. يبدو غير مرتبط على الإطلاق. ربما هو دليل على حل هذا بطريقة أفضل؟

رائع ، عندما أقوم بتقليل جزء gpu_memory_fraction من 0.8 إلى 0.7 ، يبدأ العمل!

لقد واجهت هذه المشكلة بعد ترقية tensorflow-gpu بطريق الخطأ من الإصدار 1.6.0 إلى 1.18.0. تسبب هذا في عدم الاستقرار بسبب إصدارات كل من CUDA و cuDNN. كان الحل يتراجع إلى tensorflow-gpu 1.6.0.

كان هذا هو الحل لمشاكلي:

https://stackoverflow.com/questions/50622525/which-tensorflow-and-cuda-version-combinations-are-compatible

عندما تبدأ في مواجهة هذا النوع من المشكلات ، قبل ترقية تبعيات NVIDIA ، حاول دائمًا حل المشكلة عن طريق إلغاء تثبيت إصدارات tensorflow وتثبيت إصدار متوافق مع تبعيات CUDA أولاً.

الخطوة 1: تحقق من إصدارات حزم tensorflow الخاصة بك. إذا كان لديك GPU ، فإنني أوصي بإلغاء تثبيت إصدار وحدة المعالجة المركزية من tensorflow لتجنب التعارضات.

pip list | grep tensorflow

الخطوة 2: إلغاء تثبيت tensorflow-gpu.

pip uninstall tensorflow

الخطوة 3: تحقق من إصدارات CUDA و cuDNN. قد تحتاج إلى ضبط هذه المسارات.

- كودا
cat /usr/local/cuda/version.txt
في حالة فشل ذلك ، ابحث عن الملف النصي لإصدار cuda باستخدام:
sudo find / -name version.txt

- cuDNN
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
في حالة فشل ذلك ، ابحث عن الملف النصي لإصدار cuda باستخدام:
sudo find / -name cudnn.h

الخطوة 4: تحقق مما إذا كانت إصدارات tensorflow-gpu و cuda و cudnn تتطابق مع هذا الجدول.
image

في حالتي ، كنت بحاجة إلى tensorflow-gpu 1.6.0 لمطابقة المتطلبات الأخرى.

لذلك قمت بتثبيت هذا الإصدار باستخدام:
pip install tensorflow-gpu==1.6.0
هذه هي المواصفات التي نجحت!

نظام التشغيل: Ubuntu 16.04
إصدار CUDA: 9.0، V9.0.176
إصدار cuDNN: 7.0.1
إصدار Tensorflow-gpu: 1.6.0
إصدار Python: 3.5.0

حظا طيبا وفقك الله!

في حالتي ، نسيت إغلاق دفتر jupyter عندما بدأت في تشغيل جزء آخر من التعليمات البرمجية في رمز VS ، فقد أصلح دفتر ملاحظات jupyter المشكلة.

واجهت نفس المشكلة.
في حالتي كنت أقوم بتشغيل دفتر Jupyter أثناء تدريب شبكتي.
أدى إغلاق دفتر Jupyter إلى إصلاح مشكلتي.

(أعتقد أنه قد يتعين عليه القيام بشيء ذي متطلبات عالية جدًا لوحدة معالجة الرسومات الخاصة بي)

أتمنى أن يكون هذا قد ساعد!

مرحبًا يا رفاق ، لقد واجهت نفس المشكلات. أنا باستخدام win10 tensorflow-gpu1.8.0 cuda 9.0 NVIDA gtx1050Ti ، عندما قمت بتغيير إصدار cudann من 7.0 إلى 7.1 ، تم حل المشكلة

واجهت نفس المشكلة اليوم (gtx1080 ، cuda 9.2 ، tfversion = 1.12.0). في حالتي ، كنت أشغل دفتر Jupyter ، ثم حاولت تشغيل البرنامج النصي الآخر ، وذلك عندما تم إلقاء الخطأ. ما تم حله ، مثل RoytenBerge قال ، إغلاق Jupyter kernal.

لقد نجحت معي عند إضافة هذه الأسطر من التعليمات البرمجية إلى بداية البرنامج النصيCodersadis

أضف الكود التالي إلى بداية ملف .py ، والذي يحل مشكلتي.

من __future__ استيراد print_function ، التقسيم
استيراد tensorflow مثل tf
من keras.backend.tensorflow_backend استيراد set_session
التكوين = tf.ConfigProto ()
config.gpu_options.allow_growth = صحيح
set_session (tf.Session (config = config))

@ drproy2k شكرًا لك ، لقد

هذا الخطأ بسبب مشكلة في ذاكرة الوصول العشوائي. نقترح عليك زيادة ذاكرة DDR3 أو DDR4 إلى 32 جيجابايت أو 64 جيجابايت.
قم أيضًا بتقليل كمية / حجم البيانات التي يتم الاستدلال عليها.

انها ليست GPU. لدي بطاقتا X 1080Ti في SLI.

لقد اتبعت دليل تثبيت الإصدار لحل هذا-
https://www.tensorflow.org/install/source#tested_source_configurations. التكوين المؤسس المتوافق
TF 1.12.0 تحديث
TF-GPU 1.9.0 تحديث
كودا 8

نفس المشكلة مع GeForce GTX 970 و CUDNN 7.4.1 و CUDA 9.0.176 و TF-gpu 1.12.0

كنت أواجه نفس المشكلة عند استخدام الإصدار المدعوم من المجتمع من Tensorflow داخل بيئة conda (على سبيل المثال ، استخدام> conda install tensorflow-gpu)

تبين أن هذا الإصدار ليس جيدًا في الواقع في جميع المواقف (على الرغم من أنني كنت أستخدمه على أجهزة أخرى). أفضل إصدار للاستخدام هو النسخة القابلة للتثبيت من خلال https://www.tensorflow.org/install/pip داخل بيئة conda. عندما فعلت هذا كل شيء يعمل.

لم أكن أدرك أنه كان لدي إصدار Cuda 10.0 من CUDNN lib مثبتًا جنبًا إلى جنب مع CUDA 9.0 الذي قمت بتثبيته حاليًا. بمجرد تنزيل V10 CUDNN واستبداله بـ V9.0 CUDNN ، كل شيء سار على ما يرام!
كانت هذه نظرة خاطفة على الفشل في تثبيت الأشياء بشكل صحيح ، وبالعودة إلى الوراء يمكنني معرفة السبب ... إذا كنت قد منشور مدونة على

kheffah لديها نفس المشكلة داخل Conda. تستخدم النقطة بالفعل لتثبيت TF و Keras.
GPU GT 840M ، متوافق مع الحوسبة 5.0 ، CUDA 9 ، cuDNN 7.4.2 ، TF 1.12.0. نظام التشغيل Windows 8 x64

كود الاختبار يعمل على ما يرام

a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
c = tf.matmul(a, b)

هذا هو الخطأ في سبايدر. جرب بالفعل الذاكرة 0.7 وخدعة النمو. لا حظ

classifier.fit_generator(training_set,
                    steps_per_epoch=32,
                    epochs=25,
                    verbose=1,
                    validation_data=test_set,
                    validation_steps=6.25)
Epoch 1/25
Traceback (most recent call last):

  File "<ipython-input-4-6d704090deaf>", line 11, in <module>
    validation_steps=6.25)

  File "c:\Users\maxi.wu\AppData\Local\conda\conda\envs\tfgpu\lib\site-packages\keras\legacy\interfaces.py", line 91, in wrapper
    return func(*args, **kwargs)

  File "c:\Users\maxi.wu\AppData\Local\conda\conda\envs\tfgpu\lib\site-packages\keras\engine\training.py", line 1418, in fit_generator
    initial_epoch=initial_epoch)

  File "c:\Users\maxi.wu\AppData\Local\conda\conda\envs\tfgpu\lib\site-packages\keras\engine\training_generator.py", line 217, in fit_generator
    class_weight=class_weight)

  File "c:\Users\maxi.wu\AppData\Local\conda\conda\envs\tfgpu\lib\site-packages\keras\engine\training.py", line 1217, in train_on_batch
    outputs = self.train_function(ins)

  File "c:\Users\maxi.wu\AppData\Local\conda\conda\envs\tfgpu\lib\site-packages\keras\backend\tensorflow_backend.py", line 2715, in __call__
    return self._call(inputs)

  File "c:\Users\maxi.wu\AppData\Local\conda\conda\envs\tfgpu\lib\site-packages\keras\backend\tensorflow_backend.py", line 2675, in _call
    fetched = self._callable_fn(*array_vals)

  File "c:\Users\maxi.wu\AppData\Local\conda\conda\envs\tfgpu\lib\site-packages\tensorflow\python\client\session.py", line 1439, in __call__
    run_metadata_ptr)

  File "c:\Users\maxi.wu\AppData\Local\conda\conda\envs\tfgpu\lib\site-packages\tensorflow\python\framework\errors_impl.py", line 528, in __exit__
    c_api.TF_GetCode(self.status.status))

UnknownError: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.
     [[{{node conv2d_1/convolution}} = Conv2D[T=DT_FLOAT, _class=["loc:@training/Adam/gradients/conv2d_1/convolution_grad/Conv2DBackpropFilter"], data_format="NCHW", dilations=[1, 1, 1, 1], padding="VALID", strides=[1, 1, 1, 1], use_cudnn_on_gpu=true, _device="/job:localhost/replica:0/task:0/device:GPU:0"](training/Adam/gradients/conv2d_1/convolution_grad/Conv2DBackpropFilter-0-TransposeNHWCToNCHW-LayoutOptimizer, conv2d_1/kernel/read)]]
     [[{{node loss/mul/_91}} = _Recv[client_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device="/job:localhost/replica:0/task:0/device:GPU:0", send_device_incarnation=1, tensor_name="edge_609_loss/mul", tensor_type=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:CPU:0"]()]]

قم بالتبديل إلى Tensorflow 1.7

في الخميس ، 3 يناير 2019 ، 19:29 كتب maxi.wu < [email protected] :

kheffah https://github.com/kheffah تواجه نفس المشكلة داخل Conda.
تستخدم النقطة بالفعل لتثبيت TF و Keras.
GPU GT 840M ، متوافق مع الحوسبة 5.0 ، CUDA 9 ، cuDNN 7.4.2 ، TF 1.12.0.
نظام التشغيل Windows 8 x64

كود الاختبار يعمل على ما يرام

أ = tf.constant ([1.0 ، 2.0 ، 3.0 ، 4.0 ، 5.0 ، 6.0] ، الشكل = [2 ، 3] ، الاسم = 'أ')
b = tf.constant ([1.0 ، 2.0 ، 3.0 ، 4.0 ، 5.0 ، 6.0] ، الشكل = [3 ، 2] ، الاسم = 'ب')
ج = tf.matmul (أ ، ب)

هذا هو الخطأ في سبايدر. جرب بالفعل الذاكرة 0.7 وخدعة النمو.
لا حظ

classifier.fit_generator (training_set،
steps_per_epoch = 32 ،
العهود = 25 ،
مطول = 1 ،
Validation_data = test_set ،
Validation_steps = 6.25)
حقبة 1/25
Traceback (آخر مكالمة أخيرة):

ملف ""، السطر 11 ، بوصة
Validation_steps = 6.25)

ملف "c: \ Users \ maxi.wu \ AppData \ Local \ conda \ conda \ envs \ tfgpu \ lib \ site-packs \ keras \ legacy \ interfaces.py" ، السطر 91 ، في المجمع
عودة func ( args ، * kwargs)

ملف "c: \ Users \ maxi.wu \ AppData \ Local \ conda \ conda \ envs \ tfgpu \ lib \ site-packs \ keras \ engine \ training.py" ، السطر 1418 ، في fit_generator
Init_epoch = initial_epoch)

ملف "c: \ Users \ maxi.wu \ AppData \ Local \ conda \ conda \ envs \ tfgpu \ lib \ site -packs \ keras \ engine \ training_generator.py" ، السطر 217 ، في fit_generator
class_weight = class_weight)

ملف "c: \ Users \ maxi.wu \ AppData \ Local \ conda \ conda \ envs \ tfgpu \ lib \ site-packs \ keras \ engine \ training.py" ، السطر 1217 ، في train_on_batch
المخرجات = self.train_function (ins)

ملف "c: \ Users \ maxi.wu \ AppData \ Local \ conda \ conda \ envs \ tfgpu \ lib \ site-packs \ keras \ backend \ tensorflow_backend.py" ، السطر 2715 ، في __call__
إرجاع self._call (المدخلات)

ملف "c: \ Users \ maxi.wu \ AppData \ Local \ conda \ conda \ envs \ tfgpu \ lib \ site-packs \ keras \ backend \ tensorflow_backend.py" ، السطر 2675 ، في _call
الجلب = self._callable_fn (* array_vals)

ملف "c: \ Users \ maxi.wu \ AppData \ Local \ conda \ conda \ envs \ tfgpu \ lib \ site-packs \ tensorflow \ python \ client \ session.py" ، السطر 1439 ، في __call__
run_metadata_ptr)

ملف "c: \ Users \ maxi.wu \ AppData \ Local \ conda \ conda \ envs \ tfgpu \ lib \ site-bunds \ tensorflow \ python \ framework \ errors_impl.py" ، السطر 528 ، في __exit__
c_api.TF_GetCode (self.status.status))

خطأ غير معروف: فشل في الحصول على خوارزمية الالتفاف. ربما يكون هذا بسبب فشل cuDNN في التهيئة ، لذا حاول البحث لمعرفة ما إذا تمت طباعة رسالة سجل تحذير أعلاه.
[[{{node conv2d_1 / convolution}} = Conv2D [T = DT_FLOAT، _class = [" loc: @ training / Adam / gradients / conv2d_1 / convolution_grad / Conv2DBackpropFilter "]، data_format = "NCHW"، تمدد = [1، 1 ، 1، 1]، padding = "VALID"، strides = [1، 1، 1، 1]، use_cudnn_on_gpu = true، _device = "/ job: localhost / replica : 0 / task: 0 / device : GPU: 0 " ] (تدريب / Adam / gradients / conv2d_1 / convolution_grad / Conv2DBackpropFilter-0-TransposeNHWCToNCHW-LayoutOptimizer ، conv2d_1 / kernel / read)]]
[[{{node loss / mul / _91}} = _Recv [client_terminated = false، recv_device = "/ job: localhost / replica : 0 / task: 0 / device : CPU: 0 "، send_device = "/ job: localhost / النسخة المطابقة : 0 / المهمة: 0 / الجهاز : GPU: 0 "، send_device_incarnation = 1 ، tensor_name =" edge_609_loss / mul "، tensor_type = DT_FLOAT ، _device =" / الوظيفة: المضيف المحلي المهمة: 0 / الجهاز : وحدة المعالجة المركزية : 0 "] ()]]

-
أنت تتلقى هذا لأنك علقت.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/tensorflow/tensorflow/issues/6698#issuecomment-451079405 ،
أو كتم الخيط
https://github.com/notifications/unsubscribe-auth/ABE215xY0OhbFjA_GhVtEIDl_IB4qQGmks5u_b9NgaJpZM4Lc7S1
.

كان لدي نفس المشكلة على نظام win10. ولكن وجد أنها مشكلة في الذاكرة. اقتل التطبيق قيد التشغيل الآخر الذي يستهلك موارد ذاكرة ضخمة وجرب.

واجهت مشكلة مماثلة في نظام التشغيل windows 10 NVIDIA GEFORCE GTX 1050 وبمجرد أن أغلقت جميع مهام التشغيل الأخرى ، وأعدت المحاولة على النحو الذي اقترحه الشكل . أعتقد أن هذا يجب أن يكون مشكلة متعلقة بالذاكرة.

بالتأكيد الذاكرة ذات الصلة. يجب عليك ترقية ذاكرة الوصول العشوائي الخاصة بك حتى 64 جيجابايت.

في الجمعة ، 18 يناير 2019 الساعة 5:30 مساءً ، كتب Samuel Nde [email protected] :

واجهت مشكلة مماثلة في نظام التشغيل windows 10 NVIDIA GEFORCE GTX 1050 وبسرعة
لأنني أغلقت جميع المهام الأخرى قيد التشغيل ، وأعدت المحاولة وفقًا لما اقترحه @ xhm1014
https://github.com/xhm1014 أعلاه ، بدأ الكود الخاص بي للتو في العمل مثل
الذي - التي. أعتقد أن هذا يجب أن يكون مشكلة متعلقة بالذاكرة.

-
أنت تتلقى هذا لأنك علقت.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/tensorflow/tensorflow/issues/6698#issuecomment-455441208 ،
أو كتم الخيط
https://github.com/notifications/unsubscribe-auth/ABE217cdDKUuRtdD9jJ_eh2tJWrm2fjeks5vEWnwgaJpZM4Lc7S1
.

كان لدي الخطأ وقمت بإصلاحه عن طريق إغلاق مثيلاتي المتعددة من Jupyter وإغلاق التطبيقات الأخرى. أنا جديد في العمل مع tensorflow بشكل عام ، لذا من المحتمل أن هذا حل مشكلتي فقط.

E tensorflow / stream_executor / cuda / cuda_dnn.cc: 353] تعذر إنشاء مقبض cudnn: CUDNN_STATUS_INTERNAL_ERROR

واجهت هذه المشكلة مع 10.1 Cuda + cuDNN7.5 و TF 1.11 تم تجميعها من المصدر باستخدام cuda. احتاج البرنامج النصي الذي كنت أحاول استخدامه إلى إدراج هذه الأسطر في مكان ما:
config = tf.ConfigProto() config.gpu_options.allow_growth = True

وبعد ذلك:
sess = tf.Session(graph=detection_graph,config=config)

تم القيام بذلك ، الكثير من "أخطاء الذاكرة نفد GPU" - لكن الاكتشاف يتم بسرعة كبيرة كما أفترض أنه يجب أن يحدث عندما نستخدم GPU. شكرا للمشاركة!

واجهت نفس المشكلات واستخدمت السطر أدناه لإصلاحها. تحقق هنا للحصول على التفاصيل.
تصدير LD_LIBRARY_PATH = $ LD_LIBRARY_PATH: / usr / local / cuda / extras / CUPTI / lib64

EncodeTS لقد قمت للتو بإضافة مثال

في الواقع ، أنا أعمل على Ubuntu 18.04 ، وليس macOS ، ولكن هذا يبدو منطقيًا أنه قد يكون ناتجًا عن بعض قيود الموارد. لقد واجهت نفس المشكلة على GTX 1050 ti (4 جيجابايت) ولكن المشكلة اختفت عندما أقوم بتشغيل نفس البنية على GTX 1080 ti (11 جيجابايت). على الرغم من أن جميع البيئات ليست هي نفسها بين النظامين ، فقد بذلت قصارى جهدي من خلال استخدام حاوية عامل الإرساء.

ترتبط هذه المشكلة عمومًا بإصدار ذاكرة cuda و GPU ، إذا كانت سابقة ، فإن أسهل طريقة هي تغيير إصدار cuda الخاص بك بواسطة Anaconda! إذا كان في وقت لاحق ، يمكنك العثور على بعض الطرق لحلها في إجابات أخرى.
ترتبط هذه المشكلة بشكل عام بذاكرة الفيديو وإصدار cuda. ​​إذا كانت الطريقة المذكورة أعلاه لتغيير ذاكرة GPU غير صالحة ، ففكر في تغيير إصدار cuda. ​​أسهل طريقة هي عدم القلق بشأن إصدار cuda المثبت في النظام ، مباشرة تحت بيئة المشروع في Anaconda فقط قم بتعديل إصدار cuda ، والاختبار المحترف صالح.

إذا كنت لا تزال تواجه هذه المشكلة ، فجرّب ما يلي. عملت معي
tf.config.gpu.set_per_process_memory_growth(True); tf.config.gpu.set_per_process_memory_fraction(0.4);

تينسورفلو 2 ألفا
كودا 10.0
GTX 1650

لدي مشكلة مماثلة: CUDNN_STATUS_ALLOC_FAILED.
كسرت رأسي لمدة 3-4 ساعات. تم إصلاحه أخيرًا.
هذا بالفعل يعمل ، كما ذكر أعلاه من قبل الكثيرين:
التكوين = tf.ConfigProto ()
config.gpu_options.allow_growth = صحيح
جلسة = tf.Session (config = config)

لكن المفتاح هو كتابته مباشرة أسفل "استيراد tensorflow كـ tf" وهو ما لم أفعله. كنت قد كتبته بعد كل الواردات.

قد يكون إصدار tensorflow-gpu به مشاكل ، يجب عليك التحقق من الإصدارات الخاصة بك حاول مرارًا وتكرارًا ، قم بإلغاء التثبيت والتثبيت ... ابحث عن رقم الإصدار المطابق ثم قم بإلغاء التثبيت وإعادة التثبيت

لقد نجحت معي عند إضافة هذه الأسطر من التعليمات البرمجية إلى بداية البرنامج النصيCodersadis

أضف الكود التالي إلى بداية ملف .py ، والذي يحل مشكلتي.

من وظيفة الطباعة في المستقبل ، التقسيم
استيراد tensorflow مثل tf
من keras.backend.tensorflow_backend استيراد set_session
التكوين = tf.ConfigProto ()
config.gpu_options.allow_growth = صحيح
set_session (tf.Session (config = config))

يظهر لي الخطأ نفسه مع tensorflow-gpu == 1.8.0 و cudnn version = 7.0.5 و cuda 9.1.85
، ubuntu 16.04 حتى بعد إضافة الحل المقترح أعلاه.
فيما يلي تتبع المكدس:

INFO - Waveunet Training - Running command 'run'
INFO - Waveunet Training - Started
SCRIPT START
EPOCH: 0
Dataset ready!
Training...
Sep_Vars: 10265550
Num of variables65
2019-07-25 05:10:09.872823: I tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2019-07-25 05:10:10.286584: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:898] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-07-25 05:10:10.286914: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1356] Found device 0 with properties: 
name: Quadro P4000 major: 6 minor: 1 memoryClockRate(GHz): 1.48
pciBusID: 0000:00:05.0
totalMemory: 7.92GiB freeMemory: 7.83GiB
2019-07-25 05:10:10.286964: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1435] Adding visible gpu devices: 0
2019-07-25 05:10:10.640890: I tensorflow/core/common_runtime/gpu/gpu_device.cc:923] Device interconnect StreamExecutor with strength 1 edge matrix:
2019-07-25 05:10:10.640952: I tensorflow/core/common_runtime/gpu/gpu_device.cc:929]      0 
2019-07-25 05:10:10.640968: I tensorflow/core/common_runtime/gpu/gpu_device.cc:942] 0:   N 
2019-07-25 05:10:10.641194: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1053] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 7566 MB memory) -> physical GPU (device: 0, name: Quadro P4000, pci bus id: 0000:00:05.0, compute capability: 6.1)
2019-07-25 05:10:27.643833: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:94] Filling up shuffle buffer (this may take a while): 2054 of 4000
2019-07-25 05:10:35.917445: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:129] Shuffle buffer filled.
2019-07-25 05:10:36.175698: E tensorflow/stream_executor/cuda/cuda_dnn.cc:455] could not create cudnn handle: CUDNN_STATUS_NOT_INITIALIZED
2019-07-25 05:10:36.175820: E tensorflow/stream_executor/cuda/cuda_dnn.cc:463] possibly insufficient driver version: 384.183.0
2019-07-25 05:10:36.175842: E tensorflow/stream_executor/cuda/cuda_dnn.cc:427] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
2019-07-25 05:10:36.175859: F tensorflow/core/kernels/conv_ops.cc:713] Check failed: stream->parent()->GetConvolveAlgorithms( conv_parameters.ShouldIncludeWinogradNonfusedAlgo<T>(), &algorithms) 
Aborted (core dumped)

الرجاء المساعدة

لدي مشكلة مماثلة: CUDNN_STATUS_ALLOC_FAILED.
كسرت رأسي لمدة 3-4 ساعات. تم إصلاحه أخيرًا.
هذا بالفعل يعمل ، كما ذكر أعلاه من قبل الكثيرين:
التكوين = tf.ConfigProto ()
config.gpu_options.allow_growth = صحيح
جلسة = tf.Session (config = config)

لكن المفتاح هو كتابته مباشرة أسفل "استيراد tensorflow كـ tf" وهو ما لم أفعله. كنت قد كتبته بعد كل الواردات.

رد رائع ، نجح معي !!

لقد نجحت معي عند إضافة هذه الأسطر من التعليمات البرمجية إلى بداية البرنامج النصيCodersadis
أضف الكود التالي إلى بداية ملف .py ، والذي يحل مشكلتي.
من وظيفة الطباعة في المستقبل ، التقسيم
استيراد tensorflow مثل tf
من keras.backend.tensorflow_backend استيراد set_session
التكوين = tf.ConfigProto ()
config.gpu_options.allow_growth = صحيح
set_session (tf.Session (config = config))

يظهر لي الخطأ نفسه مع tensorflow-gpu == 1.8.0 و cudnn version = 7.0.5 و cuda 9.1.85
، ubuntu 16.04 حتى بعد إضافة الحل المقترح أعلاه.
فيما يلي تتبع المكدس:

INFO - Waveunet Training - Running command 'run'
INFO - Waveunet Training - Started
SCRIPT START
EPOCH: 0
Dataset ready!
Training...
Sep_Vars: 10265550
Num of variables65
2019-07-25 05:10:09.872823: I tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2019-07-25 05:10:10.286584: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:898] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-07-25 05:10:10.286914: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1356] Found device 0 with properties: 
name: Quadro P4000 major: 6 minor: 1 memoryClockRate(GHz): 1.48
pciBusID: 0000:00:05.0
totalMemory: 7.92GiB freeMemory: 7.83GiB
2019-07-25 05:10:10.286964: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1435] Adding visible gpu devices: 0
2019-07-25 05:10:10.640890: I tensorflow/core/common_runtime/gpu/gpu_device.cc:923] Device interconnect StreamExecutor with strength 1 edge matrix:
2019-07-25 05:10:10.640952: I tensorflow/core/common_runtime/gpu/gpu_device.cc:929]      0 
2019-07-25 05:10:10.640968: I tensorflow/core/common_runtime/gpu/gpu_device.cc:942] 0:   N 
2019-07-25 05:10:10.641194: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1053] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 7566 MB memory) -> physical GPU (device: 0, name: Quadro P4000, pci bus id: 0000:00:05.0, compute capability: 6.1)
2019-07-25 05:10:27.643833: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:94] Filling up shuffle buffer (this may take a while): 2054 of 4000
2019-07-25 05:10:35.917445: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:129] Shuffle buffer filled.
2019-07-25 05:10:36.175698: E tensorflow/stream_executor/cuda/cuda_dnn.cc:455] could not create cudnn handle: CUDNN_STATUS_NOT_INITIALIZED
2019-07-25 05:10:36.175820: E tensorflow/stream_executor/cuda/cuda_dnn.cc:463] possibly insufficient driver version: 384.183.0
2019-07-25 05:10:36.175842: E tensorflow/stream_executor/cuda/cuda_dnn.cc:427] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
2019-07-25 05:10:36.175859: F tensorflow/core/kernels/conv_ops.cc:713] Check failed: stream->parent()->GetConvolveAlgorithms( conv_parameters.ShouldIncludeWinogradNonfusedAlgo<T>(), &algorithms) 
Aborted (core dumped)

الرجاء المساعدة

أدى تغيير برنامج تشغيل Nvidia إلى 396+ إلى حل المشكلة بالنسبة لي.

يتعلق الأمر بجزء الذاكرة المتاح لتحميل موارد GPU لإنشاء مقبض cudnn ، والمعروف أيضًا باسم per_process_gpu_memory_fraction .
سيؤدي تقليل جزء الذاكرة هذا بنفسك إلى حل الخطأ.

> sess_config = tf.ConfigProto(gpu_options =
> tf.GPUOptions(per_process_gpu_memory_fraction=0.7),
> allow_soft_placement = True)
> 
> with tf.Session(config=sess_config) as sess:
>      sess.run([whatever])

استخدم جزء صغير بقدر ما يمكن أن يتسع في ذاكرتك. (في الكود ، أستخدم 0.7 ، يمكنك أن تبدأ بـ 0.3 أو حتى أصغر ، ثم تزيد حتى تحصل على نفس الخطأ ، هذا هو الحد الخاص بك.)
قم بتمريره إلى tf.Session() أو tf.train.MonitoredTrainingSession() أو المشرف sv.managed_session() كإعداد.

يجب أن يسمح هذا لوحدة معالجة الرسومات الخاصة بك بإنشاء مقبض cudnn لرمز TensorFlow الخاص بك.

لقد تلقيت الخطأ التالي مع tensorflow 2.0 في بيئة كوندا الخاصة بي.

"" 2019-12-03 23: 48: 29.888625: أنا tensorflow / stream_executor / platform / default / dso_loader.cc: 44] تم فتح مكتبة ديناميكية بنجاح cudart64_100.dll
2019-12-03 23: 49: 06.381259: أنا tensorflow / stream_executor / platform / default / dso_loader.cc: 44] تم فتح مكتبة ديناميكية بنجاح nvcuda.dll
2019-12-03 23: 49: 07.220066: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1618] تم العثور على الجهاز 0 مع الخصائص:
الاسم: GeForce GTX 1660 Ti الكبرى: 7 ثانوي: 5 ذاكرة معدل سرعة الدوران (جيجاهرتز): 1.59
معرف PCiBus: 0000: 01: 00.0
2019-12-03 23: 49: 07.236411: I tensorflow / stream_executor / platform / default / dlopen_checker_stub.cc: 25] مكتبات GPU مرتبطة بشكل ثابت ، تخطي فحص dlopen.
2019-12-03 23: 49: 07.247476: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1746] إضافة أجهزة gpu المرئية: 0
2019-12-03 23: 49: 07.256881: I tensorflow / core / platform / cpu_feature_guard.cc: 142] تدعم وحدة المعالجة المركزية الخاصة بك التعليمات التي تفيد بأن TensorFlow الثنائي لم يتم تجميعه لاستخدامه: AVX2
2019-12-03 23: 49: 07.269536: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1618] تم العثور على الجهاز 0 مع الخصائص:
الاسم: GeForce GTX 1660 Ti الكبرى: 7 ثانوي: 5 ذاكرة معدل سرعة الدوران (جيجاهرتز): 1.59
معرف PCiBus: 0000: 01: 00.0
2019-12-03 23: 49: 07.281954: I tensorflow / stream_executor / platform / default / dlopen_checker_stub.cc: 25] مكتبات GPU مرتبطة بشكل ثابت ، تخطي فحص dlopen.
2019-12-03 23: 49: 07.295302: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1746] إضافة أجهزة GPU المرئية: 0
2019-12-03 23: 49: 08.589865: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1159] جهاز الاتصال البيني StreamExecutor مع مصفوفة حافة واحدة قوية:
2019-12-03 23: 49: 08.599121: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1165] 0
2019-12-03 23: 49: 08.610543: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1178] 0: N
2019-12-03 23: 49: 08.616005: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1304] تم إنشاء جهاز TensorFlow (/ job: localhost / replica: 0 / task: 0 / device: GPU: 0 with 4627 ذاكرة MB) -> GPU المادية (الجهاز: 0 ، الاسم: GeForce GTX 1660 Ti ، معرف ناقل pci: 0000: 01: 00.0 ، إمكانية الحوسبة: 7.5)
2019-12-03 23: 49: 58.521484: أنا tensorflow / stream_executor / platform / default / dso_loader.cc: 44] تم فتح مكتبة ديناميكية بنجاح cublas64_100.dll
2019-12-03 23: 49: 59.604517: أنا tensorflow / stream_executor / platform / default / dso_loader.cc: 44] تم فتح مكتبة ديناميكية بنجاح cudnn64_7.dll
2019-12-03 23: 50: 04.209110: E tensorflow / stream_executor / cuda / cuda_dnn.cc: 329] تعذر إنشاء مقبض cudnn: CUDNN_STATUS_NOT_INITIALIZED
2019-12-03 23: 50: 04.216670: E tensorflow / stream_executor / cuda / cuda_dnn.cc: 333] خطأ في استرداد إصدار برنامج التشغيل: غير مُنفَّذ: أبلغت kernel عن إصدار برنامج التشغيل غير مطبق على Windows
2019-12-03 23: 50: 04.226172: E tensorflow / stream_executor / cuda / cuda_dnn.cc: 329] تعذر إنشاء مقبض cudnn: CUDNN_STATUS_NOT_INITIALIZED
2019-12-03 23: 50: 04.234741: E tensorflow / stream_executor / cuda / cuda_dnn.cc: 333] خطأ في استرداد إصدار برنامج التشغيل: غير مُنفَّذ: أبلغت kernel عن إصدار برنامج التشغيل غير مطبق على Windows
2019-12-03 23: 50: 04.244958: W tensorflow / core / common_runtime / base_collective_executor.cc: 216] BaseCollectiveExecutor :: StartAbort غير معروف: فشل في الحصول على خوارزمية الالتفاف. ربما يكون هذا بسبب فشل cuDNN في التهيئة ، لذا حاول البحث لمعرفة ما إذا تمت طباعة رسالة سجل تحذير أعلاه.
[[{{node sequential / conv2d / Conv2D}}]]

so i added the following code to my CNN

gpus = tf.config.experimental.list_physical_devices ("GPU")
tf.config.experimental.set_memory_growth (gpus [0]، True)

My output is now

2019-12-04 00: 10: 07.708573: I tensorflow / stream_executor / platform / default / dso_loader.cc: 44] تم فتح مكتبة ديناميكية بنجاح cudart64_100.dll
2019-12-04 00: 10: 11.643304: I tensorflow / stream_executor / platform / default / dso_loader.cc: 44] تم فتح مكتبة ديناميكية بنجاح nvcuda.dll
2019-12-04 00: 10: 12.753615: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1618] تم العثور على الجهاز 0 مع الخصائص:
الاسم: GeForce GTX 1660 Ti الكبرى: 7 ثانوي: 5 ذاكرة معدل سرعة الدوران (جيجاهرتز): 1.59
معرف PCiBus: 0000: 01: 00.0
2019-12-04 00: 10: 12.769498: I tensorflow / stream_executor / platform / default / dlopen_checker_stub.cc: 25] مكتبات GPU مرتبطة بشكل ثابت ، تخطي فحص dlopen.
2019-12-04 00: 10: 12.783900: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1746] إضافة أجهزة gpu المرئية: 0
2019-12-04 00: 10: 54.941468: I tensorflow / core / platform / cpu_feature_guard.cc: 142] تدعم وحدة المعالجة المركزية الخاصة بك التعليمات التي تفيد بأن TensorFlow الثنائي لم يتم تجميعه لاستخدامه: AVX2
2019-12-04 00: 10: 55.372516: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1618] تم العثور على الجهاز 0 مع الخصائص:
الاسم: GeForce GTX 1660 Ti الكبرى: 7 ثانوي: 5 ذاكرة معدل سرعة الدوران (جيجاهرتز): 1.59
معرف PCiBus: 0000: 01: 00.0
2019-12-04 00: 10: 55.383385: I tensorflow / stream_executor / platform / default / dlopen_checker_stub.cc: 25] مكتبات GPU مرتبطة بشكل ثابت ، تخطي فحص dlopen.
2019-12-04 00: 10: 55.406053: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1746] إضافة أجهزة gpu مرئية: 0
2019-12-04 00: 10: 56.741665: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1159] جهاز الاتصال البيني StreamExecutor مع مصفوفة حافة واحدة قوية:
2019-12-04 00: 10: 56.747255: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1165] 0
2019-12-04 00: 10: 56.752302: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1178] 0: N
2019-12-04 00: 10: 56.756861: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1304] تم إنشاء جهاز TensorFlow (/ job: localhost / replica: 0 / task: 0 / device: GPU: 0 with 4627 ذاكرة MB) -> GPU المادية (الجهاز: 0 ، الاسم: GeForce GTX 1660 Ti ، معرف ناقل pci: 0000: 01: 00.0 ، إمكانية الحوسبة: 7.5)
2019-12-04 00: 11: 08.281356: I tensorflow / stream_executor / platform / default / dso_loader.cc: 44] تم فتح مكتبة ديناميكية بنجاح cublas64_100.dll
2019-12-04 00: 11: 08.934804: I tensorflow / stream_executor / platform / default / dso_loader.cc: 44] تم فتح مكتبة ديناميكية بنجاح cudnn64_7.dll
2019-12-04 00: 11: 11.870237: W tensorflow / stream_executor / cuda / redzone_allocator.cc: 312] داخلي: استدعاء ptxas غير مدعوم على Windows
الاعتماد على السائق لأداء تجميع ptx. سيتم تسجيل هذه الرسالة مرة واحدة فقط.
""

كما اقترح الجميع ، يرجع ذلك إلى تدفق التوتر باستخدام جميع وحدات معالجة الرسومات / وحدات معالجة الرسومات. قطارات CNN الخاصة بي بدون أخطاء الآن.

كنت أواجه نفس المشكلة عند استخدام الإصدار المدعوم من المجتمع من Tensorflow داخل بيئة conda (على سبيل المثال ، استخدام> conda install tensorflow-gpu)

تبين أن هذا الإصدار ليس جيدًا في الواقع في جميع المواقف (على الرغم من أنني كنت أستخدمه على أجهزة أخرى). أفضل إصدار للاستخدام هو النسخة القابلة للتثبيت من خلال https://www.tensorflow.org/install/pip داخل بيئة conda. عندما فعلت هذا كل شيء يعمل.

هذا تم حله بالنسبة لي ، شكرا!

هذا أيضا حل المشكلة بالنسبة لي.

GeForce GTX 1050 ، CUDA 10.0.0 تحديث

ملاحظة: هذا هو الشيء الوحيد الذي يمكنني أن أجده يعمل في TF 2.0 في الوقت الحالي. شكرا!

gpus = tf.config.experimental.list_physical_devices ("GPU")
tf.config.experimental.set_memory_growth (gpus [0]، True)

هذا أيضا حل المشكلة بالنسبة لي.

GeForce GTX 1050 ، CUDA 10.0.0 تحديث

ملاحظة: هذا هو الشيء الوحيد الذي يمكنني أن أجده يعمل في TF 2.0 في الوقت الحالي. شكرا!

gpus = tf.config.experimental.list_physical_devices ("GPU")
tf.config.experimental.set_memory_growth (gpus [0]، True)

هذا لم يحدث أي فرق بالنسبة لي ... TF 2.0 ، RTX 2060 ، CUDA 10.1 ، CuDNN 7.6

هذا مع 16 جيجابايت من ذاكرة الوصول العشوائي ، وذاكرة فيديو 6 جيجابايت ، ونموذج لعبة MNIST أساسي بطبقة تحويل واحدة. لا توجد مشاكل في الذاكرة ، مجرد أثر كومة.

لا توجد مشاكل GPU على الإطلاق مع Pytorch ، كالمعتاد

في حالتي ، لدي جهازان ، كلاهما مع RTX 2080Ti ، TF 2.1 ، CUDA 10.1 ، CuDNN 7.6. أحدهما يعمل والآخر يثير الخطأ المذكور أعلاه. كلا الجهازين لهما نفس القدر من ذاكرة الوصول العشوائي ، 16 جيجابايت. هناك اختلافات في الأجهزة ، مثل وحدة المعالجة المركزية. لكن المشكلة تحدث فقط عند استخدام وحدة معالجة الرسومات.

في حالتي ، لدي جهازان ، كلاهما مع RTX 2080Ti ، TF 2.1 ، CUDA 10.1 ، CuDNN 7.6. أحدهما يعمل والآخر يثير الخطأ المذكور أعلاه. كلا الجهازين لهما نفس القدر من ذاكرة الوصول العشوائي ، 16 جيجابايت. هناك اختلافات في الأجهزة ، مثل وحدة المعالجة المركزية. لكن المشكلة تحدث فقط عند استخدام وحدة معالجة الرسومات.

نفس المنصة ، نفس المشكلة

إذا كنت تستخدم أحدث Tensorflow و keras. جرب هذا من هنا ، لقد نجحت معي:

gpus = tf.config.experimental.list_physical_devices('GPU')
if gpus:
  try:
    # Currently, memory growth needs to be the same across GPUs
    for gpu in gpus:
      tf.config.experimental.set_memory_growth(gpu, True)
    logical_gpus = tf.config.experimental.list_logical_devices('GPU')
    print(len(gpus), "Physical GPUs,", len(logical_gpus), "Logical GPUs")
  except RuntimeError as e:
    # Memory growth must be set before GPUs have been initialized
    print(e)

هذا واحد يعمل بالنسبة لي.
Physical_devices = tf.config.list_physical_devices ("GPU")
tf.config.experimental.set_memory_growth (الأجهزة المادية [0] ، صحيح)

هذا واحد يعمل بالنسبة لي.
Physical_devices = tf.config.list_physical_devices ("GPU")
tf.config.experimental.set_memory_growth (الأجهزة المادية [0] ، صحيح)

هذا عمل معي. شكرا

@ Samaritan1011001 الحل الخاص بك يعمل بالنسبة لي شكرا جزيلا.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات