91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何實現tensorflow指定CPU與GPU運算

發布時間:2020-08-01 11:50:15 來源:億速云 閱讀:200 作者:小豬 欄目:開發技術

這篇文章主要為大家展示了如何實現tensorflow指定CPU與GPU運算,內容簡而易懂,希望大家可以學習一下,學習完之后肯定會有收獲的,下面讓小編帶大家一起來看看吧。

1.指定GPU運算

如果安裝的是GPU版本,在運行的過程中TensorFlow能夠自動檢測。如果檢測到GPU,TensorFlow會盡可能的利用找到的第一個GPU來執行操作。

如果機器上有超過一個可用的GPU,除了第一個之外的其他的GPU默認是不參與計算的。為了讓TensorFlow使用這些GPU,必須將OP明確指派給他們執行。with......device語句能夠用來指派特定的CPU或者GPU執行操作:

import tensorflow as tf
import numpy as np

with tf.Session() as sess:
  with tf.device('/cpu:0'):
    a = tf.placeholder(tf.int32)
    b = tf.placeholder(tf.int32)
    add = tf.add(a, b)
    sum = sess.run(add, feed_dict={a: 3, b: 4})
    print(sum)

設備的字符串標識,當前支持的設備包括以下的幾種:

cpu:0 機器的第一個cpu。

gpu:0 機器的第一個gpu,如果有的話

gpu:1 機器的第二個gpu,依次類推

類似的還有tf.ConfigProto來構建一個config,在config中指定相關的GPU,并且在session中傳入參數config=“自己創建的config”來指定gpu操作

其中,tf.ConfigProto函數的參數如下:

log_device_placement=True: 是否打印設備分配日志

allow_soft_placement=True: 如果指定的設備不存在,允許TF自動分配設備

import tensorflow as tf
import numpy as np

config = tf.ConfigProto(log_device_placement=True, allow_soft_placement=True)

with tf.Session(config=config) as sess:
  a = tf.placeholder(tf.int32)
  b = tf.placeholder(tf.int32)
  add = tf.add(a, b)
  sum = sess.run(add, feed_dict={a: 3, b: 4})
  print(sum)

2.設置GPU使用資源

上文的tf.ConfigProto函數生成的config之后,還可以設置其屬性來分配GPU的運算資源,如下代碼就是按需分配

import tensorflow as tf
import numpy as np

config = tf.ConfigProto(log_device_placement=True, allow_soft_placement=True)
config.gpu_options.allow_growth = True

with tf.Session(config=config) as sess:
  a = tf.placeholder(tf.int32)
  b = tf.placeholder(tf.int32)
  add = tf.add(a, b)
  sum = sess.run(add, feed_dict={a: 3, b: 4})
  print(sum)

使用allow_growth option,剛開始會分配少量的GPU容量,然后按需要慢慢的增加,有與不會釋放內存,隨意會導致內存碎片。

同樣,上述的代碼也可以在config創建時指定,

import tensorflow as tf
import numpy as np

gpu_options = tf.GPUOptions(allow_growth=True)
config = tf.ConfigProto(gpu_options=gpu_options)


with tf.Session(config=config) as sess:
  a = tf.placeholder(tf.int32)
  b = tf.placeholder(tf.int32)
  add = tf.add(a, b)
  sum = sess.run(add, feed_dict={a: 3, b: 4})
  print(sum)

我們還可以給gpu分配固定大小的計算資源。

gpu_options = tf.GPUOptions(allow_growth=True, per_process_gpu_memory_fraction=0.5)

上述代碼的含義是分配給tensorflow的GPU顯存大小為:GPU的實際顯存*0.5

如何實現tensorflow指定CPU與GPU運算

如何實現tensorflow指定CPU與GPU運算

以上就是關于如何實現tensorflow指定CPU與GPU運算的內容,如果你們有學習到知識或者技能,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鸡东县| 新宁县| 沙河市| 汝州市| 麟游县| 梁平县| 托里县| 武功县| 平顶山市| 炉霍县| 石首市| 都安| 玉环县| 静宁县| 砀山县| 岑溪市| 辉南县| 文成县| 峨眉山市| 离岛区| 高平市| 嘉祥县| 徐州市| 分宜县| 南通市| 朔州市| 巴里| 连州市| 泸西县| 南木林县| 万年县| 米易县| 杂多县| 五华县| 集贤县| 阳谷县| 正镶白旗| 昌平区| 竹北市| 盖州市| 新野县|