Iyo Pyston purojekiti, iyo inopa Python ine JIT compiler, yadzokera kune yakavhurika yekuvandudza modhi

Vagadziri vepurojekiti yePyston, iyo inopa kushanda kwepamusoro-soro kwemutauro wePython vachishandisa tekinoroji yemazuva ano yeJIT, vakaburitsa kuburitswa kutsva kwePyston 2.2 uye vakazivisa kudzoka kweprojekiti kune yakavhurika sosi. Kuitwa kwacho kunovavarira kuwana kuita kwepamusoro pedyo neiyo yemitauro yechinyakare system seC ++. Iyo kodhi yebazi rePyston 2 inoburitswa paGitHub pasi pePSFL (Python Software Foundation License), yakafanana nerezinesi reCPython.

Ngatiyeukei kuti chirongwa chePyston chaimbotariswa neDropbox, icho chakamisa kusimudzira mari muna 2017. Vagadziri vePyston vakatanga kambani yavo uye vakaburitsa bazi rakagadziridzwa zvakanyanya rePyston 2, iro rakanzi rakagadzikana uye rakagadzirira kushandiswa kwakapararira. Panguva imwecheteyo, vagadziri vakamira kubudisa kodhi yekodhi uye vakashandura kupa chete mabhinari magungano. Ikozvino zvasarudzwa kuita Pyston purojekiti yakavhurika sosi zvakare, uye kuendesa kambani kune bhizinesi modhi ine chekuita nekuvandudzwa kweyakavhurika sosi software. Zvakare, mukana wekuendesa optimizations kubva kuPyston kuenda kune yakajairwa CPython iri kutariswa.

Zvinocherechedzwa kuti Pyston 2.2 iri 30% nekukurumidza kupfuura yakajairwa Python mubvunzo dzekuita inoongorora mitoro inowanikwa muwebhu server application. Kune zvakare kuwedzera kukuru kwekuita muPyston 2.2 kana ichienzaniswa neyakaburitswa yakapfuura, iyo yakawanikwa zvakanyanya kuburikidza nekuwedzera kwekugadzirisa kwenzvimbo itsva, pamwe nekuvandudzwa kweJIT uye caching nzira.

Pamusoro pekuita optimizations, kuburitswa kutsva kunonakidza zvakare nekuti kunotakura shanduko kubva kuCPython 3.8.8 bazi. Panyaya yekuenderana nePython yekuzvarwa, chirongwa chePyston chinopihwa seyakanyanya CPython-inoenderana imwe nzira yekumisikidzwa, sezvo Pyston iri forogo kubva kune huru CPython codebase. Pyston inotsigira ese maficha eCPython, kusanganisira iyo C API yekuvandudza mawedzero mumutauro weC. Pakati pemisiyano mikuru pakati pePyston neCPython kushandiswa kweDynASM JIT, inline caching uye general optimizations.

Pakati peshanduko muPyston 2.2, pane zvakare kutaurwa nezvekuchenesa kodhi base kubva kune akawanda debugging maficha eCPython, ayo anokanganisa kuita basa, asi anenge asiri mukudiwa pakati pevagadziri. Nhamba dzinopihwa maererano nekubvisa maturusi ekugadzirisa zvinotungamira kune 2% kukurumidza, zvisinei nekuti chete 2% yevagadziri vanoshandisa mabasa aya.

Source: opennet.ru

Voeg