Как изменить количество процессов ParallelRunner в Kedro? - PullRequest
2 голосов
/ 11 ноября 2019

Мой конвейер делает много HTTP-запросов. Это не загрузка процессора, я бы хотел вращать больше процессов, чем количество ядер процессора. Как я могу это изменить?

1 Ответ

2 голосов
/ 11 ноября 2019

ParallelRunner поддерживает параметр max_workers, но в настоящее время нет способа передать его из команды kedro run cli. Это сделано для уменьшения сложности CLI. Вы можете добавить параметр вручную или просто жестко закодировать значение при создании экземпляра ParallelRunner в kedro_cli.py. Часть бегуна может выглядеть так:

runner_class = load_obj(runner, "kedro.runner") if runner else SequentialRunner
runner_params = {'num_workers': 100} if runner is ParallelRunner else {}

context = load_context(Path.cwd(), env=env)
context.run(
    tags=tag,
    runner=runner_class(**runner_params),
    node_names=node_names,
    from_nodes=from_nodes,
    to_nodes=to_nodes,
    from_inputs=from_inputs,
    load_versions=load_version,
    pipeline_name=pipeline,
)
...