Pyston-lite JIT компилятору азыр Python 3.10 колдойт

Доступен новый выпуск расширения Pyston-lite, реализующего JIT-компилятор для CPython. В отличие от проекта Pyston, развиваемого обособленно как ответвление от кодовой базы CPython, Pyston-lite оформлен в виде универсального расширения, предназначенного для подключения к штатному интерпретатору Python (CPython). Новый выпуск примечателен обеспечением поддержки веток Python 3.7, 3.9 и 3.10, помимо ранее поддерживаемой ветки 3.8.

Pyston-lite PIP же Conda пакет менеджерин колдонуу менен кошумча кеңейтүүнү орнотуу менен котормочуну өзгөртпөстөн негизги Pyston технологияларын колдонууга мүмкүндүк берет. Pyston-lite мурунтан эле PyPI жана Conda репозиторийлеринде жайгаштырылган жана орнотуу үчүн жөн гана "pip install pyston_lite_autoload" же "conda install pyston_lite_autoload -c pyston" буйругун аткарыңыз. Эки топтом сунушталат: pyston_lite (JIT түз) жана pyston_lite_autoload (Python процессин баштаганда автоматтык түрдө JIT алмаштырууну жасайт). Ошондой эле pyston_lite.enable() функциясын колдонуп, автожүктөө модулун орнотпостон, колдонмонун ичинен JITти иштетүүнү программалык түрдө башкарууга болот.

Дополнительно разработчики объявили, что отныне рассматривают Pyston-lite в качестве своего первичного продукта. Обычный Pyston позволяет добиться более высокой производительности, но его использование затруднено необходимостью замены интерпретатора, в то время как Pyston-lite легко интегрируется в имеющиеся конфигурации. Присутствовавшие в Pyston специфичные оптимизации будут по возможности перенесены в основной состав CPython. В отдалённой перспективе имеется желание перенести в основной состав CPython и реализацию JIT-компилятора.

В текущем виде по сравнению с CPython 3.8 использование Pyston-lite позволяет поднять производительность на 10% в тексте macrobenchmarks и на 28% в тесте pyperformance. Для сравнения прирост производительности при использовании обособленного Pyston составляет 28% и 65% соответственно.

В грядущий выпуск основного проекта CPython 3.11 включены изменения, связанные с кэшированием состояния байткода, ускорением вызова функций и применением быстрых интерпретаторов типовых операций, а также перенесены некоторые оптимизации, подготовленные проектами Cinder и HotPy. В итоге CPython 3.11rc2 в вышеотмеченных тестах демонстрирует прирост производительности в 12% и 26%, что сопоставимо с показателями Pyston-lite (в новом CPython и Pyston-lite применены разные оптимизации, портирование Pyston-lite для CPython 3.11 позволит ещё поднять производительность данной ветки).

Source: opennet.ru

Комментарий кошуу