Projekt Pyston, ki ponuja Python s prevajalnikom JIT, se je vrnil k odprtemu razvojnemu modelu

Razvijalci projekta Pyston, ki ponuja visoko zmogljivo implementacijo jezika Python z uporabo sodobnih tehnologij prevajanja JIT, so predstavili novo izdajo Pyston 2.2 in napovedali vrnitev projekta v odprto kodo. Cilj implementacije je doseči visoko zmogljivost, ki je blizu zmogljivosti tradicionalnih sistemskih jezikov, kot je C++. Koda za vejo Pyston 2 je objavljena na GitHubu pod licenco PSFL (Python Software Foundation License), podobno kot licenca CPython.

Naj spomnimo, da je projekt Pyston pred tem nadzoroval Dropbox, ki je leta 2017 prenehal financirati razvoj. Razvijalci Pyston so ustanovili svoje podjetje in izdali bistveno prenovljeno vejo Pyston 2, ki je bila razglašena za stabilno in pripravljeno za široko uporabo. Istočasno so razvijalci prenehali objavljati izvorno kodo in prešli na zagotavljanje samo binarnih sklopov. Zdaj je bilo odločeno, da Pyston ponovno postane odprtokodni projekt in podjetje prenese na poslovni model, povezan z razvojem odprtokodne programske opreme. Poleg tega se preučuje možnost prenosa optimizacij iz Pystona v standardni CPython.

Opozoriti je treba, da je Pyston 2.2 30 % hitrejši od standardnega Pythona v testih zmogljivosti, ki ocenjujejo obremenitve, ki so del aplikacij spletnega strežnika. V Pystonu 2.2 je tudi precejšnje povečanje zmogljivosti v primerjavi s prejšnjimi izdajami, kar je bilo doseženo predvsem z dodajanjem optimizacij za nova področja ter izboljšavami mehanizmov JIT in predpomnjenja.

Poleg optimizacije delovanja je nova izdaja zanimiva tudi zato, ker prenaša spremembe iz veje CPython 3.8.8. Kar zadeva združljivost z izvornim Pythonom, se projekt Pyston oglašuje kot alternativna izvedba, ki je najbolj združljiva s CPython, saj je Pyston razcep iz glavne kodne baze CPython. Pyston podpira vse funkcije CPython, vključno z API-jem C za razvoj razširitev v jeziku C. Med glavnimi razlikami med Pystonom in CPythonom je uporaba DynASM JIT, vgrajeno predpomnjenje in splošne optimizacije.

Med spremembami v Pystonu 2.2 je omenjeno tudi čiščenje baze kode iz številnih funkcij za odpravljanje napak CPython, ki negativno vplivajo na zmogljivost, vendar med razvijalci skoraj niso v povpraševanju. Podani so statistični podatki, po katerih odstranitev orodij za odpravljanje napak povzroči 2-odstotno pospešitev, kljub dejstvu, da te funkcije uporablja le približno 2 % razvijalcev.

Vir: opennet.ru

Dodaj komentar