URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 101228
[ Назад ]

Исходное сообщение
"Выпуск Nuitka 0.5.8, компилятора для языка Python"

Отправлено opennews , 19-Янв-15 12:47 
Представлен (http://nuitka.net/posts/nuitka-release-058.html) новый выпуск проекта Nuitka (http://nuitka.net), в рамках которого развивается компилятор, позволяющий транслировать скрипт на языке Python в представление на C++, которое затем можно скомпилировать в исполняемый файл, использующий libpython для обеспечения максимальной совместимости с CPython (используются штатные средства CPython для управления объектами). Обеспечена полная совместимость с Python 2.6, 2.7, 3.2, 3.3 и 3.4. По сравнению с CPython скомпилированные скрипты демонстрируют в тестах pystone повышение производительности на 258%. Код проекта распространяется под лицензией Apache.


При подготовке новой версии основное внимание было уделено решению проблем с совместимостью, улучшению оптимизаций и проведению чистки кода. Решены проблемы с импортированием на системах с регистронезависимыми ФС (Windows  и OS X). Добавлена экспериментальная поддержка PyQt5, пока без поддержки плагинов. Для имён файлов, отражаемых в атрибуте __file__, теперь применяются относительные пути.  Обеспечена сборка rpm-пакетов для  Fedora 21 и CentOS 7 через openSUSE Build Service.


URL: http://nuitka.net/posts/nuitka-release-058.html
Новость: http://www.opennet.me/opennews/art.shtml?num=41489


Содержание

Сообщения в этом обсуждении
"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Константавр , 19-Янв-15 13:01 
на 258% - охохохохо!!!! Срочно перекомпилировать Бленлер со всеми плагинами!

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено бедный буратино , 19-Янв-15 14:00 
а причём здесь логика и вызываемые приложения? если подготовка к рендерингу будет занимать на 10 миллисекунд меньше - на самом рендеринге это не отразится :)

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Константавр , 19-Янв-15 14:12 
Ты с Блендером работал? Там всё на питоновских скриптах держится. И скорость выполнения их на сложных моделях (да что там сложных, один только sapling как тормозит), не всегда на уровне. А вот если бы они в системе компилировались в бинарники, да с 258% прироста скорости...

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено grayich , 19-Янв-15 18:36 
258% по сравнению с СИпитоном
по сравнению с питоном получится ~300-1300 раз
вот только интегрировать это в блендер может быть невозможно

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Stax , 19-Янв-15 21:38 
> 258% по сравнению с СИпитоном
> по сравнению с питоном получится ~300-1300 раз

Простите? Вы знаете про какую-то реализацию "питона", которая в 100-400 раз медленнее стандартной CPython?


"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено grayich , 19-Янв-15 22:09 
перепутал с cython ))

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено _KUL , 19-Янв-15 14:01 
Любовь к плюсам у людей, даже через питон проявляется :)

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 19-Янв-15 15:49 
>развивается компилятор, позволяющий транслировать скрипт на языке Python в представление на C++

Как только не изворачиваются любители python и уже который год, пытаясь убыстрить этот тормозной by-design продукт. Ну почему никому из них до сих пор не пришла в голову мысль выкинуть python и просто освоить C++.


"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 19-Янв-15 15:50 
> Как только не изворачиваются любители python и уже который год, пытаясь убыстрить этот тормозной by-design продукт. Ну почему никому из них до сих пор не пришла в голову мысль выкинуть python и просто освоить C++.
> просто освоить C++.
> C++
> просто освоить

Ну ты понял.


"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 19-Янв-15 21:05 
>Ну ты понял.

Что именно? Что у вас отставание в развитии?


"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено anonymous , 19-Янв-15 16:35 
пока ты напишешь на крестах работоспособный прототип, на питоне уже можно сделать таких два

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено myhand , 19-Янв-15 17:16 
> Как только не изворачиваются любители python и уже который год, пытаясь убыстрить этот тормозной by-design продукт.

Не просветишь, конечно, почему by-design?

> выкинуть python и просто освоить C++.

