Tensorflow如何使用一个或多个GPU进行训练

注意:训练前要用nvidia-smi来查看一下当前GPU的使用情况,不要一下子就放上去跑把大家一起挤挂了,这是负责任的行为。

第一种:python代码中设置使用的GPU
使用方法:

第一步:

import os
os.environ["CUDA_VISIBLE_DEVICES"] = "0"

第二步:设置tensorflow使用的显存大小
默认tensorflow是使用GPU尽可能多的显存。可以通过下面的方式,来设置使用的GPU显存:

    sess_config = tf.ConfigProto() 
    sess_config.gpu_options.per_process_gpu_memory_fraction = 0.90 
    sess = tf.Session(config=sess_config) 

第二种:终端执行程序时设置使用的GPU

如果电脑有多个GPU,tensorflow默认全部使用。如果想只使用部分GPU,可以设置CUDA_VISIBLE_DEVICES。

CUDA_VISIBLE_DEVICES=1 python my_script.py
CUDA_VISIBLE_DEVICES=1           Only device 1 will be seen
CUDA_VISIBLE_DEVICES=0,1         Devices 0 and 1 will be visible
CUDA_VISIBLE_DEVICES="0,1"       Same as above, quotation marks are optional
CUDA_VISIBLE_DEVICES=0,2,3       Devices 0, 2, 3 will be visible; device 1 is masked
CUDA_VISIBLE_DEVICES=""          No GPU will be visible

参考:《tensorflow中使用指定的GPU及GPU显存》

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