Pyston-lite JIT kompiliatorius dabar palaiko Python 3.10

Yra naujas Pyston-lite plėtinio leidimas, kuriame įdiegtas JIT kompiliatorius, skirtas CPython. Skirtingai nuo Pyston projekto, kuris yra sukurtas atskirai nuo CPython kodų bazės, Pyston-lite sukurtas kaip universalus plėtinys, skirtas prisijungti prie standartinio Python interpretatoriaus (CPython). Naujasis leidimas pasižymi tuo, kad be anksčiau palaikomos 3.7 šakos palaiko Python 3.9, 3.10 ir 3.8 šakas.

Pyston-lite leidžia naudotis pagrindinėmis Pyston technologijomis nekeičiant interpretatoriaus, įdiegiant papildomą plėtinį naudojant PIP arba Conda paketų tvarkyklę. „Pyston-lite“ jau yra „PyPI“ ir „Conda“ saugyklose, o norėdami įdiegti, tiesiog paleiskite komandą „pip install pyston_lite_autoload“ arba „conda install pyston_lite_autoload -c pyston“. Siūlomi du paketai: pyston_lite (JIT tiesiogiai) ir pyston_lite_autoload (paleidžiant Python procesą atlieka automatinį JIT pakeitimą). Taip pat galima programiškai valdyti JIT įgalinimą programoje, neįdiegiant automatinio įkėlimo modulio, naudojant funkciją pyston_lite.enable().

Be to, kūrėjai paskelbė, kad dabar „Pyston-lite“ laiko pagrindiniu produktu. Įprastas Pyston leidžia pasiekti didesnį našumą, tačiau jį naudoti trukdo būtinybė pakeisti interpretatorių, o Pyston-lite lengvai integruojamas į esamas konfigūracijas. Konkretūs Pyston optimizavimai, jei įmanoma, bus perkelti į pagrindinę CPython kompoziciją. Ilgainiui norima JIT kompiliatoriaus įgyvendinimą perkelti į pagrindinę CPython struktūrą.

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

Būsimas pagrindinio CPython 3.11 projekto leidimas apima pakeitimus, susijusius su baitinio kodo būsenos kaupimu, greitesniais funkcijų iškvietimais ir greitų interpretatorių naudojimu įprastoms operacijoms, taip pat kai kuriuos Cinder ir HotPy projektų parengtus optimizavimus. Dėl to CPython 3.11rc2 aukščiau pateiktuose testuose rodo 12% ir 26% našumo padidėjimą, kuris yra panašus į Pyston-lite našumą (naujieji CPython ir Pyston-lite naudoja skirtingus optimizavimus; Pyston-lite perkėlimas į CPython 3.11 dar labiau pagerins šios šakos našumą ).

Šaltinis: opennet.ru

Добавить комментарий