From c06d4178ad8ed7a2dedb2fd2c10d49207ec255fd Mon Sep 17 00:00:00 2001 From: Helin Wang Date: Wed, 10 May 2017 18:34:04 -0700 Subject: [PATCH] change img positioning --- doc/design/cluster_train/pserver_client.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/design/cluster_train/pserver_client.md b/doc/design/cluster_train/pserver_client.md index c1cb93434e5..56469fc2153 100644 --- a/doc/design/cluster_train/pserver_client.md +++ b/doc/design/cluster_train/pserver_client.md @@ -7,6 +7,7 @@ For an overview of trainer's role, please refer to [distributed training design The parameters on parameter servers need to be initialized. To provide maximum flexibility, we need to allow trainer initialized the parameters. Only one trainer will do the initialization, the other trainers will wait for the completion of initialization and get the parameters from the parameter servers. To select the trainer for initialization, every trainer will try to get a distributed lock, whoever owns the lock will do the initialization. As illustrated below: + The select process is encapsulated in the C API function: @@ -14,6 +15,7 @@ The select process is encapsulated in the C API function: int paddle_begin_init_params(paddle_pserver_client* client, const char* config_proto); ``` The selected trainer's call to `paddle_begin_init_params` will return with 1, and the other trainers' call to `paddle_begin_init_params` will block until initialization is done, and return 0. As illustrated below: + ## C Interface -- GitLab