def __command_rand_delay_script(argv): pin = pintool.Pin(config.pin_home()) profiler = idiom_pintool.RandSchedProfiler() profiler.knob_defaults['delay'] = True # parse cmdline options usage = 'usage: <script> rand_delay_script [options] --- <bench name> <input index>\n\n' usage += benchmark_usage() parser = optparse.OptionParser(usage) register_random_cmdline_options(parser) profiler.register_cmdline_options(parser) (opt_argv, prog_argv) = separate_opt_prog(argv) if len(prog_argv) == 1: bench_name = prog_argv[0] input_idx = 'default' elif len(prog_argv) == 2: bench_name = prog_argv[0] input_idx = prog_argv[1] else: parser.print_help() sys.exit(0) if not valid_benchmark(bench_name): logging.err('invalid benchmark name\n') (options, args) = parser.parse_args(opt_argv) profiler.set_cmdline_options(options, args) # run profile __import__('maple.benchmark.%s' % bench_name) bench = sys.modules['maple.benchmark.%s' % bench_name] test = bench.get_test(input_idx) test.set_prefix(get_prefix(pin, profiler)) testcase = idiom_testing.RandomTestCase(test, options.mode, options.threshold, profiler) testcase.run()
def __command_pct_large(argv): pin = pintool.Pin(config.pin_home()) profiler = idiom_pintool.PctProfiler() # parse cmdline options usage = 'usage: <script> pct_large [options] --- program' parser = optparse.OptionParser(usage) register_random_cmdline_options(parser) profiler.register_cmdline_options(parser) (opt_argv, prog_argv) = separate_opt_prog(argv) if len(prog_argv) == 0: parser.print_help() sys.exit(0) (options, args) = parser.parse_args(opt_argv) profiler.set_cmdline_options(options, args) # run profile test = testing.InteractiveTest(prog_argv) test.set_prefix(get_prefix(pin, profiler)) testcase = idiom_testing.RandomTestCase(test, options.mode, options.threshold, profiler) testcase.run()