def execute_fairplay(player, **kwargs): if player == 'bob': cmd = cmd_for_bob(**kwargs) else: cmd = cmd_for_alice(**kwargs) root = kwargs.get('root') fortune = kwargs.pop('fortune') logger = setupLogger(remote_logs_dir_F(root), DEBUG, DEBUG) logger.info('begin ~') path = rjoin(root, inject_folder_name, 'run') results_wrapper()(ubt.benchmark_wrapper()(lambda : do(cmd, fortune, path)))() logger.info('end ~')
import sys from shared_lib.collection import ubt from shared_lib.collection import \ setupLogger, DEBUG, remote_logs_dir_F, root, \ results_wrapper, parse_params # _Setup logger_ logger = setupLogger(remote_logs_dir_F(root), DEBUG, DEBUG) # _Fib, the function to be tested_ def fib(x): if x < 3: return x else: return fib(x-1) + fib(x-2) # # Results wrapper and benchmark wrapper # transparently handles benchmarking, # the given script and saves it to a results file # if __name__ == '__main__': params = parse_params(sys.argv) timeout = None if 'timeout' in params: timeout = params.pop('timeout') results_wrapper()((ubt.benchmark_wrapper(timeout))(fib))(**params)
""" Executes the injected millionaires viff program, wrapping the execution in a results wrapper, and a benchmark wrapper. ------------------------------------------------------------------------------- """ from shared_lib.collection import results_wrapper, parse_params, setupLogger, DEBUG, rjoin, remote_logs_dir_F, root, ubt import sys, subprocess if __name__ == '__main__': logger = setupLogger(remote_logs_dir_F(root), DEBUG, DEBUG) params = parse_params(sys.argv) tag = params.get('tag') cmd = 'python %s --no-ssl %s' % (rjoin(root,'inject', 'millionaires.py'), rjoin(root,'inject', tag+'.ini')) logger.info('begin ~') inner = lambda : subprocess.Popen(cmd, shell=True).wait() results_wrapper()(ubt.benchmark_wrapper()(inner))() logger.info('end ~')
""" **Result wrapper**: saves the output from the decoratee to a results file **benchmark wrapper**: benchmarks the decoratee **bench slave context**: measures bandwidth and pings the different hosts ------------------------------------------------------------------------------- """ from shared_lib.tools import results_wrapper, parse_params from shared_lib.collection import ubt import sys if __name__ == '__main__': params = parse_params(sys.argv) results_wrapper()(ubt.benchmark_wrapper()(ubt.bench_slave_context))(**params)