-1

在 Ubuntu 18.04 上设置 Anaconda 2018.12 后,我正在运行以下 Keras/TensorFlow 代码。我有 Nvidia 驱动程序 390.116 和 GTX 1070 GPU。但是,当我尝试运行这个简单的 MNIST 示例时

import tensorflow as tf
mnist = tf.keras.datasets.mnist

(x_train, y_train),(x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0

model = tf.keras.models.Sequential([
  tf.keras.layers.Flatten(input_shape=(28, 28)),
  tf.keras.layers.Dense(512, activation=tf.nn.relu),
  tf.keras.layers.Dropout(0.2),
  tf.keras.layers.Dense(10, activation=tf.nn.softmax)
])
model.compile(optimizer='adam',
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])

model.fit(x_train, y_train, epochs=5)
model.evaluate(x_test, y_test)

我得到一个回溯,指出新的 NVidia 驱动程序不够新。整个回溯很长,但我认为关键是

文件“/home/christopher/anaconda3/envs/tensorflow_gpuenv/lib/python3.6/site-packages/tensorflow/python/client/session.py”,第 676 行,在init self._session = tf_session.TF_NewSessionRef(self._graph ._c_graph, opts) tensorflow.python.framework.errors_impl.InternalError: cudaGetDevice() 失败。状态:CUDA 驱动程序版本对于 CUDA 运行时版本不足

这似乎没有意义,因为这是 Ubuntu 18.04 可用的最新驱动程序。这不是早先驱动程序不足问题的重复,因为我使用的是 Nvidia 驱动程序 390.116。

4

1 回答 1

1

我通过查看上面提到的关于 pugetsystems 的文章解决了这个问题。但是,清除旧驱动程序并安装该文章中建议的驱动程序对我不起作用。但是,在清除原始 Nvidia 驱动程序 (390.116)、切换到 Nouveau、重新启动并使用 Software and Sources 应用程序中的 Additional Drivers 属性页面安装 Nvidia 驱动程序 415.27 之后,我能够成功运行示例代码。

于 2019-03-18T01:53:51.730 回答