Ejemplo n.º 1
0
                 help="Do not actually run the apps, just create the dir structure and launch files")
parser.add_option("-c", "--cycle_only", dest="cycle_only", action="store_true",
                 help="Just get Kernel Duration")
parser.add_option("-R", "--repeat_cycle", dest="repeat_cycle", default=0,
                 help="When running the cycle tests, do them this many times (good when DVFS is enabled)")
(options, args) = parser.parse_args()

if not any([os.path.isfile(os.path.join(p, "nvprof")) for p in os.getenv("PATH").split(os.pathsep)]):
    exit("ERROR - Cannot find nvprof PATH... Is CUDA_INSTALL_PATH/bin in the system PATH?")

common.load_defined_yamls()

benchmarks = []
benchmarks = common.gen_apps_from_suite_list(options.benchmark_list.split(","))

cuda_version = common.get_cuda_version( this_directory )
now_time = datetime.datetime.now()
day_string = now_time.strftime("%y.%m.%d-%A")
time_string = now_time.strftime("%H:%M:%S")
logfile = day_string + "--" + time_string + ".csv"

nvbit_path = os.path.join(this_directory, "..", "..", "..", "nvbit")

for bench in benchmarks:
    edir, ddir, exe, argslist = bench
    ddir = os.path.join(this_directory,ddir,exe)
    for args in argslist:
        run_name = os.path.join( exe, common.get_argfoldername( args ) )

        this_run_dir = os.path.join(this_directory, "..", "..", "run_hw", "device-" + options.device_num, cuda_version, run_name)
        if not os.path.exists(this_run_dir):
    dest="run_dir",
    help="The directory where the benchmark/config directories exist.",
    default="")
parser.add_option("-N", "--sim_name", dest="sim_name",
                  help="If you are launchign run_simulations.py with the \"-N\" option" +\
                       " then you can run ./job_status.py with \"-N\" and it will" + \
                       " give you the status of the latest run with that name."+ \
                       " if you want older runs from this name, then just point it directly at the"+\
                       " logfile with \"-l\"", default="")
(options, args) = parser.parse_args()
options.logfile = options.logfile.strip()
options.num_lines = options.num_lines.strip()
options.run_dir = options.run_dir.strip()
options.sim_name = options.sim_name.strip()

cuda_version = common.get_cuda_version()

parsed_logfiles = []
logfiles_directory = this_directory + "../job_launching/logfiles/"
if options.logfile == "":
    if not os.path.exists(logfiles_directory):
        exit(
            "No logfile specified and the default logfile directory cannot be found"
        )
    all_logfiles = [os.path.join(logfiles_directory, f) \
                       for f in os.listdir(logfiles_directory) if(re.match(r'sim_log.*',f))]
    if len(all_logfiles) == 0:
        exit("ERROR - No Logfiles in " + logfiles_directory)
    if options.sim_name != "":
        named_sim = []
        for logf in all_logfiles: