使用PYTHON 调用tensorflow的GPU的一般方法如下: physical_devices = tf.config.experimental.list_physical_devices('GPU') tf.config.experimental.set_memory_growth(physical_devices[0], True) 但这样有个问题,当主机有多个GPU时,会抛出一个错误,大致意思是不能使用不同GPU的显存。遇到这个问题,在百度上找到大多数的解决方法是,在这段代码之前加入如下: os.environ['CUDA_VISIBLE_DEVICES']='0' 这样,代码是能正常运行了,但这样会有另一个问题,就是主机上明明有两个甚至更多的GPU,但程序只能使用其中一个运行,这大大浪费了主机的机能。之后,阅读了外国的社区和网站,看到遇到同样问题的技术人员的回复和解决方法,终于找到了最好的解决方法。修改GPU调用的代码如下: 例如有两个GPU os.environ['CUDA_VISIBLE_DEVICES']='0,1' physical_devices = tf.config.experimental.list_physical_devices('GPU') for gpu_instance in physical_devices: tf.config.experimental.set_memory_growth(gpu_instance,True) 经测试,这样就可以同一个程序同时使用多个GPU处理了。