如何在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版本?
答案 0 :(得分:17)
按照本教程Tensorflow GPU的说明进行操作,效果很好。
注意!-Tensorflow-gpu不支持安装版本9.0!。
步骤:
pip install tensorflow-gpu
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个命令的快捷方式,您可以根据需要单独执行。
创建anaconda环境conda create --name tf_gpu tensorflow-gpu
激活环境conda create --name tf_gpu
安装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)):