Projekti Nuitka 4.0 väljalase on saadaval, mis arendab kompilaatorit Pythoni skriptide tõlkimiseks C-keele esituseks, mida saab seejärel kompileerida täidetavaks failiks, kasutades libpythonit, et tagada maksimaalne ühilduvus CPythoniga (objekte haldavad tavalised CPython vahendid). Täielik ühilduvus on tagatud praeguste versioonidega Python 2.6, 2.7, 3.4 - 3.13. Võrreldes CPythoniga demonstreerivad koostatud skriptid pystone testides 335% tõusu jõudluses. Projekti kood jagatakse Apache litsentsi alusel.
Uues versioonis:
- Tehtud muudatused Python 3.12, 3.13 ja 3.14 ühilduvuse parandamiseks, näiteks on lisatud toetust viivitusega annotatsioonide töötlemiseks ja uue tüübi kommentaaride süntaks üldiste klasside ja funktsioonide jaoks.
- Lisatud eksperimendivõimalus kasutada Zig kompilaatorit (zig cc) C-kompilaatori tagaplaanina Nuitka's.
- Lisatud katse toetuseks LTO-optimeerimisi Clang kompilaatori kasutamisel.
- Pakutud @nuitka_ignore dekoratoreid funktsioonide kompileerimise vältimiseks.
- Tehtud on valikud: «—project» koos pyproject.toml failist võtmisest, «—devel-profile-compilation» koostamise ajaks profileerimiseks, «—debug-self-forking» fork-pommide silumiseks, «—include-windows-runtime-dlls» C runtime DLL-i kaasamiseks Windowsis, «—qt-debug-plugins» Qt-pluginite laadimise diagnostikaks.
- Toetust on lisatud uusimatele versioonidele pakettidest oracledb, win32ctypes, dask, dataparser, puremagic, pygments.lexers, tomli, av, sentry_sdk, jedi, parso, line_profiler ja pandas.
Täiendavalt on võimalik märkida JIT-kompilaatori arengu eduaruannet CPythonis. Arendajad on seadnud eesmärgiks JIT jõudluse tõstmine 5% võrra CPython 3.15 väljaandmiseks ja 10% võrra 3.16 väljaandmiseks, lisades võimaluse kasutada JIT-i Free-threading režiimis (ilma globaalsete lukustusteta). Praeguses seisus näitab JIT-i kasutamine CPython 3.15 alfa-versioonides juba keskmiselt 11-12% kiirusetõusu macOS AArch64 platvormil ja 5-6% x86_64 Linuxis võrreldes tavalise tõlgiga. Samuti varieerub kohtade testides JIT-i kasutamisel jõudluse muutus kiirusetõusust üle 100% kuni aeglustumiseni 20%.

Allikas: opennet.ru
