我是Tensorflow的新手。我有一个在CPU上运行的Tensorflow代码,现在我想将其改为在GPU上运行。我在代码的某个位置添加了tf.device('/device:GPU:0')
语句,但显然它不起作用,我也没有看到任何日志。
如何更改它?
#...一些内容g_in = tf.Graph()with gfile.FastGFile(path + name + '.pb', 'rb') as f: graph_def = tf.GraphDef() graph_def.ParseFromString(f.read()) tf.import_graph_def(graph_def, name="") g_in = tf.get_default_graph() print(g_in)with g_in.as_default(), tf.device('/device:GPU:0'): sess = tf.Session(config=tf.ConfigProto(log_device_placement=True)) input = sess.graph.get_tensor_by_name("cnn/input_1:0") output = sess.graph.get_tensor_by_name("mymodel:0")
回答:
如果您安装了tensorflow-gpu
,Tensorflow默认会运行在GPU上。with tf.device('/device:GPU:0')
用于选择要使用的GPU,如果您不想使用默认的GPU。pip freeze
可以显示您安装了哪个版本。如果只显示tensorflow
而不是tensorflow-gpu
,那么您需要卸载它,安装CUDA,然后重新安装tensorflow-gpu
。