我在使用 keras 和 Tensorflow 后端时得到了这个:
tensorflow.python.framework.errors_impl.InvalidArgumentError:XLA 服务不支持设备 CUDA:0 设置 XLA_GPU_JIT 设备号 0 时
相关代码:
tfconfig = tf.ConfigProto()
tfconfig.graph_options.optimizer_options.global_jit_level = tf.OptimizerOptions.ON_1
tfconfig.gpu_options.allow_growth = True
K.tensorflow_backend.set_session(tf.Session(config=tfconfig))
张量流版本:1.14.0
郭董事长代码:
os.environ["CUDA_VISIBLE_DEVICES"] = "1"
解决了我的 jupyter 笔记本内核崩溃问题:
tf.keras.models.load_model(path/to/my/model)
致命消息是:
2020-01-26 11:31:58.727326: F tensorflow/stream_executor/lib/statusor.cc:34] 尝试获取 值而不是处理错误内部:初始化失败 CUDA 设备序号 0 的 StreamExecutor:内部:调用失败 cuDevicePrimaryCtxRetain:CUDA_ERROR_UNKNOWN:未知错误
我的TF版本是:2.2.0-dev20200123。该系统上有 2 个 GPU。
这可能是由于您的 TF 默认(即第一个)GPU 内存不足。如果您有多个 GPU,请将您的 Python 程序转移到其他 GPU 上运行。在 TF 中(假设使用 TF-2.0-rc1),设置以下内容:
# Specify which GPU(s) to use
os.environ["CUDA_VISIBLE_DEVICES"] = "1" # Or 2, 3, etc. other than 0
# On CPU/GPU placement
config = tf.compat.v1.ConfigProto(allow_soft_placement=True, log_device_placement=True)
config.gpu_options.allow_growth = True
tf.compat.v1.Session(config=config)
# Note that ConfigProto disappeared in TF-2.0
但是,假设你的环境只有一个 GPU,那么也许你别无选择,只能让你的好友停止他的程序,然后请他喝杯咖啡。
还要验证您是否有权访问 GPU