def start(config: Config):
    tf_util.set_session_config(per_process_gpu_memory_fraction=0.3)
    api_server = MultiProcessReversiModelAPIServer(config)
    process_num = config.play_data.multi_process_num
    api_server.start_serve()

    with Manager() as manager:
        shared_var = SharedVar(
            manager,
            game_idx=read_as_int(config.resource.self_play_game_idx_file) or 0)
        with ProcessPoolExecutor(max_workers=process_num) as executor:
            futures = []
            for i in range(process_num):
                play_worker = SelfPlayWorker(config,
                                             env=ReversiEnv(),
                                             api=api_server.get_api_client(),
                                             shared_var=shared_var,
                                             worker_index=i)
                futures.append(executor.submit(play_worker.start))
Exemple #2
0
def start(config: Config):
    tf_util.set_session_config(allow_growth=True)
    # api_server_list = [MultiProcessReversiModelAPIServer(config) for i in range(config.model.num_gpus)]
    api_server = MultiProcessReversiModelAPIServer(config)
    api_server.start_serve()
    process_num = config.play_data.multi_process_num
    # for i in range(config.model.num_gpus):
    #     api_server_list[i].start_serve(i)
    #     print(f'Create server on GPU#{i}')

    with Manager() as manager:
        shared_var = SharedVar(
            manager,
            game_idx=read_as_int(config.resource.self_play_game_idx_file) or 0)
        with ProcessPoolExecutor(max_workers=process_num) as executor:
            futures = []
            for i in range(process_num):
                play_worker = SelfPlayWorker(config,
                                             env=ReversiEnv(),
                                             api=api_server.get_api_client(),
                                             shared_var=shared_var,
                                             worker_index=i)
                futures.append(executor.submit(play_worker.start))
Exemple #3
0
def start(config: Config):
    tf_util.set_session_config(per_process_gpu_memory_fraction=0.65)
    return OptimizeWorker(config).start()
def start(config: Config, gpu_mem_frac=None):
    if gpu_mem_frac is not None:
        tf_util.set_session_config(per_process_gpu_memory_fraction=gpu_mem_frac)
    return TournamentWorker(config).start()
def start(config: Config):
    tf_util.set_session_config(per_process_gpu_memory_fraction=0.2)
    return EvaluateWorker(config).start()
def start(config: Config):
    tf_util.set_session_config(per_process_gpu_memory_fraction=0.3)
    return SelfPlayWorker(config, env=ReversiEnv()).start()
Exemple #7
0
def start(config: Config):
    tf_util.set_session_config(per_process_gpu_memory_fraction=None,
                               allow_growth=True)
    return OptimizeWorker(config).start()
Exemple #8
0
def start(config: Config):
    tf_util.set_session_config(allow_growth=True)
    return OptimizeWorker(config).start()
Exemple #9
0
def start(config: Config):
    tf_util.set_session_config(per_process_gpu_memory_fraction=None, allow_growth=True)
    return SelfPlayWorker(config, env=ReversiEnv()).start()