Вновь про ускорение и о связи PEP 659 с прошлогодним предложением от Марка Шеннона.
Напомню, что Марк Шеннон осенью прошлого 2020 года говорил о возможности ускорения CPython в 5 раз и предлагал себя исполнителем, если Фонд Python согласится выделить на это финансовые средства.

Потом обсуждение поутихло. Однако же в последние дни в трекере Python начали появляться задачи на оптимизацию, в которых Марк заявлен исполнителем, а в середине прошлой недели было опубликовано «PEP 659 Специализирующийся адаптивный интерпретатор».

А дело вот в чём. 11 мая прошёл Саммит Языка, на котором ван Россум выступал с докладом «Making CPython Faster». Оказалось, что за прошлый год Гвидо устал «ничего не делать» и обратился в Microsoft. Был нанят со свободой выбора проекта. Короче говоря, Microsoft как бы в благодарность сообществу Python изъявила желание спонсировать работу по ускорению CPython.

Помимо самого ван Россума и Марка в проекте будет участвовать Эрик Сноу. Возможно команда ещё пополнится, но останется небольшой.

Проект будет разрабатываться и обсуждаться открыто. На GitHub появилась организация faster-cpython с репозиториями, среди которых форк cpython, утилиты для анализа и замера производительности, место для обсуждения планов и идей (здесь, кстати, доступны слайды с выступления ван Россума на саммите).

Возможные направления оптимизации:
  • специализация интерпретатора байткода;
  • оптимизация стека фреймов, ускорение вызовов, выделения памяти;
  • снижение расходов на обработку исключений;
  • сокращение времени запуска;
  • оптимизация работы с целыми;
  • пр.

Таким образом, команда смеет надеяться увидеть двухкратный прирост производительности уже в Python 3.11, хотя пока до этого неблизко.

Будем следить за развитием событий.

Категории

Интерпретатор

На заметку
У нас есть представительство в Facebook. Ссылка в самом низу страницы.