Я следую примеру here, чтобы создать распределенную модель тензорного потока с сервером параметров и n рабочими. У меня нет никакого GPU, все работы распространяется на CPUРаспределенное сохранение Tensorflow не удаляет устройство
В главный рабочий, я хочу, чтобы сохранить свои переменные каждые несколько шагов, но ссылаясь на результаты заставки в следующем за исключением:
Cannot assign a device to node 'save_1/RestoreV2_21':
Could not satisfy explicit device specification
'/job:ps/task:0/device:CPU:0' because no devices matching that
specification are registered in this process; available devices:
/job:localhost/replica:0/task:0/cpu:0
[[Node: save_1/RestoreV2_21 = RestoreV2[dtypes=[DT_INT32],
_device="/job:ps/task:0/device:CPU:0"](save_1/Const,
save_1/RestoreV2_21/tensor_names, save_1/RestoreV2_21/shape_and_slices)]]
I пробовал:
server = tf.train.Server(cluster,
job_name=self.calib.params['job_name'],
task_index=self.calib.params['task_index'],
config=tf.ConfigProto(allow_soft_placement=True)
Я использую супервизора:
sv = tf.train.Supervisor(
is_chief=is_chief,
...)
и создание мой Sesion следующим образом:
sess = sv.prepare_or_wait_for_session(server.target)
, но я все еще имею точно такую же ошибку
спасибо. Я создаю сессию, как вы говорите. Я добавляю его в вопрос – volatile
Я обновил вопрос, чтобы понять, что я уже делаю это при создании сеанса – volatile