Попробовал тут ray. Это такая чудесная библиотека для запуска кода на нескольких процессах, машинах и даже GPU. Интерфейс чудесный и максимально простой. Одна из тех замечательных штук, что умеют выдерживать баланс между огромными возможностями и простым использованием. Вот какой у меня получился код, чтобы параллельно запустить обработку кучи файлов:
def f(input_path, output_path):
...
ray.init()
remotes = []
for path in Path(sys.argv[1]).iterdir():
remotes.append(f.remote(
input_path=str(path),
output_path=str(tmp / (path.stem)),
))
ray.get(remotes)```
Идеально.
Сегодня на кнопке пицца. Потому что я ещё не видел Python проекта с пиццой на логотипе, несмотря на то, что пицца офигенна.