Pyston-lite, isuduwaha JIT ee kaydka Python ayaa la soo bandhigay

Horumarinta mashruuca Pyston, oo bixisa hirgelinta waxqabadka sare ee luqadda Python oo adeegsata teknoolojiyadda isku-darka casriga ah ee JIT, waxay soo bandhigeen kordhinta Pyston-lite iyadoo la hirgelinayo isku-duwaha JIT ee CPython. Haddii Pyston ay tahay laan ka mid ah codebase CPython oo ay si gaar ah u horumarto, markaa Pyston-lite waxaa loo qaabeeyey sidii kordhin caalami ah oo loogu talagalay in lagu xidho turjubaanka caadiga ah ee Python (CPython).

Pyston-lite waxay kuu ogolaanaysaa inaad isticmaasho tignoolajiyada aasaasiga ah ee Pyston adigoon bedelin turjumaanka, adoo ku rakibaya kordhin dheeraad ah adoo isticmaalaya PIP ama Conda maareeyaha xirmada. Pyston-lite waxa mar hore lagu marti galiyay kaydadka PyPI iyo Conda, iyo si loo rakibo, kaliya socodsii amarka "pip install pyston_lite_autoload" ama "conda install pyston_lite_autoload -c pyston". Laba xirmo ayaa la soo jeediyay: pyston_lite (JIT si toos ah) iyo pyston_lite_autoload (wuxuu si toos ah u bedelaa JIT marka uu bilaabayo habka Python). Waxa kale oo suurtogal ah in si barnaamij ah loo xakameeyo awoodsiinta JIT ee gudaha codsiga iyada oo aan la rakibin moduleka autoload, iyada oo la adeegsanayo pyston_lite.enable().

Inkasta oo Pyston-lite aanay daboolin dhammaan hagaajinta laga heli karo Pyston, iyada oo la isticmaalayo waxay keeni kartaa ku dhawaad ​​10-25% horumarinta waxqabadka Python 3.8 ee caadiga ah. Mustaqbalka, waxaan qorsheyneynaa inaan soo dejino inta badan hagaajinta ka jirta Pyston ilaa Pyston-lite, iyo sidoo kale ballaarinta noocyada la taageeray ee CPython (siideynta ugu horreysa waxay taageertaa oo keliya Python 3.8). Qorshayaasha caalamiga ah ee dheeraadka ah, waxaa jira shaqo wadajir ah oo lala yeesho kooxda CPython ee hirgelinta API-yada cusub ee JIT, taas oo u oggolaanaysa in si buuxda loo xakameeyo shaqada Python. Ka doodista ku darida isbeddellada la soo jeediyay ee laanta Python 3.12. Fikrad ahaan, suurtagalnimada ka wareejinta dhammaan shaqeynta Pyston ilaa kordhin ayaa la tixgeliyaa, taas oo noo ogolaan doonta inaan ka fogaano ilaalinta fargeetada CPython.

Marka lagu daro Pyston-lite, mashruucu wuxuu sidoo kale soo saaray casriyeyn ku saabsan xirmada buuxda ee Pyston 2.3.4, oo ay ku jiraan wanaajin cusub. Imtixaanka pyperformance, nooca 2.3.4 ayaa ka dhakhso badan sii daynta 2.3.3 ilaa 6%. Guud ahaan faa'iidada waxqabadka ee ka sarreeya CPython waxaa lagu qiyaasay 66%.

Intaa waxaa dheer, waxaan ogaan karnaa hagaajinta lagu sameeyay qaabka wareegga horumarinta CPython 3.11 ee mashruuca ugu weyn, taas oo imtixaannada qaarkood ay noo oggolaadeen inaan kordhinno waxqabadka 25%. Tusaale ahaan, gudaha CPython 3.11, wax ku oolnimada kaydinta gobolka bytecode ee modules-yada ayaa la hagaajiyay, taas oo soo dedejin doonta soo saarista qoraallada 10-15%. Wicitaannada shaqada si weyn ayaa loo dardargeliyay waxaana lagu daray turjubaano takhasus leh oo degdeg ah ee hawlgallada caadiga ah. Waxa kale oo ay socotaa shaqada in lagu soo dejiyo qaar ka mid ah hagaajinta ay diyaariyeen mashaariicda Cinder iyo HotPy.

Intaa waxaa dheer, gudaha qaabka mashruuca nogil, shaqadu waxay ku socotaa qaab dhismeed tijaabo ah oo CPython ah iyada oo aan lahayn quful turjubaan caalami ah (GIL, Global Interpreter Lock), kaas oo aan u oggolaan in si siman loo galo walxaha la wadaago ee ka soo baxa dunta kala duwan, taas oo ka hortagaysa isbarbardhigga hawlaha on nidaamyada multi-core. Xalka kale ee dhibaatada GIL, awoodda lagu xidho GIL gaar ah turjubaan kasta oo ku dhex jira habsocodka ayaa la horumarinayaa (dhowr turjubaano ayaa ku socon kara hal hab, laakiin waxtarka fulinta isbarbardhigga waxay ku xiran tahay GIL).

Source: opennet.ru

Add a comment