首页 > 解决方案 > Tensorflow:在抛出“std::system_error”实例后调用终止

问题描述

我的脚本总是 session = tf.Session(config=config)因为这个错误而失败

在抛出 'std::system_error' what() 实例后调用终止:资源暂时不可用 Neúspěšně ukončen (SIGABRT)

import os
import subprocess
import tensorflow as tf

def setGPU():
    free_gpu = subprocess.check_output(
        'nvidia-smi -q | grep "Minor\|Processes" | grep "None" -B1 | tr -d " " | cut -d ":" -f2 | sed -n "1p"', shell=True)

    if len(free_gpu) == 0:
        print ('No free GPU available!')
        sys.exit(1)

    os.environ['CUDA_VISIBLE_DEVICES'] = free_gpu.decode().strip()
    print('I got GPU!')

    return int(free_gpu.strip())

setGPU()
config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.5
session = tf.Session(config=config)

有没有人遇到过类似的事情——有什么建议吗?

标签: pythontensorflowgpu

解决方案


推荐阅读