Я понимаю, что можно указать ps и рабочие для тензорного потока для масштабирования в кластере с несколькими машинами.Например:
cluster_spec = tf.train.ClusterSpec({
"worker": [
"worker0.example.com:2222",
"worker1.example.com:2222",
"worker2.example.com:2222"
],
"ps": [
"ps0.example.com:2222",
"ps1.example.com:2222"
]})
Но как мне запустить ps и работники на одной машине?Я знаю, что ps и работники могут быть установлены как
tf.train.ClusterSpec({
"worker": [
"localhost:2222",
"localhost:2223",
"localhost:2224"
],
"ps": [
"localhost:2220"
]})
Но в соответствии с инструкцией мне нужно «перейти» на разные хосты, чтобы запустить приведенную ниже команду, чтобы запустить процесс.
bazel-bin/inception/imagenet_distributed_train \
--batch_size=32 \
--data_dir=$HOME/imagenet-data \
--job_name='worker' \
--task_id=0 \
--ps_hosts='ps0.example.com:2222' \
--worker_hosts='worker0.example.com:2222,worker1.example.com:2222'
Поскольку я не могу использовать ssh для разных портов на одном компьютере, могу ли я просто запустить команду несколько раз, чтобы запустить разные процессы?