Наш кейс: внутренний сервис обработки документов — парсинг PDF, постобработка после OCR, много чистого Python плюс lxml. Поставили рядом с обычным интерпретатором:
Код: Выделить всё
uv python install 3.14t
uv venv --python 3.14t— 3.14 обычный + multiprocessing, 8 воркеров: 94 с
— 3.14t + ThreadPoolExecutor, 8 потоков: 71 с
— 3.14t, 16 потоков: 52 с
Главный выигрыш даже не в параллельности как таковой, а в том, что выкинули сериализацию между процессами: объекты по 50–200 МБ больше не гоняем через pickle туда-обратно.
Минусы честные: однопоточный код просел процентов на 7, и мы поймали две гонки в собственном коде, которые GIL годами маскировал. Кто ещё пробовал? Интересует и положительный, и отрицательный опыт.