Zhvilluesit e projektit Pyston, që ofron një implementim me performancë të lartë të gjuhës Python, duke përdorur teknologjitë moderne të JIT-kompilimit, kanë prezantuar një version të ri, Pyston 2.2, dhe kanë shpallur rikthimin e projektit në statusin e hapur. Implementimi ka si qëllim arritjen e një niveli të lartë performancë, të krahasueshme me performancën e gjuhëve tradicionale të sistemit, si C++. Kodi i degës Pyston 2 është publikuar në GitHub nën licencën PSFL (Python Software Foundation License), e cila është e ngjashme me licencën e CPython.
Kujtojmë se më parë, projekti Pyston u mbikëqyr nga kompania Dropbox, e cila ndaloi financimin e zhvillimit në vitin 2017. Zhvilluesit e Pyston themeluan kompaninë e tyre dhe publikuan një degë të ndryshuar thelbësisht, Pyston 2, e cila u shpall e qëndrueshme dhe e gatshme për përdorim të gjerë. Megjithatë, zhvilluesit ndaluan publikimin e kodit burimor dhe kaluan në ofrimin e vetëm ndërtimëve binarë. Tani është vendosur që Pyston ta rikthejë përsëri si një projekt të hapur, dhe kompaninë ta kalojë në një model biznesi të lidhur me zhvillimin e softuerit të hapur. Për më tepër, po shqyrtohet mundësia e transferimit të optimizimeve nga Pyston në CPython standard.
Vërehet se Pyston 2.2 në testet e performancës, që vlerësojnë ngarkesat e zakonshme për aplikacionet për server web, është 30% më i shpejtë se Python standard. Gjithashtu, vërehet një rritje e dukshme e performancës së Pyston 2.2 krahasuar me versionet e kaluara, e cila është arritur kryesisht falë shtimit të optimizimeve për fusha të reja, si dhe përmirësimit të JIT dhe mekanizmave të caching.
Përveç optimizimit të performancës, versioni i ri është gjithashtu interesant për transferimin e ndryshimeve nga dega CPython 3.8.8. Në aspektin e pajtueshmërisë me Python standard, projekti Pyston paraqitet si implementimi alternativ më i pajtueshëm me CPython, pasi Pyston është një degë e kodit të bazës kryesore CPython. Në Pyston përkrahën të gjitha mundësitë e CPython, përfshirë C API për zhvillimin e zgjerimeve në gjuhën C. Ndër dallimet kryesore të Pyston nga CPython spikat përdorimi i DynASM JIT, caching inline dhe optimizime të përgjithshme.
Nga ndryshimet në Pyston 2.2 përmendet gjithashtu pastrimi i bazës së kodit nga shumë mundësi debugimi të CPython, që ndikojnë negatively në performancë, por që janë pak të kërkuara nga zhvilluesit. Statistika tregon se eliminimi i mjeteve të debugimit çon në një përshpejtim prej 2%, kurse vetëm rreth 2% e zhvilluesve përdorin këto funksione.
Burimi: opennet.ru
