相关疑难解决方法(0)

如何判断tensorflow是否在python shell中使用gpu加速?

我已经在我的ubuntu 16.04中使用第二个答案 ubuntu的内置apt cuda安装中安装了tensorflow .

现在我的问题是如何测试tensorflow是否真的使用gpu?我有一个gtx 960m gpu.当我import tensorflow这是输出

I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcurand.so locally
Run Code Online (Sandbox Code Playgroud)

这个输出是否足以检查tensorflow是否正在使用gpu?

python ubuntu tensorflow

246
推荐指数
24
解决办法
36万
查看次数

如何在tensorflow中获取当前可用的GPU?

我有计划使用分布式TensorFlow,我看到TensorFlow可以使用GPU进行培训和测试.在群集环境中,每台计算机可能有0个或1个或更多GPU,我想在尽可能多的计算机上运行我的TensorFlow图形到GPU.

我发现在运行tf.Session()TensorFlow时会在日志消息中提供有关GPU的信息,如下所示:

I tensorflow/core/common_runtime/gpu/gpu_init.cc:126] DMA: 0 
I tensorflow/core/common_runtime/gpu/gpu_init.cc:136] 0:   Y 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:838] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 1080, pci bus id: 0000:01:00.0)
Run Code Online (Sandbox Code Playgroud)

我的问题是如何从TensorFlow获取有关当前可用GPU的信息?我可以从日志中获取加载的GPU信息,但我希望以更复杂的程序化方式完成.我也可以故意使用CUDA_VISIBLE_DEVICES环境变量限制GPU,所以我不想知道从OS内核获取GPU信息的方法.

简而言之,如果机器中有两个可用的GPU ,我希望这样的函数tf.get_available_gpus()将返回['/gpu:0', '/gpu:1'].我该如何实现呢?

python gpu tensorflow

131
推荐指数
9
解决办法
16万
查看次数

如何检查keras tensorflow后端是GPU还是CPU版本?

我知道在安装tensorflow时,您要么安装GPU版本,要么安装CPU版本.如何检查安装了哪一个(我使用的是linux).

如果安装了GPU版本,如果GPU不可用,它会自动在CPU上运行还是会抛出错误?如果GPU可用,是否需要设置特定字段或值以确保它在GPU上运行?

keras tensorflow

47
推荐指数
2
解决办法
9万
查看次数

如何确保 Keras 使用带有 tensorflow 后端的 GPU?

我在 Paperspace 云基础架构上创建了虚拟笔记本,后端使用 Tensorflow GPU P5000 虚拟实例。当我开始训练我的网络时,它比使用纯 CPU 运行时引擎的 MacBook Pro 慢 2 倍。我如何确保 Keras NN 在训练过程中使用 GPU 而不是 CPU?

请在下面找到我的代码:

from tensorflow.contrib.keras.api.keras.models import Sequential
from tensorflow.contrib.keras.api.keras.layers import Dense
from tensorflow.contrib.keras.api.keras.layers import Dropout
from tensorflow.contrib.keras.api.keras import utils as np_utils
import numpy as np
import pandas as pd

# Read data
pddata= pd.read_csv('data/data.csv', delimiter=';')

# Helper function (prepare & test data)
def split_to_train_test (data):
    trainLenght = len(data) - len(data)//10

    trainData = data.loc[:trainLenght].sample(frac=1).reset_index(drop=True)
    testData = data.loc[trainLenght+1:].sample(frac=1).reset_index(drop=True)

    trainLabels = trainData.loc[:,"Label"].as_matrix()
    testLabels = testData.loc[:,"Label"].as_matrix() …
Run Code Online (Sandbox Code Playgroud)

gpu keras tensorflow

6
推荐指数
1
解决办法
8944
查看次数

尽管安装了tensorflow-gpu,但不使用GPU进行计算

我的计算机安装了以下软件:Anaconda (3)、TensorFlow (GPU) 和 Keras。Anaconda 虚拟环境有两种,一种是 TensorFlow for Python 2.7,一种是 3.5,都是 GPU 版本,按照 TF 指令安装。(我之前在单独的环境中安装了 CPU 版本的 TensorFlow,但我已将其删除。)

当我运行以下命令时:

source activate tensorflow-gpu-3.5
python code.py
Run Code Online (Sandbox Code Playgroud)

并检查nvidia-smi它仅显示 Python 的 GPU 内存使用量为 3MiB,因此看起来 GPU 并未用于计算。(code.py是一个用 Keras 实现的简单深度 Q 学习算法)

有什么想法可能会出问题吗?

gpu machine-learning anaconda keras tensorflow

3
推荐指数
1
解决办法
1万
查看次数

如何确保张量流正在使用GPU

我手动安装了CUDA v9.2和相应的cuDNN以安装tensorflow gpu,但我意识到tensorflow 1.8.0需要CUDA 9.0,所以我运行了

pip install tensorflow-gpu
Run Code Online (Sandbox Code Playgroud)

从anaconda提示(基本环境)中自动安装CUDA 9.0和相应的cuDNN。我从同一命令提示符启动了Spyder。所以这是我在Python 3.6中的代码,其中我正在使用keras和tensorflow来训练8000个奇数图像-

# Convolutional Neural Networks
# Part 1 - Building the CNN
# Not important

# Part 2- Fitting the CNN to the images - 
from keras.preprocessing.image import ImageDataGenerator
train_datagen = ImageDataGenerator(
        rescale=1./255,
        shear_range=0.2,
        zoom_range=0.2,
        horizontal_flip=True)

test_datagen = ImageDataGenerator(rescale=1./255)

training_set = train_datagen.flow_from_directory(
        'dataset/training_set',
        target_size=(64, 64),
        batch_size=32,
        class_mode='binary')

test_set = test_datagen.flow_from_directory(
        'dataset/test_set',
        target_size=(64, 64),
        batch_size=32,
        class_mode='binary')
with tf.device("/gpu:0"):   # Notice THIS
    classifier.fit_generator(
            training_set,
            steps_per_epoch=8000,
            epochs=25,
            validation_data=test_set,
            validation_steps=2000)
Run Code Online (Sandbox Code Playgroud)

注意,在最后拟合数据集之前,我将其放入

with tf.device("/gpu:0"):
Run Code Online (Sandbox Code Playgroud)

我认为这应该确保它使用GPU进行训练?我不确定,因为将“ …

python keras tensorflow

0
推荐指数
1
解决办法
1万
查看次数

标签 统计

tensorflow ×6

keras ×4

gpu ×3

python ×3

anaconda ×1

machine-learning ×1

ubuntu ×1