defenestrator
defenestrator

Reputation: 181

Tensorflow does not recognize GPU on AWS

So here it goes: I wanted to use TensorFlow with GPU on AWS - p2.xlarge plan. Unfortunately, something must have gone wrong and I continue to get:

InvalidArgumentError (see above for traceback): Cannot assign a device to node 'Variable_1': Could not satisfy explicit device specification '/device:GPU:0' because no devices matching that specification are registered in this process; available devices: /job:localhost/replica:0/task:0/cpu:0  

I checked both CUDA and cuDNN:

nvcc -V
cat /usr/local/cuda/include/cudnn.h

and got 8.0 and 5.1, respectively.

I call gpu like this:

with tf.device('/gpu:0'):
  a = tf.Variable(tf.truncated_normal([100, 100]))
  b = tf.Variable(tf.truncated_normal([100, 1000]))

with tf.Session() as sess:
  sess.run(tf.matmul(a,b))

happy to post more details if necessary - don't know what will be useful yet.

Upvotes: 0

Views: 1443

Answers (1)

Julien Simon
Julien Simon

Reputation: 2719

I suppose you're trying to set up an EC2 instance from scratch? That can be difficult.

Instead, I'd strongly recommend using the Deep Learning AMI (https://aws.amazon.com/machine-learning/amis/). It comes preinstalled with everything you need (drivers, popular DL libraries, etc.). It's also free to use, you just pay for the instance itself.

Upvotes: 1

Related Questions