1. 在終端執行時設置使用哪些GPU(兩種方式)
(1) 如下(export 語句執行一次就行了,以后再運行代碼不用執行)
(2) 如下
2. 代碼中指定(兩種方式)
(1)
import osos.environ["CUDA_VISIBLE_DEVICES"] = "1"
(2)
# Creates a graph.with tf.device('/gpu:1'): a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a') b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b') c = tf.matmul(a, b)# Creates a session with log_device_placement set to True.sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))# Runs the op.print sess.run(c)
若想使用多個GPU,如下
c = []for d in ['/gpu:0', '/gpu:1']: with tf.device(d): a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3]) b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2]) c.append(tf.matmul(a, b))with tf.device('/cpu:0'): sum = tf.add_n(c)# Creates a session with log_device_placement set to True.sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))# Runs the op.print sess.run(sum)
3.GPU資源分配
(1) 設置允許GPU增長
config = tf.ConfigProto()config.gpu_options.allow_growth = Truesession = tf.Session(config=config, ...)
(2) 設置每個GPU內存使用多少
config = tf.ConfigProto()config.gpu_options.per_process_gpu_memory_fraction = 0.4session = tf.Session(config=config, ...)
以上這篇基于tensorflow指定GPU運行及GPU資源分配的幾種方式小結就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答