Programmeringssprog: Hurtigere Python -projekt Pyston tager et stort skridt fremad

0
126

 Liam Tung < p class = "meta"> Af Liam Tung | 31. august 2021 – 13:58 GMT (14:58 BST) | Emne: Enterprise Software

Python-programmeringssproget er et hit for datavidenskab og maskinlæringsprojekter på kraftfuld hardware, men en af ​​dets svagheder er hastighed.

Anaconda, en virksomhed, der leverer en førende distribution af Python til datavidenskab, ønsker at ændre det ved at understøtte Pyston – en ny implementering af Python, der kaster fejlfindingsfunktioner til hastighed.

Pyston, skabt af Kevin Modzelewski, var open-sourced i maj med løfte om en 30% acceleration i Python-kode. Modzelewski var ingeniør hos Dropbox, som var en stor bruger af Python og hyrede sprogets skaber Guido van Rossum i fem år fra 2013 for at forbedre dets kode.

Anaconda har nu ansat Modzelewski og medlederudvikler Marius Wachtler, der har fået til opgave at opbygge projektets fællesskab af brugere, bidragydere og vedligeholdere for at sikre dets langsigtede bæredygtighed.

“Support fra Anaconda vil sætte os i stand til at lægge Pyston i hænderne på flere brugere hurtigere end nogensinde før,” sagde Modzelewski i en erklæring. Anaconda hævder at have mere end 25 millioner brugere.

Pyston udfører programmer i gennemsnit 20% til 50% hurtigere end standard Python, ifølge Anaconda.

Python -implementeringen blev udviklet på Dropbox mellem 2014 og 2017. Den blev lanceret som et nyt projekt i 2020 som Pyston v2.

Pyston, som er afledt af den officielle CPython fra Python Software Foundation, forbliver et open source-projekt. Med Anaconda vil projektet fokusere på at forbedre kompatibiliteten med Pythons legion af pakker, der har været med til at gøre det dominerende inden for datavidenskab og maskinlæring samt at bringe Pyston til mere hardware.

“Den nye Pyston 2.x-serie er en komplet omskrivning af kodebasen fra bunden, startende fra en gaffel af CPython 3.8,” siger Anaconda i et blogindlæg, der beskriver sin plan om at blive en accelerator til alle formål i Python.

Selvom Python er et hit for maskinlæringsapplikationer, der kører på kraftfuld hardware, har den ikke meget tilstedeværelse i JavaScript-dominerede webapplikationer og mobil.

Anaconda-medstifter Peter Wang fortalte ZDNet for nylig, at det var “utroligt akavet at bruge Python til at bygge og distribuere alle applikationer, der har faktiske grafiske brugergrænseflader.”

“På stationære computere er Python aldrig førsteklasses sprog i operativsystemet, og det må ty til tredjepartsrammer som Qt eller wxPython,” sagde han.

Udover datavidenskab er Pythons styrker i at binde backend -systemer sammen.

Van Rossum, der nu er ansat i Microsoft, forsøger at gøre Python dobbelt så hurtigt i Python version 3.11 – en stamme af tre Python -grene planlagt til 2022. Den seneste stabile version af Python er version 3.9. 7.

Anaconda har allerede været involveret i Python -optimering, skalerbarhed og performance -projekter.

“Et af Anacondas ældste open source-projekter er Numba-kompilatoren, en LLVM-baseret JIT-compiler til numeriske Python-funktioner, der kører på CPU eller GPU. Som et resultat har vi tænkt på Python-kompilatorer i lang tid, og vi se potentialet for Pyston til hurtigt at bringe hurtigere Python til et almindeligt publikum.

“Numba behandler mange numeriske brugssager meget godt, men kan ikke optimere hele programmer, og det adresserer ikke den bredere verden af ​​Python -brugssager. Pyston kommer til Python -kompilationsproblemet fra en anden retning. Stadig, fælles aner med CPython -tolken betyder, at Numba “fungerer bare” med det, og de to systemer kan bruges sammen i samme program. Numba kan fremskynde individuelle funktioner med 2-10x (eller mere), og Pyston kan forbedre alt andet. “

Anaconda regner også med, at Pyston -forbedringer kan streames op til CPython og svale sammen med van Rossums planer hos Microsoft, der vil fremskynde Python betydeligt.

Relaterede emner:

Cloud Big Data Analytics Innovation Tech og Work Collaboration Developer  Liam Tung

Af Liam Tung | 31. august 2021 – 13:58 GMT (14:58 BST) | Emne: Enterprise Software