@helinwang metions that master needs to provide callback. As a result, he take Grpc into account for rpc library selecting.
#2363
here are my thoughts on master and trainer communicating process. It is not a whole design doc, just the part of communication.
In my mind, the trainer, master, pserver role can be written in go, and use go native rpc for communacting. The computation in paddle framework can be done in the optimizer library, which is written in c++. The topology defines part can be any glue language such as python, perl and so on.