在 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。