Guido van Rossum kavatseb saavutada kahekordse jÔudluse tÔusu CPython 3.11 versioonis

Guido van Rossum, Pythoni programmeerimiskeele looja, rÀÀkis oma ettekandes Python Language Summitil CPythoni jÔudluse optimeerimise plaanidest. Versioonis 3.11, mis on kavandatud 2022. aastaks, loodavad arendajad jÔudluse kahekordistumist. CPythoni optimeerimise projektiga tegeleb vÀike arendajate meeskond Microsoftist, kuhu Guido hiljuti tööle lÀks.

Projekti elluviimisel kavatsevad arendajad jĂ€rgida mitmeid piiranguid, nagu nĂ€iteks ABI ja koodi tĂ€ieliku ĂŒhilduvuse sĂ€ilitamine, samuti jĂ”udluse parandamine, mis ei tohi pĂ”hjustada aeglustumist kriitilistes olukordades. JĂ”udluse parandamiseks planeeritavad muudatused puudutavad byte-koodi, andmete mĂ€lu jaotust, kompilaatorit ja tĂ”lgendajat.

Projekti arendused avaldatakse eraldi faster-cpython hoidlas. Üks projekti liikmetest, kes on varem töötanud JIT-kompilaatori HotPy arendamise kallal CPythonile, avaldas plaani, mille kohaselt peab viiekordne jĂ”udluse tĂ”stmine olema realistlik ja seda eesmĂ€rki plaanitakse saavutada Python 3.13 vĂ€ljaandel. Projekt on jagatud neljaks etapiks:

  • Python 3.10-s plaanitakse rakendada tĂ”hustusi tĂ”lgimeetodis, mis on seotud tĂ”lgimisprotsessi kohandamisega tĂŒĂŒpidest ja vÀÀrtustest jooksva töötamise kĂ€igus.
  • Python 3.11 vĂ€ljaandel oodatakse parendusi runtime'is ja pĂ”hielementides, samuti mitmeid vĂ€iksemaid spetsialiseeritud optimeerimisi, nagu binaarsete operaatorite ja ĂŒhemĂ€rgiliste tĂ€isarvudega töötamise kiirendamine, funktsioonide kutsumise ja tagastamise kiirendamine, mĂ€lukasutuse ja erandite kĂ€sitlemise kulutuste vĂ€hendamine.
  • Python 3.12-s lisandub lihtne JIT-kompilaator, mida kasutatakse vĂ€ikese osa spetsialiseeritud koodi jaoks.
  • Python 3.13-s lisatakse uusi vĂ”imalusi masinkoodi genereerimiseks jooksva töötamise ajal ja laiendatakse JIT-kompilaatori kasutamist.

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster