电脑上同时安装了tensorflow和tensorflow-gpu,如何默认使用tensorflow-gpu
雖然也使用tensorflow這么長(zhǎng)時(shí)間了,但是有個(gè)問題我一直沒去思考,其實(shí)這問題也有困擾我很長(zhǎng)時(shí)間,但是一直沒有去思考如何解決,直到有一天運(yùn)行模型的時(shí)候用cpua實(shí)在是卡到起飛,才決定去查找一下,其實(shí)也很簡(jiǎn)單。
我們?cè)谑褂胻ensorflow時(shí),在代碼里總是這樣寫 import tensorflow as tf 不少同學(xué)會(huì)遇到這種情況,電腦上既有tensorflow又有ensorflow-gpu,那么在運(yùn)行代碼的時(shí)候到底如何指定使用tensorflow-gpu的,又如何指定使用cpu
版的tensorflow呢,畢竟是使用同一個(gè)語句import引進(jìn)來的。不少文章會(huì)告訴你在代碼里加入類似的語句:
?
這語句對(duì)不對(duì)呢,對(duì)。但你加入進(jìn)去之后好用嗎,不好用。
問題就是,你現(xiàn)在調(diào)用的tensorflow是cpu版本的,即使你已經(jīng)裝了tensorflow-gpu,不信的話,可以在python下試試這樣一條語句
from tensorflow.python.client import device_lib as _device_lib local_device_protos = device_lib.list_local_devices() devices = [x.name for x in local_device_protos] for d in devices:print(d)不出意外,打出來的信息全是cpu設(shè)備的信息。
這種問題應(yīng)該怎么解決呢,有的同學(xué)想,那我把tensorflow的cpu版本卸載就好啦,華生,你發(fā)現(xiàn)了盲點(diǎn)。這樣就會(huì)報(bào)錯(cuò) No module named ‘tensorflow’。。。。
正確解決辦法是,從新安裝tensorflow-gpu,因?yàn)橄到y(tǒng)默認(rèn)使用最后一次安裝的tensorflow進(jìn)行運(yùn)算,tensorflow-gpu會(huì)替代原來的tensorflow版本,這樣你在使用tensorflow.__version__()查看版本時(shí)就是tensorflow-gpu的版本,這樣就說明你成功的導(dǎo)入了tensorflow-gpu。就可以愉快的使用gpu跑代碼啦
使用tensorflow-gpu時(shí),要注意本機(jī)的cuda和cudnn版本三者之間關(guān)系是否對(duì)應(yīng),可以按照這個(gè)博客進(jìn)行安裝:https://blog.csdn.net/sunmingyang1987/article/details/102872658
PS:tensorflow另一種查看GPU的方法:
?
?
總結(jié)
以上是生活随笔為你收集整理的电脑上同时安装了tensorflow和tensorflow-gpu,如何默认使用tensorflow-gpu的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: latex中bibtex中引用会议和期刊
- 下一篇: 如何只下载一个github项目的某一特定