Чтобы использовать допотопный "высокоуровневый" язык, в котором даже gc нет?  Да еще и с через*опным синтаксисом в придачу.  Этого франкенштейна любят до сих пор только
бездарные преподаватели разных рашен ПТУ^W^Wпардон, технических университетов.


"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 19-Янв-15 21:00 
>разных рашен ПТУ^W^Wпардон, технических университетов

Сказал школьник, выдающий себя за выпускника университета.


"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено myhand , 19-Янв-15 23:26 
О, набижали.  А че мало так?

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Vkni , 20-Янв-15 08:32 
> просто освоить C++.

Нет, Ocaml - скорость программ примерно в 2 раза ниже C++ (gcc -O2 и пр), скорость компиляции на порядок выше, строгая статическая типизация + вывод типов дают скорость разработки в 2 раза выше, чем на С++ (и отсутствие косяков динамической типизации, характерных для Питона).



"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 21-Янв-15 19:06 
> и отсутствие косяков динамической типизации, характерных для Питона).

освойте инициализацию переменных ;)


"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 19-Янв-15 16:57 
В одних тестах бинарник быстрее, в других - наоборот.

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 20-Янв-15 05:53 
>В одних тестах бинарник быстрее, в других - наоборот.

А в других стало быть тест быстрее бинарника.

O_o


"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 21-Янв-15 02:58 
да, в интерпретаторе некоторые тесты работают быстрее, чем в бинарнике от нуитки

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 21-Янв-15 04:25 
>да, в интерпретаторе некоторые тесты работают быстрее, чем в бинарнике от нуитки

тест завершается быстрее бинарника.. 0_o
что ж, это наверное вполне нормальные тесты у питон-"программистов"..


"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 19-Янв-15 19:36 
Я все чаще замечаю что большинство программистов идиоты.

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 19-Янв-15 19:37 
Наверное вы хотели сказать шизофреники?

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 19-Янв-15 19:38 
> Наверное вы хотели сказать шизофреники?

Ну можно и так сказать. Вот и поговорили.


"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено grayich , 19-Янв-15 19:58 
"и поэтому я решила выписаться из дурдома, так будет лучше для меня обоих" .. ага

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 19-Янв-15 20:58 
Наверное вы хотели сказать что большинство python-истов идиоты?

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 20-Янв-15 01:52 
Ну можно и так сказать. Вот и поговорили.

"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Яничегонепонял , 20-Янв-15 09:42 
> которое затем можно скомпилировать в исполняемый файл

А .pyc - это не скомпилированный байт-код? В чем проблема?


"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено myhand , 20-Янв-15 18:48 
>> которое затем можно скомпилировать в исполняемый файл
> А .pyc - это не скомпилированный байт-код? В чем проблема?

Проблема в том, что это байт-код для VM CPython, а не ELF с машинными инструкциями.


"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено userd , 20-Янв-15 19:08 
.pyc - это просто сохранённый в файле байткод.
а Nuitka делает хитрее - она грубо говоря разворачивает инструкции байткода в программу на С++. Да ещё для каждой функции генерируется код для разбора параметров.

Это может дать определённое ускорение - пропадает цикл выборки и диспетчеризации инструкций вирт.машины, как уже сказано - есть альтернативная (к CPython) реализация разбора параметров. Сделана определённая оптимизация в компиляции выражений. Возможно, что снижается нагрузка на сборщик мусора.

Автором принято решение - все объекты остаются питоновскими объектами. Это позволяет при необходимости обработать с помощью Nuitka всю программу или только отдельные модули и потом "перемешивать" обычный код и код откомпилированный Nuitka. Но это и серьёзный источник ограничения производительности.


"Выпуск Nuitka 0.5.8, компилятора для языка Python"
Отправлено Аноним , 31-Янв-15 12:26 
кто пользовался - как оно там готово для распространения своих поделий?
как то компилил хеллой ворд чтото около 25 мегабайт вышло. ЛОЛ.
проще через Pyinstaller собирать - намного меньше весит.