Ejemplo n.º 1
0
                'gpu_rss_mb': detector.gpu_mem / len(img_list),
                'gpu_util': detector.gpu_util * 100 / len(img_list)
            }

            perf_info = detector.det_times.report(average=True)
            model_dir = FLAGS.model_dir
            mode = FLAGS.run_mode
            model_info = {
                'model_name': model_dir.strip('/').split('/')[-1],
                'precision': mode.split('_')[-1]
            }
            data_info = {
                'batch_size': FLAGS.batch_size,
                'shape': "dynamic_shape",
                'data_num': perf_info['img_num']
            }
            det_log = PaddleInferBenchmark(detector.config, model_info,
                                           data_info, perf_info, mems)
            det_log('Det')


if __name__ == '__main__':
    paddle.enable_static()
    parser = argsparser()
    FLAGS = parser.parse_args()
    print_arguments(FLAGS)
    FLAGS.device = FLAGS.device.upper()
    assert FLAGS.device in ['CPU', 'GPU',
                            'XPU'], "device should be CPU, GPU or XPU"
    main()
Ejemplo n.º 2
0
    q_vals = session.run(target_dqn.q_values,
                         feed_dict={target_dqn.input: new_states})
    double_q = q_vals[range(batch_size), arg_q_max]
    # Bellman equation. Multiplication with (1-terminal_flags) makes sure that
    # if the game is over, targetQ=rewards
    target_q = rewards + (gamma * double_q * (1 - terminal_flags))
    # Gradient descend step to update the parameters of the main network
    loss, _ = session.run(
        [main_dqn.loss, main_dqn.update],
        feed_dict={
            main_dqn.input: states,
            main_dqn.target_q: target_q,
            main_dqn.action: actions
        })
    return loss


args = utils.argsparser()
tf.random.set_random_seed(args.seed)
np.random.seed(args.seed)

tf.reset_default_graph()
# Control parameters
if args.task == "train":
    utils.train(args, DQN, learn, "dist_dqn")
elif args.task == "evaluate":
    utils.sample(args, DQN, "dist_dqn", save=False)
elif args.task == "log":
    utils.generate_figures("dist_dqn")
else:
    utils.sample(args, DQN, "dist_dqn")