Tensorflow:设置 XLA_GPU_JIT 设备编号 0 时,XLA 服务不支持设备 CUDA:0

问题描述 投票:0回答:3

我在使用 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

tensorflow keras tensorflow-xla
3个回答
5
投票

郭董事长代码:

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。


1
投票

这可能是由于您的 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,那么也许你别无选择,只能让你的好友停止他的程序,然后请他喝杯咖啡。


0
投票

还要验证您是否有权访问 GPU

© www.soinside.com 2019 - 2024. All rights reserved.