Pulojekiti ya Pyston, yomwe imapereka Python ndi JIT compiler, yabwerera ku chitsanzo chotseguka

Omwe amapanga pulojekiti ya Pyston, yomwe imapereka kukhazikitsidwa kwapamwamba kwa chinenero cha Python pogwiritsa ntchito matekinoloje amakono a JIT, adapereka kumasulidwa kwatsopano kwa Pyston 2.2 ndipo adalengeza kubwerera kwa polojekitiyo kumalo otseguka. Kukhazikitsako kumafuna kukwaniritsa magwiridwe antchito kwambiri pafupi ndi zilankhulo zachikhalidwe monga C ++. Khodi ya nthambi ya Pyston 2 imasindikizidwa pa GitHub pansi pa PSFL (Python Software Foundation License), yofanana ndi layisensi ya CPython.

Tikumbukire kuti pulojekiti ya Pyston idayang'aniridwa ndi Dropbox, yomwe idasiya chitukuko chandalama mu 2017. Madivelopa a Pyston adayambitsa kampani yawo ndikutulutsa nthambi yokonzedwanso kwambiri ya Pyston 2, yomwe idanenedwa kukhala yokhazikika komanso yokonzeka kugwiritsidwa ntchito kwambiri. Panthawi imodzimodziyo, okonzawo anasiya kusindikiza kachidindo kameneko ndikusintha kuti apereke misonkhano ya binary yokha. Tsopano zasankhidwa kupanga Pyston pulojekiti yotseguka kachiwiri, ndikusamutsira kampaniyo ku chitsanzo cha bizinesi chokhudzana ndi chitukuko cha mapulogalamu otseguka. Kuphatikiza apo, mwayi wosamutsa kukhathamiritsa kuchokera ku Pyston kupita ku CPython wamba ukuganiziridwa.

Zadziwika kuti Pyston 2.2 ndi 30% mwachangu kuposa Python wamba pamayeso oyeserera omwe amawunika zolemetsa zomwe zimapezeka pamapulogalamu awebusayiti. Palinso kuwonjezeka kwakukulu kwa ntchito mu Pyston 2.2 poyerekeza ndi zomwe zinatulutsidwa m'mbuyomo, zomwe zinapindula makamaka powonjezera kukhathamiritsa kwa madera atsopano, komanso kusintha kwa JIT ndi makina osungira.

Kuphatikiza pa kukhathamiritsa kwa magwiridwe antchito, kumasulidwa kwatsopano kumakhalanso kosangalatsa chifukwa kumayendetsa zosintha kuchokera ku nthambi ya CPython 3.8.8. Pankhani yogwirizana ndi Python wamba, pulojekiti ya Pyston imadziwika kuti ndiyo njira ina yogwirizanirana ndi CPython, popeza Pyston ndi foloko yochokera ku codebase yayikulu ya CPython. Pyston imathandizira mbali zonse za CPython, kuphatikiza C API popanga zowonjezera muchilankhulo cha C. Pakati pa kusiyana kwakukulu pakati pa Pyston ndi CPython ndikugwiritsa ntchito DynASM JIT, caching inline caching and general optimizations.

Pakati pa zosintha za Pyston 2.2, palinso kutchulidwa koyeretsa ma code kuchokera kuzinthu zambiri zowonongeka za CPython, zomwe zimakhudza kwambiri ntchito, koma sizikufunidwa pakati pa omanga. Ziwerengero zimaperekedwa malinga ndi zomwe kuchotsa zida zowonongeka kumabweretsa kufulumira kwa 2%, ngakhale kuti pafupifupi 2% yokha ya omanga amagwiritsa ntchito izi.

Source: opennet.ru

Kuwonjezera ndemanga