Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 虽然安装了Tensorflow GPU,但我的脚本似乎没有在GPU上执行_Python_Tensorflow - Fatal编程技术网

Python 虽然安装了Tensorflow GPU,但我的脚本似乎没有在GPU上执行

Python 虽然安装了Tensorflow GPU,但我的脚本似乎没有在GPU上执行,python,tensorflow,Python,Tensorflow,我有一台装有cuda 10.1和tensorflow以及tensorflow gpu 1.14.0的机器。我正在运行一个python脚本,用VirtualNV训练CNN。我在源代码中指出我要使用GPU,如下所示: import os os.environ["CUDA_DEVICE_ORDER"]="PCI_BUS_ID"; os.environ["CUDA_VISIBLE_DEVICES"]="0"; 然而,当我运行脚本时,培训阶段需要花费很多时间才能完成。以下是我的nvidia smi的输出

我有一台装有cuda 10.1和tensorflow以及tensorflow gpu 1.14.0的机器。我正在运行一个python脚本,用VirtualNV训练CNN。我在源代码中指出我要使用GPU,如下所示:

import os
os.environ["CUDA_DEVICE_ORDER"]="PCI_BUS_ID";
os.environ["CUDA_VISIBLE_DEVICES"]="0";
然而,当我运行脚本时,培训阶段需要花费很多时间才能完成。以下是我的nvidia smi的输出:

我觉得奇怪的是,为什么GPU的利用率这么低,为什么我的python脚本没有出现在进程列表中。以下是我尝试过的一些命令的输出:

>>> import tensorflow as tf
>>> sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
输出是

2019-10-14 09:53:12.674719:I tensorflow/core/platform/cpu\u feature\u guard.cc:142]您的cpu支持 未编译此TensorFlow二进制文件以使用的指令:AVX2 FMA 2019-10-1409:53:12.679047:I tensorflow/stream_executor/platform/default/dso_loader.cc:42] 已成功打开动态库libcuda.so.1 2019-10-14 09:53:12.784993:I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1005]成功 从SysFS读取的NUMA节点具有负值(-1),但必须存在 至少一个NUMA节点,因此返回NUMA节点零2019-10-14 09:53: 12.785744:I TysFult/编译器/XLA/Service / Service X: 168:XLA 服务0x55f155c59650在平台CUDA上执行计算。 设备:2019-10-1409:53:12.785771:I tensorflow/compiler/xla/service/service.cc:175]StreamExecutor 设备(0):GeForce RTX 2080 Ti,计算能力7.5 2019-10-14 09:53:12.806453:I tensorflow/core/platform/profile_utils/cpu_utils.cc:94]cpu频率: 3600000000Hz 2019-10-1409:53:12.807345:I TysFROUL/编译器/XLA/Service / Service X: 168 XLA服务 0x55f15605dfc0在平台主机上执行计算。设备: 2019-10-14 09:53:12.807408:I tensorflow/compiler/xla/service/service.cc:175]StreamExecutor 设备(0):2019-10-1409:53:12.807829:I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1005]成功 从SysFS读取的NUMA节点具有负值(-1),但必须存在 至少一个NUMA节点,因此返回NUMA节点零2019-10-14 09:53:12.808859:I tensorflow/core/common_runtime/gpu/gpu_device.cc:1640]找到了设备0 属性:名称:GeForce RTX 2080 Ti大调:7小调:5 内存锁定速率(GHz):1.545 pciBusID:0000:01:00.0 2019-10-14 09:53:12.809148:I tensorflow/stream_executor/platform/default/dso_loader.cc:53] 不是“libcudart.so.10.0”开放库;dlerror:libcudart.so.10.0: 无法打开共享对象文件:没有该文件或目录; LD_库_路径: /usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64:2019-10-14 09:53:12.809313:I tensorflow/stream_executor/platform/default/dso_loader.cc:53] 不是开放图书馆“libcublas.so.10.0”;D错误:libcublas.so.10.0: 无法打开共享对象文件:没有该文件或目录; LD_库_路径: /usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64:2019-10-14 09:53:12.809481:I tensorflow/stream_executor/platform/default/dso_loader.cc:53] 不是开放图书馆“libcufft.so.10.0”;错误:libcufft.so.10.0: 无法打开共享对象文件:没有该文件或目录; LD_库_路径: /usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64:2019-10-14 09:53:12.809531:I tensorflow/stream_executor/platform/default/dso_loader.cc:53] 不是开放图书馆“libcurand.so.10.0”;D错误:libcurand.so.10.0: 无法打开共享对象文件:没有该文件或目录; LD_库_路径: /usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64:2019-10-14 09:53:12.809572:I tensorflow/stream_executor/platform/default/dso_loader.cc:53] 不是dlopen图书馆“libcusolver.so.10.0”;德莱罗: libcusolver.so.10.0:无法打开共享对象文件:没有此类文件或 目录LD_库_路径: /usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64:2019-10-14 09:53:12.809611:I tensorflow/stream_executor/platform/default/dso_loader.cc:53] 不是dlopen库'libcusparse.so.10.0';德莱罗: libcusparse.so.10.0:无法打开共享对象文件:没有此类文件或 目录LD_库_路径: /usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64:2019-10-14 09:53:12.811997:I tensorflow/stream_executor/platform/default/dso_loader.cc:42] 已成功打开动态库libcudnn.so.7 2019-10-14 09:53:12.812038:W tensorflow/core/common_runtime/gpu/gpu_device.cc:1663]无法打开 一些GPU库。正在跳过注册GPU设备。。。2019-10-14 09:53:12.812059:I tensorflow/core/common_runtime/gpu/gpu_device.cc:1181]device 具有强度1边缘矩阵的互连拖缆执行器:2019-10-14 09:53:12.812067:I tensorflow/core/common_runtime/gpu/gpu_device.cc:1187]0 2019-10-14 09:53:12.812072:I tensorflow/core/common_runtime/gpu/gpu_device.cc:1200]0:N device 映射:/job:localhost/replica:0/task:0/device:XLA\GPU:0->device: XLA\U GPU设备/作业:本地主机/副本:0/任务:0/设备:XLA\U CPU:0-> 设备:XLA_CPU设备2019-10-14 09:53:12.812372:I tensorflow/core/common_runtime/direct_session.cc:296]设备映射: /作业:本地主机/副本:0/任务:0/设备:XLA\U GPU:0->设备:XLA\U GPU 设备/作业:本地主机/副本:0/任务:0/设备:XLA\U CPU:0->设备: XLA_CPU设备

