The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск Nuitka 4.0, компилятора для языка Python. Прогресс развития JIT в CPython

23.04.2026 10:38 (MSK)

Доступен выпуск проекта Nuitka 4.0, развивающего компилятор для трансляции скриптов на языке Python в представление на языке C, которое затем можно скомпилировать в исполняемый файл, использующий libpython для обеспечения максимальной совместимости с CPython (используются штатные средства CPython для управления объектами). Обеспечена полная совместимость с актуальными выпусками Python 2.6, 2.7, 3.4 - 3.13. По сравнению с CPython скомпилированные скрипты демонстрируют в тестах pystone повышение производительности на 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%.



  1. Главная ссылка к новости (https://nuitka.net/posts/nuitk...)
  2. OpenNews: В Python добавлен JIT-компилятор
  3. OpenNews: Выпуск Nuitka 2.2, компилятора для языка Python
  4. OpenNews: CPython может сделать Rust обязательной сборочной зависимостью к версии 3.17
  5. OpenNews: Динамика изменения кодовой базы проекта Python
  6. OpenNews: Оценка изменения производительности CPython за последние 5 лет
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65271-nuitka
Ключевые слова: nuitka, python, jit
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (17) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 10:51, 23/04/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Единственное реальное применение это скрывать питоновский код в бинаре. Кому нужна реальная скорость используют Go.
     
     
  • 2.2, r2d0 (?), 10:55, 23/04/2026 [^] [^^] [^^^] [ответить]  
  • –5 +/
    > Кому нужна реальная скорость используют Rust.

    fixed.


     
     
  • 3.3, Аноним (1), 10:57, 23/04/2026 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Использование Rust давно уже считается тяжёлым психическим расстройством.            
     
     
  • 4.6, _hide_ (ok), 11:02, 23/04/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Ну почему же? Если ты не способен писать код без ошибок, не понимаешь, как работает память, невнимателен, получил тонную старого кода, то Раст очень даже спасает, если всё переписать на него. Хотя обратиться за лечением тоже стоит...
     
     
  • 5.8, Смузихлеб забывший пароль (?), 11:04, 23/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    от логических ошибок раст спасает ?
     
     
  • 6.14, _hide_ (ok), 11:25, 23/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > от логических ошибок раст спасает ?

    Старый "работающий" код на Си править самому иногда сложнее, чем портировать на Раст. Вы поговорите с матерыми сишниками про утечки, узнаете много нового... И лифты и машины станете аккуратнее использовать...

     
  • 3.5, Смузихлеб забывший пароль (?), 11:02, 23/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    not a fix
     
  • 3.9, _kp (ok), 11:08, 23/04/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >>нужна реальная скорость используют Rust.

    Во первых, Rust точно не про скорость разработи.
    Во вторых, и не для прикладного ПО тоже. Для этого есть более практичные языки.
    А системное ПО  на Питоне, кроме скриптов автоматихации сборки и управления - это сказки.

     
     
  • 4.10, Shellpeck (?), 11:13, 23/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Пухтон - это вообще не про промышленный софт, а про прототипирование. Если чел считает иначе - психиатрический случай.
     
     
  • 5.18, _kp (ok), 11:56, 23/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Пухтон - это вообще не про промышленный софт

    В ПО может быть и скриптовый язык, именно для скриптов, а не само ПО на нем написано


     
  • 4.13, Джон Титор (ok), 11:21, 23/04/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.11, Джон Титор (ok), 11:19, 23/04/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.4, Аноним (1), 11:01, 23/04/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну и то что автор не смог нормально транслитирировать Нютка и у него получилась Нуитка, это отдельная хохма.
     
     
  • 2.15, Аноним (15), 11:33, 23/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Нуитка на букву h
     

  • 1.7, Смузихлеб забывший пароль (?), 11:04, 23/04/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > По сравнению с CPython скомпилированные скрипты
    > демонстрируют в тестах pystone повышение производительности на 335%

    не особо вникал в питоно-си но как удалось настолько повысить производительность ?

     
     
  • 2.12, Аноним (12), 11:21, 23/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    проверять все равно никто не будет
     
  • 2.16, Аноним (1), 11:33, 23/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Просто из интерпретируемого питон становится компилируемым. Но оверхед на питоновские абстракции все равно остаётся.
     

  • 1.17, SlackwareRT (?), 11:55, 23/04/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Во Владивостоке база данных не работает, моряки маломерного флота в море выйти не могут! Позорище!

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру