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
