La Pyston-projekto, kiu ofertas Python kun JIT-kompililo, revenis al malferma disvolva modelo

La programistoj de la projekto Pyston, kiu ofertas alt-efikecan efektivigon de la lingvo Python uzante modernajn kompilteknologiojn de JIT, prezentis novan eldonon de Pyston 2.2 kaj anoncis la revenon de la projekto al la malferma fonto. La efektivigo celas atingi altan rendimenton proksiman al tiu de tradiciaj sistemlingvoj kiel C++. La kodo por la branĉo Pyston 2 estas publikigita sur GitHub sub la PSFL (Python Software Foundation License), simile al la CPython-licenco.

Ni memoru, ke la projekto Pyston antaŭe estis kontrolita de Dropbox, kiu ĉesis financi disvolviĝon en 2017. La Pyston-programistoj fondis sian firmaon kaj liberigis signife restrukturitan Pyston 2 branĉon, kiu estis deklarita stabila kaj preta por ĝeneraligita uzo. Samtempe, la programistoj ĉesis publikigi la fontkodon kaj ŝanĝis al disponigado de nur binaraj asembleoj. Nun oni decidis fari Pyston denove malfermfontecan projekton, kaj translokigi la kompanion al komerca modelo rilata al la disvolviĝo de malfermkoda programaro. Plie, la ebleco translokigi optimumigojn de Pyston al norma CPython estas konsiderata.

Oni rimarkas, ke Pyston 2.2 estas 30% pli rapida ol norma Python en agado-testoj, kiuj taksas la ŝarĝojn proprajn al retservilaj aplikoj. Ankaŭ estas signifa pliiĝo en rendimento en Pyston 2.2 kompare kun antaŭaj eldonoj, kiu estis atingita ĉefe per aldono de optimumigoj por novaj areoj, same kiel plibonigoj al JIT kaj kaŝmemormekanismoj.

Krom agado-optimumoj, la nova eldono ankaŭ estas interesa ĉar ĝi portas ŝanĝojn de la branĉo CPython 3.8.8. Koncerne kongruon kun denaska Python, la Pyston-projekto estas prezentita kiel la plej CPython-kongrua alternativa efektivigo, ĉar Pyston estas forko de la ĉefa CPython-kodbazo. Pyston subtenas ĉiujn funkciojn de CPython, inkluzive de la C-API por disvolvi etendaĵojn en la C-lingvo. Inter la ĉefaj diferencoj inter Pyston kaj CPython estas la uzo de DynASM JIT, enlinia kaŝmemoro kaj ĝeneralaj optimumigoj.

Inter la ŝanĝoj en Pyston 2.2, estas ankaŭ mencio pri purigado de la koda bazo de multaj sencimigaj funkcioj de CPython, kiuj negative influas rendimenton, sed preskaŭ ne estas postulataj inter programistoj. Statistikoj estas donitaj laŭ kiuj forigo de sencimigaj iloj kondukas al 2% plirapidigo, malgraŭ tio, ke nur ĉirkaŭ 2% de programistoj uzas ĉi tiujn funkciojn.

fonto: opennet.ru

Aldoni komenton