Skip to content

Instantly share code, notes, and snippets.

@gregjhogan
Last active June 8, 2018 06:24
Show Gist options
  • Select an option

  • Save gregjhogan/a4f3b69d5f2c1b770c46c9665a35fef2 to your computer and use it in GitHub Desktop.

Select an option

Save gregjhogan/a4f3b69d5f2c1b770c46c9665a35fef2 to your computer and use it in GitHub Desktop.
tensor flow gpu vs cpu
# docker run -runtime=nvidia --rm -ti -v "${PWD}:/app" tensorflow/tensorflow:latest-gpu python /app/test.py gpu 10000
import sys
import numpy as np
import tensorflow as tf
from datetime import datetime
device_name = sys.argv[1] # Choose device from cmd line. Options: gpu or cpu
shape = (int(sys.argv[2]), int(sys.argv[2]))
if device_name == "gpu":
device_name = "/gpu:0"
else:
device_name = "/cpu:0"
with tf.device(device_name):
random_matrix = tf.random_uniform(shape=shape, minval=0, maxval=1)
dot_operation = tf.matmul(random_matrix, tf.transpose(random_matrix))
sum_operation = tf.reduce_sum(dot_operation)
startTime = datetime.now()
with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as session:
result = session.run(sum_operation)
print(result)
# It can be hard to see the results on the terminal with lots of output -- add some newlines to improve readability.
print("\n" * 5)
print("Shape:", shape, "Device:", device_name)
print("Time taken:", str(datetime.now() - startTime))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment