Nuitka 4.0 āĻĒā§āϰāĻā§āĻā§āĻā§āϰ āĻāĻāĻāĻŋ āϰāĻŋāϞāĻŋāĻ āĻĒāĻžāĻāϝāĻŧāĻž āϝāĻžāϝāĻŧ, āϝāĻž āĻĒāĻžāĻāĻĨāύ āϏā§āĻā§āϰāĻŋāĻĒā§āĻāĻā§āϞāĻŋāĻā§ āĻāĻāĻāĻŋ āϏāĻŋ āĻāĻĒāϏā§āĻĨāĻžāĻĒāύāĻžāϝāĻŧ āĻ āύā§āĻŦāĻžāĻĻ āĻāϰāĻžāϰ āĻāύā§āϝ āĻāĻāĻāĻŋ āĻāĻŽā§āĻĒāĻžāĻāϞāĻžāϰ āϤā§āϰāĻŋ āĻāϰā§, āϝāĻž CPython āĻāϰ āϏāĻžāĻĨā§ āϏāϰā§āĻŦāĻžāϧāĻŋāĻ āϏāĻžāĻŽāĻā§āĻāϏā§āϝā§āϰ āĻāύā§āϝ libpython āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻāĻāĻāĻŋ āĻāĻā§āϏāĻŋāĻāĻŋāĻāĻā§āĻŦāϞ āĻĢāĻžāĻāϞ⧠āĻāĻŽā§āĻĒāĻžāĻāϞ āĻāϰāĻž āϝā§āϤ⧠āĻĒāĻžāϰ⧠(āĻŦāϏā§āϤ⧠āĻĒāϰāĻŋāĻāĻžāϞāύāĻžāϰ āĻāύā§āϝ āύā§āĻāĻŋāĻ CPython āĻā§āϞ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§)āĨ¤ Python 2.6, 2.7, 3.4 - 3.13 āĻāϰ āĻŦāϰā§āϤāĻŽāĻžāύ āϰāĻŋāϞāĻŋāĻā§āϰ āϏāĻžāĻĨā§ āϏāĻŽā§āĻĒā§āϰā§āĻŖ āϏāĻžāĻŽāĻā§āĻāϏā§āϝ āĻĒā§āϰāĻĻāĻžāύ āĻāϰāĻž āĻšāϝāĻŧā§āĻā§āĨ¤ CPython āĻāϰ āϤā§āϞāύāĻžāϝāĻŧ, āϏāĻāĻāϞāĻŋāϤ āϏā§āĻā§āϰāĻŋāĻĒā§āĻāĻā§āϞāĻŋ āĻĒāĻžāĻāϏā§āĻā§āύ āĻĒāϰā§āĻā§āώāĻžāϝāĻŧ 335% āĻāϰā§āĻŽāĻā§āώāĻŽāϤāĻž āĻāύā§āύāϤāĻŋ āĻĻā§āĻāĻžāϝāĻŧāĨ¤ āĻĒā§āϰāĻāϞā§āĻĒ āĻā§āĻĄ Apache āϞāĻžāĻāϏā§āύā§āϏā§āϰ āĻ āϧā§āύ⧠āĻŦāĻŋāϤāϰāĻŖ āĻāϰāĻž āĻšāϝāĻŧāĨ¤
āύāϤā§āύ āĻŦāĻŋāĻļā§āĻŦā§:
- ĐĐŊĐĩŅĐĩĐŊŅ Đ¸ĐˇĐŧĐĩĐŊĐĩĐŊĐ¸Ņ Đ´ĐģŅ ŅĐģŅŅŅĐĩĐŊĐ¸Ņ ŅОвĐŧĐĩŅŅиĐŧĐžŅŅи Ņ Python 3.12, 3.13 и 3.14, ĐŊаĐŋŅиĐŧĐĩŅ, дОйавĐģĐĩĐŊа ĐŋОддĐĩŅĐļĐēа ĐžŅĐģĐžĐļĐĩĐŊĐŊОК ОйŅайОŅĐēи аĐŊĐŊĐžŅаŅиК и ĐŊĐžĐ˛ĐžĐŗĐž ŅиĐŊŅаĐēŅиŅа аĐŊĐŊĐžŅиŅОваĐŊĐ¸Ņ ŅиĐŋОв Đ´ĐģŅ ĐžĐąĐžĐąŅŅĐŊĐŊŅŅ ĐēĐģаŅŅОв и ŅŅĐŊĐēŅиК.
- ĐОйавĐģĐĩĐŊа ŅĐēŅĐŋĐĩŅиĐŧĐĩĐŊŅаĐģŅĐŊĐ°Ņ Đ˛ĐžĐˇĐŧĐžĐļĐŊĐžŅŅŅ Đ¸ŅĐŋĐžĐģŅСОваĐŊĐ¸Ņ ĐēĐžĐŧĐŋиĐģŅŅĐžŅа Zig (zig cc) в ĐēаŅĐĩŅŅвĐĩ ĐąŅĐēĐĩĐŊда Хи-ĐēĐžĐŧĐŋиĐģŅŅĐžŅа в Nuitka.
- ĐОйавĐģĐĩĐŊа ĐŋŅĐĩдваŅиŅĐĩĐģŅĐŊĐ°Ņ ĐŋОддĐĩŅĐļĐēа LTO-ĐžĐŋŅиĐŧиСаŅиК ĐŋŅи иŅĐŋĐžĐģŅСОваĐŊии ĐēĐžĐŧĐŋиĐģŅŅĐžŅа Clang.
- ĐŅĐĩĐ´ĐģĐžĐļĐĩĐŊ Đ´ĐĩĐēĐžŅаŅĐžŅ ÂĢ@nuitka_ignoreÂģ Đ´ĐģŅ Đ¸ŅĐēĐģŅŅĐĩĐŊĐ¸Ņ ĐēĐžĐŧĐŋиĐģŅŅии ŅŅĐŊĐēŅиК.
- Đ ĐĩаĐģиСОваĐŊŅ ĐžĐŋŅии: ÂĢâprojectÂģ Đ´ĐģŅ ŅйОŅĐēи Ņ Đ¸ŅĐŋĐžĐģŅСОваĐŊиĐĩĐŧ ĐŊаŅŅŅĐžĐĩĐē иС ŅаКĐģа pyproject.toml, ÂĢâdevel-profile-compilationÂģ Đ´ĐģŅ ĐŋŅĐžŅиĐģиŅОваĐŊĐ¸Ņ ĐŊа ŅŅаĐŋĐĩ ŅйОŅĐēи, ÂĢâdebug-self-forkingÂģ Đ´ĐģŅ ĐžŅĐģадĐēи ŅĐžŅĐē-йОĐŧĐą, ÂĢâinclude-windows-runtime-dllsÂģ Đ´ĐģŅ ŅĐŋŅавĐģĐĩĐŊиĐĩ вĐēĐģŅŅĐĩĐŊиĐĩĐŧ C runtime DLL в Windows, ÂĢâqt-debug-pluginsÂģ Đ´ĐģŅ Đ´Đ¸Đ°ĐŗĐŊĐžŅŅиĐēи ĐˇĐ°ĐŗŅŅСĐēи Qt-ĐŋĐģĐ°ĐŗĐ¸ĐŊОв.
- ĐОйавĐģĐĩĐŊа ĐŋОддĐĩŅĐļĐēа аĐēŅŅаĐģŅĐŊŅŅ Đ˛ĐĩŅŅиК ĐŋаĐēĐĩŅОв oracledb, win32ctypes, dask, dataparser, puremagic, pygments.lexers, tomli, av, sentry_sdk, jedi, parso, line_profiler и pandas.
ĐĐžĐŋĐžĐģĐŊиŅĐĩĐģŅĐŊĐž ĐŧĐžĐļĐŊĐž ĐžŅĐŧĐĩŅиŅŅ ĐžŅŅŅŅ Đž ĐŋŅĐžĐŗŅĐĩŅŅĐĩ ŅаСвиŅĐ¸Ņ JIT-ĐēĐžĐŧĐŋиĐģŅŅĐžŅа в CPython. РаСŅайОŅŅиĐēи ĐŋĐžŅŅавиĐģи ĐŋĐĩŅĐĩĐ´ ŅОйОК ŅĐĩĐģŅ ĐŋОдĐŊŅŅŅ ĐŋŅОиСвОдиŅĐĩĐģŅĐŊĐžŅŅŅ JIT Đē вŅĐŋŅŅĐēŅ CPython 3.15 ĐŊа 5%, а Đē вŅĐŋŅŅĐēŅ 3.16 ĐŋОвŅŅиŅŅ ĐŋŅОиСвОдиŅĐĩĐģŅĐŊĐžŅŅŅ ĐŊа 10% и ŅĐĩаĐģиСОваŅŅ Đ˛ĐžĐˇĐŧĐžĐļĐŊĐžŅŅŅ Đ¸ŅĐŋĐžĐģŅСОваĐŊĐ¸Ņ JIT в ŅĐĩĐļиĐŧĐĩ Free-threading (ĐąĐĩС ĐŗĐģОйаĐģŅĐŊОК ĐąĐģĐžĐēиŅОвĐēи). Đ ŅĐĩĐēŅŅĐĩĐŧ ŅĐžŅŅĐžŅĐŊии иŅĐŋĐžĐģŅСОваĐŊиĐĩ JIT в аĐģŅŅа-ŅйОŅĐēĐ°Ņ CPython 3.15 ŅĐļĐĩ Đ´ĐĩĐŧĐžĐŊŅŅŅиŅŅĐĩŅ Đ˛ ŅŅĐĩĐ´ĐŊĐĩĐŧ ŅŅĐēĐžŅĐĩĐŊиĐĩ ĐŊа 11-12% ĐŊа ĐŋĐģаŅŅĐžŅĐŧĐĩ macOS AArch64 и ĐŊа 5-6% ĐŊа ĐŋĐģаŅŅĐžŅĐŧĐĩ x86_64 Linux ĐŋĐž ŅŅавĐŊĐĩĐŊĐ¸Ņ ŅĐž ŅŅаĐŊдаŅŅĐŊŅĐŧ иĐŊŅĐĩŅĐŋŅĐĩŅаŅĐžŅĐžĐŧ. ĐŅи ŅŅĐžĐŧ в ĐžŅĐ´ĐĩĐģŅĐŊŅŅ ŅĐĩŅŅĐ°Ņ ĐŋŅи вĐēĐģŅŅĐĩĐŊии JIT иСĐŧĐĩĐŊĐĩĐŊиĐĩ ĐŋŅОиСвОдиŅĐĩĐģŅĐŊĐžŅŅи ваŅŅиŅŅĐĩŅŅŅ ĐžŅ ŅŅĐēĐžŅĐĩĐŊĐ¸Ņ ĐŊа йОĐģĐĩĐĩ ŅĐĩĐŧ 100%, Đ´Đž СаĐŧĐĩĐ´ĐģĐĩĐŊĐ¸Ņ ĐŊа 20%.

āĻāϤā§āϏ: opennet.ru
