From d761bfceba2d2e47333e9620c9afd854e96dab64 Mon Sep 17 00:00:00 2001 From: Stephen Mardson McQuay Date: Wed, 30 Mar 2011 21:34:44 -0600 Subject: [PATCH] made it so that one can persist the slaves --- bin/slave.py | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/bin/slave.py b/bin/slave.py index 80a29bb..5966305 100644 --- a/bin/slave.py +++ b/bin/slave.py @@ -16,6 +16,16 @@ class QueueManager(BaseManager): pass QueueManager.register('get_inqueue' ) QueueManager.register('get_outqueue') +def work(inq, outq, g): + outq.put((myname, "ready")) + + while True: + i, o, e, X = inq.get() + if i == None: + break + a = g.run_baker(X, order = o, extra_points = e) + outq.put((i, myname, a['qlin'], a['error'], a['final'], exact(X))) + if __name__ == '__main__': parser = OptionParser(usage = "usage: %s [options] ") @@ -29,12 +39,12 @@ if __name__ == '__main__': help="specify the port to use on the server (default: %default)") (options, args) = parser.parse_args() + if len(args) != 2: parser.print_usage() sys.exit(1) server, input_file = args - myname = options.label m = QueueManager(address=(server, options.port), authkey='asdf') m.connect() @@ -45,13 +55,7 @@ if __name__ == '__main__': g = ggrid(input_file) g.q = np.array([exact(x) for x in g.verts]) - outq.put((myname, "ready")) - - while True: - i, o, e, X = inq.get() - if i == None: - break - a = g.run_baker(X, order = o, extra_points = e) - outq.put((i, myname, a['qlin'], a['error'], a['final'], exact(X))) + work(inq, outq, g) + myname = options.label print "%s finished" % myname