You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@singa.apache.org by wa...@apache.org on 2015/05/26 16:04:14 UTC
[2/2] incubator-singa git commit: fix bug from zsock_connect by
binding router firstly and then connecting dealers to it.
fix bug from zsock_connect by binding router firstly and then connecting dealers to it.
Project: http://git-wip-us.apache.org/repos/asf/incubator-singa/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-singa/commit/af235456
Tree: http://git-wip-us.apache.org/repos/asf/incubator-singa/tree/af235456
Diff: http://git-wip-us.apache.org/repos/asf/incubator-singa/diff/af235456
Branch: refs/heads/master
Commit: af235456bc348d33502162f2b291557c69662d23
Parents: 011823d
Author: wang wei <wa...@comp.nus.edu.sg>
Authored: Tue May 26 17:05:42 2015 +0800
Committer: wang wei <wa...@comp.nus.edu.sg>
Committed: Tue May 26 17:05:42 2015 +0800
----------------------------------------------------------------------
Makefile.example | 2 +-
include/trainer/trainer.h | 2 ++
src/trainer/trainer.cc | 14 +++++++-------
3 files changed, 10 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/af235456/Makefile.example
----------------------------------------------------------------------
diff --git a/Makefile.example b/Makefile.example
index 80dfc26..9a1b514 100644
--- a/Makefile.example
+++ b/Makefile.example
@@ -50,7 +50,7 @@ OBJS := $(sort $(SINGA_OBJS) $(TEST_OBJS) )
.PHONY: singa test
singa: $(PROTO_OBJS) $(SINGA_OBJS)
- $(CXX) $(SINGA_OBJS) src/main.cc -o $(BUILD_DIR)/singa $(CXXFLAGS) $(LDFLAGS)
+ $(CXX) $(SINGA_OBJS) src/main.cc -o singa $(CXXFLAGS) $(LDFLAGS)
@echo
loader: proto $(LOADER_OBJS)
http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/af235456/include/trainer/trainer.h
----------------------------------------------------------------------
diff --git a/include/trainer/trainer.h b/include/trainer/trainer.h
index f5d2591..fed011d 100644
--- a/include/trainer/trainer.h
+++ b/include/trainer/trainer.h
@@ -9,6 +9,7 @@
#include "neuralnet/neuralnet.h"
#include "trainer/worker.h"
#include "trainer/server.h"
+#include "communication/socket.h"
namespace singa {
/**
@@ -130,6 +131,7 @@ class Trainer{
protected:
int procs_id_;
+ shared_ptr<Router> router_;
};
} /* singa */
#endif // INCLUDE_TRAINER_TRAINER_H_
http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/af235456/src/trainer/trainer.cc
----------------------------------------------------------------------
diff --git a/src/trainer/trainer.cc b/src/trainer/trainer.cc
index bc6867d..00202ae 100644
--- a/src/trainer/trainer.cc
+++ b/src/trainer/trainer.cc
@@ -42,6 +42,11 @@ void Trainer::Start(const ModelProto& mproto, const ClusterProto& cproto,
RegisterDefaultClasses(mproto);
auto cluster=Cluster::Get(cproto, procs_id);
+ router_=make_shared<Router>();
+ router_->Bind(kInprocRouterEndpoint);
+ if(cluster->nprocs()>1)
+ router_->Bind(cluster->endpoint());
+
// create servers
vector<shared_ptr<Server>> servers;
int nthreads=1; // the first socket is the router
@@ -160,14 +165,9 @@ void Trainer::Start(const ModelProto& mproto, const ClusterProto& cproto,
void Trainer::Run(const std::map<int, shared_ptr<Trainer::ParamShard>>& shards){
auto cluster=Cluster::Get();
procs_id_=cluster->procs_id();
- auto router=make_shared<Router>();
- router->Bind(kInprocRouterEndpoint);
- if(cluster->nprocs()>1)
- router->Bind(cluster->endpoint());
-
map<int, shared_ptr<Dealer>> interprocs_dealers;
while(true){
- Msg* msg=router->Receive();
+ Msg* msg=router_->Receive();
if(msg==nullptr){
LOG(ERROR)<<"Connection broken!";
exit(0);
@@ -218,7 +218,7 @@ void Trainer::Run(const std::map<int, shared_ptr<Trainer::ParamShard>>& shards){
interprocs_dealers[procs_id]->Send(&msg);
*/
}else{
- router->Send(&msg);
+ router_->Send(&msg);
}
}
}