From 7b7c2f4a4ef47731a6fb2e93c2bd2bbfac60a571 Mon Sep 17 00:00:00 2001 From: Garry Boyer Date: Tue, 10 Jul 2007 05:38:28 +0000 Subject: [PATCH] hi --- fastlib/script/fx-rpc | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100755 fastlib/script/fx-rpc diff --git a/fastlib/script/fx-rpc b/fastlib/script/fx-rpc new file mode 100755 index 0000000000..54386dfb4f --- /dev/null +++ b/fastlib/script/fx-rpc @@ -0,0 +1,38 @@ +#!/usr/bin/env python + +USAGE=""" +fx-rpc -- run programs written with garry's makeshift sockets api thing +""" + +import os +import sys +import util + +# note: we're not using fx for parameter parsing right now... + +n = int(sys.args[0]) +if n <= 0: + print "error: n must be positive" + exit 1 + +peers = sys.args[1] + +port = int(sys.args[2]) + +peerlist = util.readlines(peers) + +pids = [] + +for i = range(n): + machinename = peerlist[i] + pid = os.fork() + if not pid: + args = ["ssh", machinename, + "--rpc/n=%d"%n, "--rpc/rank=%d"%i, + "--rpc/port=%d"%port, "--rpc/peers=%s"%peers, + ]+sys.args[3:] + os.execvp(args[0], args) + pids.append(pid) + +for pid in pids: + os.waitpid(pid, 0)