如何使用TensorFlow GPU?

时间:2018-07-12 13:23:56

标签: python tensorflow gpu

如何在Python 3.6 x64中使用 TensorFlow GPU 版本而不是 CPU 版本?

>>> hng_row =  ['1531402200', 'primary', '2', '2100.00', '1.03', '1.05', '1.01', '2', '151'] 
>>> p = r"^.*\.00|0\..+0|.*[^0.]0$"
>>> [ele[:-1] if re.match(p, ele) else ele for ele in lst]
['1531402200', 'primary', '2', '2100.0', '1.03', '1.05', '1.01', '2', '151']

Python使用我的 CPU 进行计算。
我可以注意到它,因为我有一个错误:

  

您的CPU支持此TensorFlow二进制文件未包含的指令   编译使用:AVX2

我已经安装了tensorflow和tensorflow-gpu。

如何切换到GPU版本?

7 个答案:

答案 0 :(得分:17)

按照本教程Tensorflow GPU的说明进行操作,效果很好。

注意!-Tensorflow-gpu不支持安装版本9.0!

步骤:

  1. 卸载旧的tensorflow
  2. 安装tensorflow-gpu pip install tensorflow-gpu
  3. 安装Nvidia图形卡和驱动程序(您可能已经拥有)
  4. 下载并安装CUDA
  5. 下载并安装cuDNN
  6. 通过简单程序验证

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

答案 1 :(得分:2)

首先,您需要安装 tensorflow-gpu ,因为此软件包负责gpu计算。还要记住,要使用环境变量 CUDA_VISIBLE_DEVICES = 0 运行代码(或者,如果您有多个GPU,请用逗号将其索引放置)。可能与使用gpu有关。如果您的张量流仍然不使用gpu,try this

答案 2 :(得分:2)

按照最新版本的文档中的步骤进行操作。注意:GPU和CPU功能现在合并在一个tensorflow包中

pip install tensorflow

# OLDER VERSIONS pip install tensorflow-gpu

https://www.tensorflow.org/install/gpu

如果需要,这是安装驱动程序和CUDA的绝佳指南: https://www.quantstart.com/articles/installing-tensorflow-22-on-ubuntu-1804-with-an-nvidia-gpu/

答案 3 :(得分:1)

我尝试按照上述教程进行操作。 tensorflow发生了很多变化,在GPU上运行所需的NVIDIA版本也发生了变化。下一个问题是您的驱动程序版本确定您的工具箱版本等。从今天起,有关软件要求的信息应使它们之间的相互作用更加清晰:

NVIDIA® GPU drivers —CUDA 9.0 requires 384.x or higher.
CUDA® Toolkit —TensorFlow supports CUDA 9.0.
CUPTI ships with the CUDA Toolkit.
cuDNN SDK (>= 7.2) Note: Make sure your GPU has compute compatibility >3.0
(Optional) NCCL 2.2 for multiple GPU support.
(Optional) TensorRT 4.0 to improve latency and throughput for inference on some models.

here会发现tensorflow规定的最新要求(希望它们会定期更新)。

答案 4 :(得分:1)

奇怪的是,即使tensorflow网站1提到CUDA 10.1与tensorflow-gpu-1.13.1兼容,但到目前为止它仍无法正常工作。 tensorflow-gpu可以正确安装,但运行时会抛出奇怪的错误。

到目前为止,使用GPU运行tensorflow的最佳配置是python3.6下带有tensorflow_gpu-1.12.0的CUDA 9.0。

按照https://stackoverflow.com/a/51307381/2562870(上面的答案)中提到的步骤进行此配置,对我来说很有效:)

答案 5 :(得分:0)

如果您有Nvidia,安装Tensorflow GPU的“新”方法是使用Anaconda。也可以在Windows上使用。用1行。

<ipython-input-6-1f81512d446c> in AlgSift(imagen, imagentocompare, umbral)
   21     search_params = dict()
   22     flann = cv2.FlannBasedMatcher(index_params, search_params)
---> 23     matches = flann.knnMatch(desc_1, desc_2, k=2)
   24 
   25 


   error: OpenCV(3.4.2) /io/opencv/modules/flann/src/miniflann.cpp:487: error: 
   (-215:Assertion failed) (size_t)knn <= index_->size() in function 
   'runKnnSearch_'

这是3个命令的快捷方式,您可以根据需要单独执行。

  1. 创建anaconda环境conda create --name tf_gpu tensorflow-gpu

  2. 激活环境conda create --name tf_gpu

  3. 安装tensorflow-GPU activate tf_gpu

您可以使用conda环境。

答案 6 :(得分:0)

卸载tensorflow并仅安装tensorflow-gpu;这应该足够了。默认情况下,它应在GPU而不是CPU上运行。但是,进一步,您可以执行以下操作指定要在哪个GPU上运行。

如果您具有nvidia GPU,请在终端上使用命令nvidia-smi找出您的GPU ID。之后,在脚本中添加以下行:

os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
os.environ["CUDA_VISIBLE_DEVICES"] = #GPU_ID from earlier

config = tf.ConfigProto()
sess = tf.Session(config=config)

对于希望使用GPU的功能,请编写如下内容:

with tf.device(tf.DeviceSpec(device_type="GPU", device_index=gpu_id)):