From 89dfaa00ffa44f73f20afab7e4123994ea885fb4 Mon Sep 17 00:00:00 2001 From: Rishi Sharma <rishi.sharma@epfl.ch> Date: Thu, 28 Jul 2022 13:07:31 +0200 Subject: [PATCH] Fix disconnect --- eval/plot.py | 9 +++++---- src/decentralizepy/node/DPSGDWithPeerSampler.py | 2 +- src/decentralizepy/node/Node.py | 2 +- src/decentralizepy/node/PeerSampler.py | 2 ++ src/decentralizepy/node/PeerSamplerDynamic.py | 2 ++ 5 files changed, 11 insertions(+), 6 deletions(-) diff --git a/eval/plot.py b/eval/plot.py index 8a9bcc1..35f16fc 100644 --- a/eval/plot.py +++ b/eval/plot.py @@ -29,10 +29,11 @@ def get_stats(l): def plot(means, stdevs, mins, maxs, title, label, loc): plt.title(title) plt.xlabel("communication rounds") - x_axis = list(means.keys()) - y_axis = list(means.values()) - err = list(stdevs.values()) - plt.errorbar(x_axis, y_axis, yerr=err, label=label) + x_axis = np.array(list(means.keys())) + y_axis = np.array(list(means.values())) + err = np.array(list(stdevs.values())) + plt.plot(x_axis, y_axis, label=label) + plt.fill_between(x_axis, y_axis - err, y_axis + err, alpha=0.4) plt.legend(loc=loc) diff --git a/src/decentralizepy/node/DPSGDWithPeerSampler.py b/src/decentralizepy/node/DPSGDWithPeerSampler.py index 2508675..d4e926c 100644 --- a/src/decentralizepy/node/DPSGDWithPeerSampler.py +++ b/src/decentralizepy/node/DPSGDWithPeerSampler.py @@ -154,7 +154,7 @@ class DPSGDWithPeerSampler(DPSGDNode): """ if not self.sent_disconnections: logging.info("Disconnecting neighbors") - for uid in self.my_neighbors: + for uid in self.barrier: self.communication.send(uid, {"BYE": self.uid, "CHANNEL": "DISCONNECT"}) self.communication.send( self.peer_sampler_uid, {"BYE": self.uid, "CHANNEL": "SERVER_REQUEST"} diff --git a/src/decentralizepy/node/Node.py b/src/decentralizepy/node/Node.py index 305064e..145b362 100644 --- a/src/decentralizepy/node/Node.py +++ b/src/decentralizepy/node/Node.py @@ -108,7 +108,7 @@ class Node: """ if not self.sent_disconnections: logging.info("Disconnecting neighbors") - for uid in self.my_neighbors: + for uid in self.barrier: self.communication.send(uid, {"BYE": self.uid, "CHANNEL": "DISCONNECT"}) self.sent_disconnections = True while len(self.barrier): diff --git a/src/decentralizepy/node/PeerSampler.py b/src/decentralizepy/node/PeerSampler.py index 6c76156..1311a26 100644 --- a/src/decentralizepy/node/PeerSampler.py +++ b/src/decentralizepy/node/PeerSampler.py @@ -258,3 +258,5 @@ class PeerSampler(Node): ) self.run() + + logging.info("Peer Sampler exiting") diff --git a/src/decentralizepy/node/PeerSamplerDynamic.py b/src/decentralizepy/node/PeerSamplerDynamic.py index 9c9dc83..ffee60a 100644 --- a/src/decentralizepy/node/PeerSamplerDynamic.py +++ b/src/decentralizepy/node/PeerSamplerDynamic.py @@ -96,3 +96,5 @@ class PeerSamplerDynamic(PeerSampler): ) self.run() + + logging.info("Peer Sampler exiting") -- GitLab