Ejemplo n.º 1
0
def main():

    logging.info("Loading Config file: {}".format(conf))

    # Create sh file
    filename = 'run_' + bench_name + '.sh'
    f = open(filename, 'w')

    print('#!/bin/bash', file=f)
    print('', file=f)

    for i, (vals, name, mykeys) in enumerate(zip(values, names, keys)):
        config = json.load(open(conf))

        for val, key in zip(vals, mykeys):
            pvorg.change_value(config, key, val)

        logdir = pvorg.get_logdir_name(config=config,
                                       bench=bench_name,
                                       prefix=name,
                                       cfg_file=conf)

        pvorg.init_logdir(config=config, cfg_file=conf, logdir=logdir)

        print(print_str.format(run=logdir, gpu=i), file=f)

        logging.info("    {}".format(print_str.format(run=logdir, gpu=i)))

        logging.info(" ")

    print("", file=f)
    f.close()

    st = os.stat(filename)
    os.chmod(filename, st.st_mode | stat.S_IEXEC)
Ejemplo n.º 2
0
def main(args):

    pvutils.set_gpus_to_use(args)

    logging.info("Loading Config file: {}".format(args.config))
    config = json.load(args.config)

    logdir = pvorg.get_logdir_name(project=config['pyvision']['project_name'],
                                   bench=args.bench,
                                   cfg_file=args.config,
                                   prefix=args.name,
                                   timestamp=args.timestamp)

    pvorg.init_logdir(config, args.config, logdir)

    logging.info("Model initialized in: ")
    logging.info(logdir)

    if args.wait:
        import GPUtil
        while GPUtil.getGPUs()[0].memoryUtil > 0.1:
            logging.info("GPU 0 is beeing used.")
            GPUtil.showUtilization()
            sleep(60)

    if args.debug or args.train:

        sfile = config['pyvision']['entry_point']

        model_file = os.path.realpath(
            os.path.join(os.path.dirname(args.config), sfile))

        assert (os.path.exists(model_file))

        m = imp.load_source('model', model_file)

        mymodel = m.create_pyvision_model(config,
                                          logdir=logdir,
                                          debug=args.debug)

        if args.debug:
            restarts = 0
        else:
            restarts = args.restarts

        pvutils.robust_training(mymodel, restarts=restarts, subprocess=False)

        # Do forward pass
        # img_var = Variable(sample['image']).cuda() # NOQA
        # prediction = mymodel(img_var)
    else:
        logging.info("Initializing only mode. [Try train.py --train ]")
        logging.info("To start training run:")
        logging.info("    pv2 train {} --gpus".format(logdir))

    return logdir
Ejemplo n.º 3
0
        args.bench = 'Debug'
        config['logging']['display_iter'] = 5
        config['logging']['eval_iter'] = 5
        # config['logging']['max_val_examples'] = 10
        # config['logging']['max_train_examples'] = 10

        config['evaluation']['val_subsample'] = 20
        config['evaluation']['train_subsample'] = 500

        config['training']['max_epoch_steps'] = 10
        config['training']['max_epochs'] = 10
        config['training']['batch_size'] = 2

    logdir = pvorg.get_logdir_name(project=config['pyvision']['project_name'],
                                   bench=args.bench,
                                   cfg_file=args.config,
                                   prefix=args.name,
                                   timestamp=args.timestamp)

    pvorg.init_logdir(config, args.config, logdir)

    logging.info("Model initialized in: ")
    logging.info(logdir)

    if args.wait:
        import GPUtil
        while GPUtil.getGPUs()[0].memoryUtil > 0.1:
            logging.info("GPU 0 is beeing used.")
            GPUtil.showUtilization()
            sleep(60)