Лоиҳаи Pyston, ки Python-ро бо компилятори JIT пешниҳод мекунад, ба модели кушодаи рушд баргашт

Таҳиягарони лоиҳаи Pyston, ки татбиқи баландсифати забони Python-ро бо истифода аз технологияҳои муосири компиляцияи JIT пешниҳод мекунад, версияи нави Pyston 2.2-ро муаррифӣ карданд ва баргардонидани лоиҳаро ба манбаи кушода эълон карданд. Ҳадафи татбиқ ба даст овардани нишондиҳандаҳои баланд дар муқоиса бо забонҳои анъанавии система, ба монанди C++ мебошад. Рамзи филиали Pyston 2 дар GitHub зери PSFL (литсензияи Python Software Foundation), шабеҳи иҷозатномаи CPython нашр мешавад.

Биёед дар хотир дорем, ки лоиҳаи Pyston қаблан аз ҷониби Dropbox назорат карда шуда буд, ки маблағгузории рушдро дар соли 2017 қатъ кард. Таҳиягарони Pyston ширкати худро таъсис доданд ва филиали ба таври назаррас аз нав тарҳрезишудаи Pyston 2-ро бароварданд, ки устувор ва барои истифодаи васеъ омода эълон карда шуд. Дар айни замон, таҳиягарон нашри коди ибтидоиро қатъ карданд ва ба пешниҳоди танҳо ассамблеяҳои дуӣ гузаштанд. Ҳоло тасмим гирифта шудааст, ки Pyston дубора ба лоиҳаи кушодаасос табдил дода шавад ва ширкат ба модели тиҷории марбут ба таҳияи нармафзори кушодаасос интиқол дода шавад. Ғайр аз он, имкони интиқоли оптимизатсия аз Pyston ба стандарти CPython баррасӣ мешавад.

Қайд карда мешавад, ки Pyston 2.2 нисбат ба стандарти Python 30% тезтар дар санҷишҳои корбарӣ, ки сарбориҳои хоси барномаҳои веб-серверро арзёбӣ мекунанд. Инчунин афзоиши назарраси иҷроиш дар Pyston 2.2 нисбат ба версияҳои қаблӣ ба назар мерасад, ки он асосан тавассути илова кардани оптимизатсия барои минтақаҳои нав, инчунин такмил додани механизмҳои JIT ва кэш ба даст омадааст.

Илова ба оптимизатсияи иҷроиш, версияи нав низ ҷолиб аст, зеро он тағиротҳоро аз шохаи CPython 3.8.8 мегирад. Дар робита ба мутобиқат бо Python модарӣ, лоиҳаи Pyston ҳамчун татбиқи алтернативии аз ҳама мувофиқ ба CPython номида мешавад, зеро Pyston як форк аз пойгоҳи асосии CPython аст. Pyston ҳамаи хусусиятҳои CPython, аз ҷумла C API-ро барои таҳияи васеъшавӣ дар забони C дастгирӣ мекунад. Дар байни фарқиятҳои асосии байни Pyston ва CPython истифодаи DynASM JIT, кэшкунии дохилӣ ва оптимизатсияи умумӣ мебошад.

Дар байни тағиротҳо дар Pyston 2.2, инчунин тоза кардани пойгоҳи код аз бисёр хусусиятҳои ислоҳи CPython, ки ба иҷроиш таъсири манфӣ мерасонанд, аммо дар байни таҳиягарон тақрибан талабот надоранд. Оморҳо оварда шудаанд, ки мувофиқи он нест кардани абзорҳои ислоҳкунӣ боиси 2% суръат мегардад, гарчанде ки танҳо тақрибан 2% таҳиягарон ин функсияҳоро истифода мебаранд.

Манбаъ: opennet.ru

Илова Эзоҳ