Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions benchmarks/run_benchmarks.py
Original file line number Diff line number Diff line change
Expand Up @@ -91,8 +91,9 @@ def create_parser():
# TODO support alias for a larger default N
#parser.add_argument('--large', default=False, action='store_true', help='Run a larger problem size')

parser.add_argument('-nl', '--num-locales', default=get_arkouda_numlocales(), help='Number of locales to use for the server')
parser.add_argument('-nl', '--num-locales', '--numLocales', default=get_arkouda_numlocales(), help='Number of locales to use for the server')
parser.add_argument('-sp', '--server-port', default='5555', help='Port number to use for the server')
parser.add_argument('--server-args', action='append' , help='Additional server arguments')
parser.add_argument('--numtrials', default=1, type=int, help='Number of trials to run')
parser.add_argument('benchmarks', nargs='*', help='Basename of benchmarks to run with extension stripped')
parser.add_argument('--gen-graphs', default=False, action='store_true', help='Generate graphs, requires $CHPL_HOME')
Expand All @@ -115,7 +116,7 @@ def main():
if args.gen_graphs:
os.makedirs(config_dat_dir, exist_ok=True)

start_arkouda_server(args.num_locales, port=args.server_port)
start_arkouda_server(args.num_locales, port=args.server_port, server_args=args.server_args)

args.benchmarks = args.benchmarks or BENCHMARKS
for benchmark in args.benchmarks:
Expand Down
7 changes: 4 additions & 3 deletions util/test/runClient
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,13 @@ from util import *;

parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument('clients', type=argparse.FileType('r'), help='The arkouda client program(s) to run', nargs='+')
parser.add_argument('-nl', '--numLocales', type=int, help='Number of locales')
parser.add_argument('-nl', '--num-locales', '--numLocales', default=get_arkouda_numlocales(), help='Number of locales to use for the server')
parser.add_argument('-sp', '--server-port', default='5555', help='Port number to use for the server')
parser.add_argument('--server-args', action='append' , help='Additional server arguments')

args, client_args = parser.parse_known_args()
numlocales = args.numLocales or get_arkouda_numlocales()

start_arkouda_server(numlocales)
start_arkouda_server(args.num_locales, port=args.server_port, server_args=args.server_args)
ret = 0
for client in args.clients:
cmd_string = '{} {}'.format(client.name, ' '.join(client_args)).strip()
Expand Down
10 changes: 6 additions & 4 deletions util/test/util.py
Original file line number Diff line number Diff line change
Expand Up @@ -159,16 +159,16 @@ def kill_server(server_process):
logging.warn('Attempting dirty server shutdown')
server_process.kill()

def start_arkouda_server(numlocales, verbose=False, log=False, port=5555, host=None):
def start_arkouda_server(numlocales, trace=False, port=5555, host=None, server_args=None):
"""
Start the Arkouda server and wait for it to start running. Connection info
is written to `get_arkouda_server_info_file()`.

:param int numlocals: the number of arkouda_server locales
:param bool verbose: indicates whether to start the arkouda_server in verbose mode
:param bool log: indicates whether to start arkouda_server with logging enabled
:param bool trace: indicates whether to start the arkouda_server with tracing
:param int port: the desired arkouda_server port, defaults to 5555
:param str host: the desired arkouda_server host, defaults to None
:param list server_args: additional arguments to pass to the server
:return: tuple containing server host, port, and process
:rtype: ServerInfo(host, port, process)
"""
Expand All @@ -177,9 +177,11 @@ def start_arkouda_server(numlocales, verbose=False, log=False, port=5555, host=N
os.remove(connection_file)

cmd = [get_arkouda_server(),
'--trace={}'.format('true' if log else 'false'),
'--trace={}'.format('true' if trace else 'false'),
'--serverConnectionInfo={}'.format(connection_file),
'-nl {}'.format(numlocales), '--ServerPort={}'.format(port)]
if server_args:
cmd += server_args

logging.info('Starting "{}"'.format(cmd))
process = subprocess.Popen(cmd, stdout=subprocess.DEVNULL)
Expand Down