LINUX.ORG.RU

PyPy 1.7

 , ,


0

1

Вышла очередная версия PyPy — интерпретатора языка программирования Python, который написан на Python и может компилировать сам себя. Основным изменением этого выпуска является значительный прирост производительности. В среднем на тестовом пакете, прирост производительности PyPy 1.7 составляет около 30%, по сравнению с PyPy 1.6 и до 20 раз быстрее на некоторых тестах.

Основные изменения:

  • исправление ошибок, совместимость исправлений с CPython;
  • исправления в Windows-версии;
  • в PyPy 1.7 по умолчанию включен stackless;
  • NumPy был переименован в numpypy;
  • JSON encoder заменен на новый, написанный на чистом Python, превосходящий по скорости CPython с расширениями на С в 2 раза;
  • уменьшено потребление памяти некоторыми RPython модулями.

Ссылка для загрузки.

>>> Подробности



Проверено: maxcom ()
Последнее исправление: adriano32 (всего исправлений: 1)

>It supports most of the commonly used Python standard library modules

PyPy has alpha/beta-level support for the CPython C API, however, as of 1.7 release this feature is not yet complete.

C extensions need to be recompiled for PyPy in order to work. Depending on your build system, it might work out of the box or will be slightly harder.

seed_stil
()

numpy не просто переименован, но еще и улучшен

bik
()

NumPy был переименован в numpypy

Мда, было нормальное читаемое название, стало говно.

JSON encoder заменен на новый, написанный на чистом Python, превосходящий по скорости CPython с расширениями на С в 2 раза;

Обгонять Си — любимое занятие недоязычков :lol:

Ok
()

> может компилировать сам себя.

LOLWUT. Еще и заворачивается, как скатерть-самобранка? Напиши просто, что написан на пистоне, и прикручен JIT.

tensai_cirno
()

интерпретатора .., который ... может компилировать сам себя.

Что-то гермафродитическое

PyPy now comes with stackless features enabled by default. However, any loop using stackless features will interrupt the JIT for now, so no real performance improvement for stackless-based programs.

Вот как это обозвать?

malbolge
()
Ответ на: комментарий от aptyp

> Даже если бы сопоставимая в пределах погрешности скорость была, нос gcc был бы утёрт, не?

Да зачем утирать нос GCC - чтобы доказать, что это возможно? Так в этом никто из знающих людей не сомневается (даже нынешняя реализация за счет инлайнинга вызовов это может). Но PyPy заточен для динамически типизированных языков - важная его часть занимается тем, что извлекает из динамически типизированного кода статически типизированные участки, а это тупо не нужно при трансляции Си.

tailgunner
()

А как в современном питоне дела с мультипоточными приложениями? Интересует в первую очередь виндовс и линукс. Это первый вопрос. И второй, насколько он удобен при веб-программировании, при сравнении с перлом?

anonymous
()
Ответ на: комментарий от malbolge

>> интерпретатора .., который ... может компилировать сам себя.

Что-то гермафродитическое


Не больше, чем подтереть себе зад. :)

Jayrome
()
Ответ на: комментарий от anonymous

> А как в современном питоне дела с мультипоточными приложениями?

В CPython - так себе, несколько кор не загрузить. В PyPy - так же, как в CPython, хотя Риго пилит реализацию с STM.

tailgunner
()
Ответ на: комментарий от Ok

>Обгонять Си — любимое занятие недоязычков :lol:

Уж сколько раз твердили миру что производительность зависит от компилятора больше чем от языка. А gcc в этом плане очень убог.

DNA_Seq
()
Ответ на: комментарий от DNA_Seq

>> NumPy был переименован в numpypy;

может хватит пакет переименовывать? Задолбали.

Тебе-то что? Или ты уже пользуешься PyPy? %)

tailgunner
()
Ответ на: комментарий от anonymous

# > насколько он удобен при веб-программировании, при сравнении с перлом?

# Намного.

Трындёж. Удобнее чуть менее, чем никак.

Для начала, перлу пофиг отступы, поэтому классический ASP в нём идёт на ура. Во-вторых, у Перла есть куча модулей, от разбора полей формы до всяких Base64/URL-encoding, включая типизированную генерацию HTML из кода (т.е. не print «<BR>», а html->br()). В третьих, Перл придуман не вчера и не студентом, поэтому как язык он стократ стабильнее рубипистонов, причём ещё и развивается. Понятно, что пистон тоже подтягивается, но ставить бизнес на зыбкий, неустоявшийся язык с потенциальной перспективой выкинуть все наработки - нафик не надо. Хочешь быть в мэйнстриме - выбирай путёвые языки.

matumba
()
Ответ на: комментарий от tailgunner

Получается, что потоков в смысле «системных потоков», так и не сделали. Тогда пригодность питона для веб вызывает большой скепсис, ведь решение получается немасштабирумым по определению.

anonymous
()
Ответ на: комментарий от anonymous

> Получается, что потоков в смысле «системных потоков», так и не сделали.

