As a result of offline discussion, we concluded to clean up Communicator interface before working on #230 and #226. This is step No.2 that depends on #232 as step No.1 .
This pull request exposes CommunicatorBase interface as it has been implicitly defined by the object returned by create_communicator function as well as official documentation. Note that split method is the only one available in MpiCommunicatorBase and I think not general enough for communicator interface used in ChainerMN.
As a result of offline discussion, we concluded to clean up Communicator interface before working on #230 and #226. This is step No.2 that depends on #232 as step No.1 .
This pull request exposes
CommunicatorBase
interface as it has been implicitly defined by the object returned bycreate_communicator
function as well as official documentation. Note thatsplit
method is the only one available inMpiCommunicatorBase
and I think not general enough for communicator interface used in ChainerMN.