亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

keras如何指定運(yùn)行時(shí)顯卡及限制GPU用量

 更新時(shí)間:2024年03月28日 09:49:44   作者:T_白日夢(mèng)想家  
這篇文章主要介紹了keras如何指定運(yùn)行時(shí)顯卡及限制GPU用量問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

keras指定運(yùn)行時(shí)顯卡及限制GPU用量

keras在使用GPU的時(shí)候有個(gè)特點(diǎn),就是默認(rèn)全部占滿顯存。

這樣如果有多個(gè)模型都需要使用GPU跑的話,那么限制是很大的,而且對(duì)于GPU也是一種浪費(fèi)。

因此在使用keras時(shí)需要有意識(shí)的設(shè)置運(yùn)行時(shí)使用那塊顯卡,需要使用多少容量。

這方面的設(shè)置一般有三種情況:

  • 1. 指定顯卡
  • 2. 限制GPU用量
  • 3. 即指定顯卡又限制GPU用量

查看GPU使用情況語句(linux)

# 1秒鐘刷新一次
watch -n 1 nvidia-smi

一、指定顯卡

import os
os.environ["CUDA_VISIBLE_DEVICES"] = "2"

這里指定了使用編號(hào)為2的GPU,大家可以根據(jù)需要和實(shí)際情況來指定使用的GPU

二、限制GPU用量

1、設(shè)置使用GPU的百分比

import tensorflow as tf
import keras.backend.tensorflow_backend as KTF

#進(jìn)行配置,使用30%的GPU
config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.3
session = tf.Session(config=config)

# 設(shè)置session
KTF.set_session(session )

需要注意的是,雖然代碼或配置層面設(shè)置了對(duì)顯存占用百分比閾值,但在實(shí)際運(yùn)行中如果達(dá)到了這個(gè)閾值,程序有需要的話還是會(huì)突破這個(gè)閾值。

換而言之如果跑在一個(gè)大數(shù)據(jù)集上還是會(huì)用到更多的顯存。

以上的顯存限制僅僅為了在跑小數(shù)據(jù)集時(shí)避免對(duì)顯存的浪費(fèi)而已。

2、GPU按需使用

import tensorflow as tf
import keras.backend.tensorflow_backend as KTF

config = tf.ConfigProto()  
config.gpu_options.allow_growth=True   #不全部占滿顯存, 按需分配
session = tf.Session(config=config)

# 設(shè)置session
KTF.set_session(sess)

三、指定GPU并且限制GPU用量

這個(gè)比較簡(jiǎn)單,就是講上面兩種情況連上即可。。。

import os
import tensorflow as tf
import keras.backend.tensorflow_backend as KTF

# 指定第一塊GPU可用 
os.environ["CUDA_VISIBLE_DEVICES"] = "0"

config = tf.ConfigProto()  
config.gpu_options.allow_growth=True   #不全部占滿顯存, 按需分配
sess = tf.Session(config=config)

KTF.set_session(sess)

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論