Skip to content
This repository has been archived by the owner on Nov 17, 2023. It is now read-only.

Can anybody provide a kv-store (distributed training) example with cpp package? #12576

Open
xiaolin-cheng opened this issue Sep 17, 2018 · 8 comments
Labels

Comments

@xiaolin-cheng
Copy link

I am OK with python bindings, but not able to figure out how to use cpp package kv-store APIs. There is no working example under mxnet\cpp-package\example. Thanks a lot!

@kalyc
Copy link
Contributor

kalyc commented Sep 17, 2018

Thanks for submitting the issue @xiaolin-cheng
@mxnet-label-bot[Example, C++]

@marcoabreu marcoabreu added C++ Related to C++ Example labels Sep 17, 2018
@xiaolin-cheng
Copy link
Author

Thanks for submitting the issue @xiaolin-cheng
@mxnet-label-bot[Example, C++]

@kalyc do we have a C++ example of distributed training? thanks

@leleamol
Copy link
Contributor

@xiaolin-cheng We currently do not have example in C++ to demonstrate the distributed training.

We have the support for distributed training in Python. Would you be able to share the use cases where you are planning to use distributed training using C++? I am especially curious about the reasons behind choosing C++ over Python for training.

Thanks

@xiaolin-cheng
Copy link
Author

@kalyc @leleamol

I am implementing an allreduce distributed training algorithm, and wanted to compare with MXNet's native parameter server approach. I did some hacking in the library C++ code, so comparing with C++ ps training would be fair. A quick C++ ps example of even how to use C++ ps APIs would be great. I was lost when I looked into C++ ps APIs and had no idea where to start.

Thanks

@xiaolin-cheng We currently do not have example in C++ to demonstrate the distributed training.

We have the support for distributed training in Python. Would you be able to share the use cases where you are planning to use distributed training using C++? I am especially curious about the reasons behind choosing C++ over Python for training.

Thanks

@leleamol
Copy link
Contributor

@xiaolin-cheng Thanks for providing the information regarding your use case.

The C++ API that are meant to be used as front-end API are available [here] (https://github.com/apache/incubator-mxnet/tree/master/cpp-package/include/mxnet-cpp)
There are examples that demonstrate training workflows using simple networks.

Currently, the documentation for these APIs are not getting generated and published. We have a PR #12977 out that will add the documentation to the main site.

@sojiadeshina
Copy link
Contributor

@xiaolin-cheng were you able to implement what you needed with the generated c++ documentation? if you were, you can contribute your code as an example for distributed training with c++

@pinaraws
Copy link

@mxnet-label-bot add[Distributed]

@timespaceuniverse
Copy link

@xiaolin-cheng , i also want to have a distributed-kvstore c++ example, do you have one now ?
otherwise i have to check the python api call process.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

7 participants