tensorflow.python.framework.errors_impl.UnavailableError: OS Error

博主在进行分布式实例搭建时遇到问题,当使用1台参数服务器和2台计算服务器时程序出错。起初怀疑是gRPC问题,调整端口号后仍未解决,又考虑tf.train.Supervisor()函数,也未成功。最后参考博客,尝试恢复gRPC旧版本不行,最终通过设置gRPC环境变量GRPC_POLL_STRATEGY=poll解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天在做分布式实例搭建的时候出现了上述问题。

出现现象:1.当只有1台参数服务器,1台计算服务器的时候,程序是没有问题的(也可能只是我尝试的那次没有问题)

2.当使用1台参数服务器,2台计算服务器的时候,程序就出现了上述的问题。

一开始以为是gRPC的问题,因为一开始出现的问题是

tensorflow.python.framework.errors_impl.UnknownError: Could not start gRPC server

后来将计算节点的端口号改为一致之后才没有问题。

之后我看了看有可能是tf.train.Supervisor()函数的问题,后来修改成tf.train.MonitoredTrainingSession()后也是不行,但是也是一个方向。

找了好久都找不到原因,最后我是看到该博客上的方法才可以。

https://github.com/tensorflow/tensorflow/issues/17852

一开始原博主说的是将gRPC的版本恢复成旧版本,我找了下可能要好老的版本,现在是gprcio.1.19,后来也不行。

后来说了可能是由于gRPC的环境变量问题,GRPC_POLL_STRATEGY=poll

通过设置这个即可。

在文件中编辑即可。

import os
os.environ['GRPC_POLL_STRATEGY'] = "poll"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值