我试过的另一个命令是

>>> with tf.Session() as sess:
    devices = sess.list_devices()
输出是

2019-10-14 09:55:52.398317:I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1005]成功 从SysFS读取的NUMA节点具有负值(-1),但必须存在 至少一个NUMA节点,因此返回NUMA节点零2019-10-14 09:55:52.399249:I tensorflow/core/common_runtime/gpu/gpu_device.cc:1640]找到了设备0 属性:名称:GeForce RTX 2080 Ti大调:7小调:5 内存锁定速率(GHz):1.545 pciBusID:0000:01:00.0 2019-10-14 09:55:52.399355:I tensorflow/stream_executor/platform/default/dso_loader.cc:53] 不是dlopen库的libcudart
>>> from tensorflow.python.client import device_lib
>>> print(device_lib.list_local_devices())
##########################
# Install Miniconda
##########################

mkdir -p ~/install
cd ~/install
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
# I guess on a mac you should do
# wget https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh

#########################
# install nvidia driver
# so these are the linux (ubuntu) commands
# for mac, maybe one should follow the scheme
# removing nvidia drivers first
# and then download newest nvidia driver
# and install it
# and reboot
#
# If you are using a laptop without gpu, just skip this block
#########################

sudo apt purge nvidia-*   # remove all nvidia driver first

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt install nvidia-driver-418

sudo apt install nvidia-cuda-toolkit

# reboot
sudo reboot

#########################
# install machine learning stuff keras tensorflow-gpu
#
# if you are installing in a laptop without gpu,
# replace 'tensorflow-gpu' by 'tensorflow'!
#########################

conda create --name keras
conda activate keras
conda install python ipython jupyter pandas scipy seaborn scikit-learn tensorflow-gpu keras pytest openpyxl graphviz


#########################
# finally, test a successful installation by:
# entering:
ipython # and there trying:

from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())

# should list gpu
# sth like:

physical_device_desc: "device: 0, name: GeForce GTX 1050 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1"
, name: "/device:XLA_GPU:0"
device_type: "XLA_GPU"
memory_limit: 17179869184
locality {
}
incarnation: 14085000268159177816
physical_device_desc: "device: XLA_GPU device"
]