Example #1
0
def main(args):
    from guild import tensorboard
    tensorboard.setup_logging()
    with util.TempDir("guild-tensorboard-", keep=args.keep_logdir) as tmp:
        logdir = tmp.path
        (log.info if args.keep_logdir else log.debug)("Using logdir %s",
                                                      logdir)
        monitor = tensorboard.RunsMonitor(logdir, _list_runs_cb(args),
                                          args.refresh_interval)
        cli.out("Preparing runs for TensorBoard")
        monitor.run_once(exit_on_error=True)
        monitor.start()
        try:
            tensorboard.serve_forever(logdir=logdir,
                                      host=(args.host or "0.0.0.0"),
                                      port=(args.port or util.free_port()),
                                      reload_interval=args.refresh_interval,
                                      ready_cb=_open_cb(args))
        except tensorboard.TensorboardError as e:
            cli.error(str(e))
        finally:
            log.debug("Stopping")
            monitor.stop()
            log.debug("Removing logdir %s", logdir)  # Handled by ctx mgr
    if util.PLATFORM != "Windows":
        cli.out()
Example #2
0
def _serve_dev(data, host, port, no_open, logging):
    view_port = util.free_port(port + 1)
    dev_server = DevServer(host, port, view_port)
    dev_server.start()
    dev_server.wait_for_ready()
    view_url = util.local_server_url(host, view_port)
    if not no_open:
        util.open_url(util.local_server_url(host, port))
    sys.stdout.write(" I  Guild View backend: {}\n".format(view_url))
    _start_view(data, host, view_port, logging)
    sys.stdout.write("\n")
Example #3
0
def _start_view(args):
    data = ViewDataImpl(args)
    host = _host(args)
    port = args.port or util.free_port()
    if args.test:
        _start_tester(host, port)
        args.no_open = True
    try:
        view.serve_forever(data, host, port, args.no_open, args.dev, args.logging)
    except socket.gaierror as e:
        cli.error(str(e))
Example #4
0
def main(args):
    tensorboard = _load_guild_tensorboard_module()
    with util.TempDir("guild-tensorboard-") as logdir:
        log.debug("Using logdir %s", logdir)
        monitor = RunsMonitor(logdir, args)
        monitor.start()
        tensorboard.main(logdir=logdir,
                         host=(args.host or ""),
                         port=(args.port or util.free_port()),
                         reload_interval=args.refresh_interval,
                         ready_cb=(_open_url if not args.no_open else None))
        log.debug("Stopping")
        monitor.stop()
        log.debug("Removing logdir %s", logdir)  # Handled by ctx mgr
    cli.out()
Example #5
0
def _run_tensorboard(args):
    from guild import tensorboard

    tensorboard.setup_logging()
    with util.TempDir("guild-tensorboard-", keep=_keep_logdir(args)) as tmp:
        logdir = tmp.path
        (log.info if args.keep_logdir else log.debug)("Using logdir %s", logdir)
        tensorboard_options = _tensorboard_options(args)
        monitor = tensorboard.RunsMonitor(
            logdir,
            _list_runs_cb(args),
            interval=args.refresh_interval,
            log_images=not args.skip_images,
            log_hparams=not args.skip_hparams,
            run_name_cb=_run_name_cb(args),
        )
        t0 = time.time()
        cli.out("Preparing runs for TensorBoard")
        monitor.run_once(exit_on_error=True)
        if args.test_logdir:
            cli.out("Initialized log dir %s" % logdir)
            return
        _maybe_log_prepare_time(t0)
        monitor.start()
        try:
            tensorboard.serve_forever(
                logdir=logdir,
                host=(args.host or "0.0.0.0"),
                port=(args.port or util.free_port()),
                reload_interval=args.refresh_interval,
                tensorboard_options=tensorboard_options,
                ready_cb=_open_cb(args),
            )
        except tensorboard.TensorboardError as e:
            cli.error(str(e))
        finally:
            log.debug("Stopping")
            monitor.stop()
            if not args.keep_logdir:
                # Removal of temp logdir occurs when context manager
                # exits.
                log.debug("Removing logdir %s", logdir)
            else:
                print("TensorBoard logs saved in %s" % logdir)
    if util.get_platform() != "Windows":
        cli.out()
Example #6
0
def main(args):
    tensorboard = _load_guild_tensorboard_module()
    tensorboard.setup_logging()
    with util.TempDir("guild-tensorboard-") as logdir:
        log.debug("Using logdir %s", logdir)
        list_runs_cb = lambda: runs_impl.runs_for_args(args)
        monitor = tensorboard.RunsMonitor(list_runs_cb, logdir,
                                          args.refresh_interval)
        monitor.start()
        try:
            tensorboard.serve_forever(
                logdir=logdir,
                host=(args.host or "0.0.0.0"),
                port=(args.port or util.free_port()),
                reload_interval=args.refresh_interval,
                ready_cb=(_open_url if not args.no_open else None))
        except tensorboard.TensorboardError as e:
            cli.error(str(e))
        finally:
            log.debug("Stopping")
            monitor.stop()
            log.debug("Removing logdir %s", logdir)  # Handled by ctx mgr
    if util.PLATFORM != "Windows":
        cli.out()