Programiranje

Pyston se vrne iz mrtvih, da pospeši Pythona

Razvoj Pystona, različice izvajalnega okolja Python, ki uporablja pravočasno kompilacijo za pospešitev izvajanja programov Python, se je po daljšem obdobju spet znova zagnal. Ko je Dropbox končal, je nova razvojna skupina izdala Pyston 2.0.

Pyston ponuja tisto, kar je na koncu namenjeno nadomestitvi običajnega Pythonovega izvajalnega okolja, CPython. Združljiv je s Pythonom 3.8, zato bi morali programi, ki se izvajajo s to različico Pythona, delovati takšni, kot so na Pystonu.

Pyston generira kodo s pomočjo pravočasne kompilacije ali JITting-a, s čimer doseže veliko svojih pospeševanj. Programi Pure-Python kažejo največje izboljšave, programi, ki uporabljajo module C / C ++ za hitrejše izvajanje, na primer PyTorch, pa manj ali nič.

Eden od ciljev projekta je bil, da ostane čim bližje prvotni izvedbi CPythona, saj številni projekti neodvisnih proizvajalcev predvidevajo vedenje CPythona. Tako se je Pyston 2.0 začel z obstoječo kodno bazo CPython in dodal funkcije iz Pystona 1.0, ki so dobro delovale, kot so atributi predpomnjenja in JITting. Pystonov JIT ne uporablja več LLVM, ampak DynASM za neposredno oddajanje sklopa.

JITting je ista tehnika, ki jo uporablja drugi projekt, PyPy, za dostavo večjih pospešitev aplikacij Python - v nekaterih primerih sedemkrat več, kot jih lahko zagotovi CPython. Vendar proizvajalci Pystona trdijo, da ima njihov pristop več prednosti pred PyPy, vključno z boljšo združljivostjo s API-jem CPython C in manjšo porabo pomnilnika za običajne delovne obremenitve (npr. Flask in DjangoCMS).

Ustanovljen v Dropboxu, je Pyston prenehal z razvojem leta 2017, ko je Dropbox umaknil podporo. Zdaj se projekt nadaljuje pod nadzorom nekaterih njegovih prvotnih razvijalcev, čeprav neodvisno.

"V začetku leta 2020," piše v uradnem blogu Pystona, "je bilo na voljo dovolj kosov, da smo lahko ustanovili podjetje in delali na Pystonu s polnim delovnim časom." Vendar je za razliko od prvotne inkarnacije Pystona nova različica za zdaj zaprta, saj novi skrbniki določajo njihov poslovni model. Zdi se, da je izvorna koda, ki je na voljo v projektu GitHub, iz prejšnje inkarnacije in ne iz najnovejše različice.

Vnaprej izdelane binarne datoteke Pystona so na voljo za Ubuntu 18.04 in Ubuntu 20.04 x86_64. Razvojna skupina je pripravljena izdelati druge izdaje na podlagi povratnih informacij uporabnikov.

$config[zx-auto] not found$config[zx-overlay] not found