Вообще-то именно их и сделали.

решение получается немасштабирумым по определению.

Если пытаться CPU-bound решение масштабировать нитями - да.

tailgunner
()
Ответ на: комментарий от matumba

Ты о питоне вообще хоть что-нибудь не из ЛОРа читал?

Binary
()
Ответ на: комментарий от matumba

> Для начала, перлу пофиг отступы, поэтому классический ASP в нём идёт на ура ActiveServerPages? Без меня, спасибо.

Во-вторых, у Перла есть куча модулей

У питона-то ни одного, ага.

В третьих, Перл придуман не вчера и не студентом

Питону двадцать лет, ежели что. Он на четыре года младше Python.

ещё и развивается

Кто спорит. Только не пятая ветка, а шестая, которая отличается от пятой куда больше, чем Python 3.x от 2.x.

Понятно, что пистон тоже подтягивается, но ставить бизнес на зыбкий, неустоявшийся язык с потенциальной перспективой выкинуть все наработки - нафик не надо.

Толсто, мой маленький дружок.

anonymous
()
Ответ на: комментарий от matumba

> Для начала, перлу пофиг отступы, поэтому классический ASP в нём идёт на ура

ActiveServerPages? Без меня, спасибо.

> Во-вторых, у Перла есть куча модулей

У питона-то ни одного, ага.

> В третьих, Перл придуман не вчера и не студентом

Питону двадцать лет, ежели что. Он на четыре года старше Python.

> ещё и развивается

Кто спорит. Только не пятая ветка, а шестая, которая отличается от пятой куда больше, чем Python 3.x от 2.x.

> Понятно, что пистон тоже подтягивается, но ставить бизнес на зыбкий, неустоявшийся язык с потенциальной перспективой выкинуть все наработки - нафик не надо.

Толсто, мой маленький дружок.

anonymous
()
Ответ на: комментарий от matumba

У меня давно зреет подозрение, что с перлом все плохо и ему скоро конец. Все меньше и меньше проектов его используют, молодежь не хочет изучать это монстуозное поделие. Ява намного проще и мощнее, а по числу библиотек вообще на первом месте.

anonymous
()
Ответ на: комментарий от anonymous

> Питону двадцать лет, ежели что. Он на четыре года старше Python.

Да ё же моё.

Короче, Python — 1991, Perl — 1987. Вопросы?

anonymous
()
Ответ на: комментарий от tailgunner

То есть в питоне можно запустить потоки подобно вызовам phtreads? Или там работает каждый квант времени только один поток, а остальные ждут, типа как в руби?

anonymous
()
Ответ на: комментарий от matumba

>Для начала, перлу пофиг отступы

Всё понятно, дальше можно не читать. Аргумент не засчитан. И да, толсто.

anonymous
()
Ответ на: комментарий от anonymous

> То есть в питоне можно запустить потоки подобно вызовам phtreads?

То есть нити Питона и есть pthreads...

Или там работает каждый квант времени только один поток, а остальные ждут

...но при этом байткод в кадый момент времени исполняется не более, чем одной нитью.

tailgunner
()
Ответ на: комментарий от matumba

Во-вторых, у Перла есть куча модулей, от разбора полей формы до всяких Base64/URL-encoding, включая типизированную генерацию HTML из кода (т.е. не print «<BR>», а html->br())

Спорим, ты же даже не пытался искать:

anti_social
()
Ответ на: комментарий от GAMer

> А насчёт заменить CPython совсем, вплоть до ненужности?

Таких планов нет. CPython будет как минимум reference implementation, по которой все остальные реализации (IronPython, Jyton, PyPy, Stackless) будут сверять поведение.

tailgunner
()
Ответ на: комментарий от baverman

> Конечно, Си только ленивый не обгонял.

И ленивые Си обгонят нанекоторых задачах.

anonymous
()
Ответ на: комментарий от tailgunner

Понятно. Получается, за 20 лет разработки так и не смогли, язык остался в нише для написания простеньких скриптов. Линукс за этот срок прошел путь от эмулятора терминала до полноценной ОС энтерпрайз уровня.

Получается, что питон не очень то и нужен, гораздо продуктивней потратить время на изучения с++11.

anonymous
()
Ответ на: комментарий от anonymous

Вакансий достаточно это не ситуация 3-х летней давности

yanka
()
Ответ на: комментарий от exst

Действительно ли он такокы быстрый?

Почему бы и нет. Но если он кушает больше памяти...

goingUp 😊😊😊😊😊
()
Ответ на: комментарий от anonymous

> Получается, за 20 лет разработки так и не смогли, язык остался в нише для написания простеньких скриптов.

Получается, что ты ничего не знаешь о Питоне и всерьез им не пользовался.

гораздо продуктивней потратить время на изучения с++11.

Тебе лучше учить Яву.

tailgunner
()
Ответ на: комментарий от Ok

> NumPy был переименован в numpypy

Мда, было нормальное читаемое название, стало говно.

нямпипи - это же Ъ :)

shty
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.