From bf358be479523f0f7848ece557054835d21d30ed Mon Sep 17 00:00:00 2001 From: Helin Wang Date: Thu, 25 May 2017 12:06:48 -0700 Subject: [PATCH] update design doc: Client Library of Parameter Server --- doc/design/cluster_train/pserver_client.md | 12 +++++------- .../cluster_train/src/pserver_init.graffle | Bin 2622 -> 2436 bytes doc/design/cluster_train/src/pserver_init.png | Bin 28853 -> 28616 bytes 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/doc/design/cluster_train/pserver_client.md b/doc/design/cluster_train/pserver_client.md index 392bab25e9d..007285640e9 100644 --- a/doc/design/cluster_train/pserver_client.md +++ b/doc/design/cluster_train/pserver_client.md @@ -55,7 +55,7 @@ The trainer select process is encapsulated in the C API function: ```c 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: +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 return 0. `paddle_get_params` will be blocked until initialization is completed. As illustrated below: @@ -89,16 +89,13 @@ void paddle_pserver_client_release(paddle_pserver_client* client); * * paddle_begin_init_params will be called from multiple trainers, * only one trainer will be selected to initialize the parameters on - * parameter servers. Other trainers will be blocked until the - * initialization is done, and they need to get the initialized + * parameter servers. Other trainers need to get the initialized * parameters from parameter servers using @paddle_get_params. * - * @param pserver_config_proto serialized parameter server configuration in - * Protocol Buffers format. * @return 1 if the trainer is selected to initialize parameter * servers, otherwise 0. */ -int paddle_begin_init_params(paddle_pserver_client* client, const char* pserver_config_proto); +int paddle_begin_init_params(paddle_pserver_client* client); /** * @brief paddle_init_param initializes the parameter on parameter @@ -106,12 +103,13 @@ int paddle_begin_init_params(paddle_pserver_client* client, const char* pserver_ * * @param param the parameter to initialize. * @param param_config_proto the configuration for the parameter. + * @param config_len the length of param_config_proto * @return 0 if successful, otherwise -1. On failure, the trainer * needs to restart the entire initialization process (starting from * @paddle_begin_init_param). Or simply exit the program and wait for * the cluster management system to restart the trainer. */ -int paddle_init_param(paddle_pserver_client* client, paddle_parameter params, const char* param_config_proto); +int paddle_init_param(paddle_pserver_client* client, paddle_parameter param, const unsigned char* param_config_proto, int config_len); /** * @brief paddle_finish_init_params tells parameter servers client has diff --git a/doc/design/cluster_train/src/pserver_init.graffle b/doc/design/cluster_train/src/pserver_init.graffle index 730d3a561ffdc19e723b3cf6612471440951826a..5f3f1f52be8aa7f9049a8fcd6b7c93c8560c1676 100644 GIT binary patch literal 2436 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 T<)yoy*OQS@cvT{1=>I4S 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