The OpenNET Project / Index page

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

Релиз PyPy 7.2, реализации Python, написанной на языке Python

14.10.2019 22:32

Сформирован релиз проекта PyPy 7.2, в рамках которого развивается реализации языка Python, написанной на языке Python (используется статически типизированное подмножество RPython, Restricted Python). Выпуск подготовлен одновременно для веток PyPy2.7 и PyPy3.6, обеспечивающих поддержку синтаксиса Python 2.7 и Python 3.6. Выпуск доступен для Linux (x86, x86_64, PPC64, s390x, Aarch64, ARMv6 или ARMv7 с VFPv3), macOS (x86_64), OpenBSD, FreeBSD и Windows (x86).

Особенностью PyPy является использование JIT-компилятора, на лету транслирующего некоторые элементы в машинный код, что позволяет обеспечить высокий уровень производительности - при выполнении некоторых операций PyPy в несколько раз обгоняет классическую реализацию Python на языке Си (CPython). Ценой высокой производительности и использования JIT-компиляции является более высокое потребление памяти - общее потребление памяти в сложных и длительно работающих процессах (например, при трансляции PyPy силами самого PyPy) превышает потребление CPython в полтора-два раза.

Новый выпуск примечателен стабилизацией поддержки Python 3.6, которая ранее имела статус бета-версии, и реализацией JIT для архитектуры Aarch64 (ARM64). Также добавлен новый декодировщик JSON, который значительно быстрее, использует меньше памяти и оптимизирован для JIT. Обновлён модуль CFFI 1.13 (C Foreign Function Interface) с реализацией интерфейса для вызова функций, написанных на языках Си и C++. CFFI рекомендован для взаимодействия с кодом на Си, в то время как cppyy для кода на C++. В ветку PyPy2.7 бэкпортирован модуль _ssl на базе CFFI. На использование CFFI переведены модули _hashlib и _crypt.

  1. Главная ссылка к новости (https://morepypy.blogspot.com/...)
  2. OpenNews: Выпуск Python-библиотеки для научных вычислений NumPy 1.17.0
  3. OpenNews: Намечена большая чистка стандартной библиотеки Python
  4. OpenNews: Релиз PyPy 7.1, реализации Python, написанной на языке Python
  5. OpenNews: Увидел свет язык программирования Python 3.7
  6. OpenNews: Утверждена новая модель управления разработкой Python
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/51672-pypy
Ключевые слова: pypy, python
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (58) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 22:36, 14/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    К сожалению, быстрее си всё равно не получается, а си ограничен всё теми же сетью и io.
     
     
  • 2.2, corvuscor (ok), 22:53, 14/10/2019 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Ответь - зачем ему быть быстрее си?
     
     
  • 3.3, Аноним (1), 22:57, 14/10/2019 [^] [^^] [^^^] [ответить]  
  • –7 +/
    Жаба же шмогла (да, я в курсе, какое она тормозилово).
     
     
  • 4.15, IRASoldier_registered (ok), 04:31, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Твоя инфа (или твоя версия Java) устарела лет на 10.
     
     
  • 5.18, Аноним (1), 06:47, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • –6 +/
    Неужели теперь всё так плохо, что больше никогда не сможет? Ну хорошо, тогда у жабоскрипта все шансы быть быстрее. В 1/10 синтетических тестов, конечно. И в 1 поток.
     
  • 5.57, Аноним (57), 22:34, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Неужели в Си завезли JIT-компиляцию?
     
  • 3.51, Аноним (51), 16:27, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну хоть в чем-то Си быстрее. Хотя заказчику все равно на чем написано - главное быстро и работает. А зануды могут только с ехидкой поджидать в сторонке надеясь что python- скрипты однажды выполнятся не точно. Иногда они дожидаются, однако караван все равно идет...
     

  • 1.4, Аноним (1), 22:59, 14/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    И кстати, что благородные господа думают вот по этому поводу? https://instagram-engineering.com/dismissing-python-garbage-collection-at-inst
     
     
  • 2.9, a3k (?), 23:20, 14/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    У джавистов это выглядит экстремальнее.
     
  • 2.33, Аноним (33), 10:34, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Шо питонодети не осилили написать норамальный GC.
     
  • 2.36, Аноним (36), 11:02, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Ничего нового. Wargaming точно так же сделала в танках (там вся логика в клиенте была на питоне) на несколько лет раньше. После завершения игровой сессии память освбождалась вся скопом.
     
     
  • 3.58, Аноним (58), 14:43, 17/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Вроде, gc они только на сервере отключали.
     

  • 1.5, Аноним (5), 23:07, 14/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    А почему JIT не делают в основной ветке CPython? Пусть он был бы по умолчанию выключен, но зато была бы поддержка всех библиотек. Эти ребята молодцы конечно, но все же обеспечить поддержку абсолютно всей инфраструктуры CPython у них вряд ли получится.
     
     
  • 2.7, Аноним (1), 23:14, 14/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Наверное по той же причине, по которой jython немного того. Вместе с ironpython. У stacklesspython наверно больше шансов на включение, но тот довольно специфический.
     
  • 2.10, a3k (?), 23:22, 14/10/2019 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Потому что почти все попытки заканчивались на том, что это не очень-то и нужно. Нормальные люди просто не использую Python, там где его скорость действительно критична.
     
  • 2.48, Scriptor (ok), 14:15, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    А с какой инфраструктурой у них проблемы?

    Все, что написано на чистом питоне, у них работает. Интерфейс с Си сделан свой -- да, тут могут быть нюансы. Была проблема с NumPy -- если я правильно понял, то там оказалось, что надо всю систему менять, так как тормозом стали переключения контекста питон-Си. Но сейчас, вроде бы, уже допилено.

    Есть нюансы с разным поведением в некоторых ситуациях (нюасны реализации), они на офсайте описаны.

     

  • 1.6, аноним3 (?), 23:14, 14/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    конечно это все хорошо, но скажите мне чем это отличается от заливки закиси озота в двигатель?)) он выигрывает в скорости, но также жрет ресурсы пачками. обычный питон не сказать чтоб был на диете, а это вообще жуть будет. не проще ли для высоконагруженных брать тот же с++, ну или кому для хипстоты - раст или го или же Д. я понимаю , что синтаксис и простота питона подкупают, но тогда надо пытаться собрать язык как питон , но компилируемый.
     
     
  • 2.8, Аноним (1), 23:19, 14/10/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Cython уже обеспечивает эффективность питона на уровне равном си. На практике ограничение питона вовсе не в памяти, а, например, в gil с gc (мультипоток) и производительности питонового кода (где не cython и c).

    >не проще

    не проще

     
  • 2.11, a3k (?), 23:35, 14/10/2019 [^] [^^] [^^^] [ответить]  
  • +9 +/
    >не проще ли для высоконагруженных брать тот же с++

    БЕРЁМ C++ ДЛЯ НАШЕГО СУПЕРХАЙОАД-СЕРВИСА, МЫ Ж НЕ ХИПСТЕРЫ
    @
    ПОЛГОДА СО СКРИПОМ ПИШЕМ СУПЕРХАЙЛОАД
    @
    ВСЁ ТОРМОЗИТ ИЗ-ЗА ТОГО, ЧТО СОБЫТИЙНЫЙ ДВИЖОК ИСПОЛЬЗУЕТ ОЧЕРЕДЬ С ПРИОРИТЕТОМ НА ПРОСТОМ СВЯЗНОМ СПИСКЕ

    Это я всё о наболевшем.

     
  • 2.34, Аноним (34), 10:46, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Нет не проще, наоборот, намного сложнее Во-первых, чтобы переписать часть кода ... большой текст свёрнут, показать
     
     
  • 3.45, Аноним (45), 11:57, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Поперхнулся чаем от 2-х вопросов.
     

  • 1.12, Stoned Jesus (?), 00:59, 15/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Откуда столько хейта в адрес питона? Отличный выбор для ненагруженных проектов, где не требуется высокая производительность.
     
     
  • 2.13, аноним3 (?), 03:09, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +4 +/
    я вечно об этом твержу. но тут знаешь народ собрался экстремальный. им подавай абсолют во всем. если машину то суперкар, если язык программирования то равный си по скорости. и тому подобное. а когда сами пихают питон туда где ему отроду не положено быть - ругаются. все никак не могут понять, что для нормальной езды по делам суперкары не нужны, а нужны как раз машины среднего диапазона, чтоб надежно и с меньшими затратами. а если ты строго говоря машину С класса пытаешься использовать как раллийную, то уж извини это невозможно в силу конструкции. но собралась одна "горячая" студенческая "элита". увы.
     
     
  • 3.14, Оминим (?), 03:46, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Зачем нам тормозной си? Нам подавай любовно написанный ручками асм или хотя бы фортран (вроде об этом обычно мечтают, но ллвм есть ллвм). Давайте будем последовательны, ведь все хотят максимально надёжные и эффективные компоненты у авто. Или хотя бы качественные.
     
     
  • 4.16, Аноним (16), 04:52, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Сомневаюсь, что ты хоть какой код на си сможешь лучше оптимизировать на асм.
     
     
  • 5.17, Оминим (?), 05:07, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    На асм всегда проще, на си очень многое зависит от особенностей и багов компилятора. Я конечно просто напихаю интринсиков где надо, и не осиливаю большие объёмы в асме (отладка и профилирование особенно утомительны), но асм получается в среднем быстрее и эффективнее, судя по тому что я видел. Что-то компилятор соптимизирует лучше конечно, но он довольно тупой.
     
     
  • 6.27, Аноним (27), 09:23, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    На асме может и быстрее за счет того что не проверяешь пограничные условия, в том числе потому что лень столько писать. Но и в сегфолт свалится гораздо проще. Когда тебе не нужны шашечки, а надо просто ехать асм не нужен.
     
  • 5.19, Аноним (19), 06:50, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Студентом я задался целью сравнить си и асм и написал реализацию алгоритма брезенхейма рисовании линии на си и асме. Писалось напрямую в видеобуфер под досом. Писанина на си отняла минут 10-15.
    На асме - пару часов, правда в основном из-за того, что фактически реализовывались разные варианты и сравнивалась их производительность. Иначе говоря, вариаций реализации на асме больше.
    Мне удалось поднять производительность реализации на асме на 5% по сравнению с Си. Выйгрыш был за счет возможности использования циклических сдвигов в асме, которые отсутсвуют в си.
     
     
  • 6.35, anonymous (??), 11:02, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    выЙгрыш
     
  • 6.49, San (??), 15:20, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    >циклических сдвигов в асме, которые отсутсвуют в си.

    э-э-э-м-м-м-м.... битовые операции в Си? не, не слышал

     
     
  • 7.50, Аноним84701 (ok), 15:49, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    >>циклических сдвигов в асме, которые отсутсвуют в си.
    > э-э-э-м-м-м-м.... битовые операции в Си? не, не слышал

    Э-э-э-м-м-м-м… Вряд ли эмуляция битовыми операциями << | >>
    будет быстрее нативного
    ROR / ROL https://c9x.me/x86/html/file_module_x86_id_273.html

     
     
  • 8.53, San (??), 17:00, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    хм согласен, обтекаю Си в лучшем случае 5-7 асмовских команд сгенерит вместо... текст свёрнут, показать
     
     
  • 9.54, Аноним84701 (ok), 17:27, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну 8230 не все так плохо -- если использовать распространенный паттерн реализ... текст свёрнут, показать
     
  • 3.20, Антон (??), 07:24, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А что, чемпионат по неуместным сравнениям уже начался?

    Питон он как змея, а си он как буква

     
     
  • 4.31, КО (?), 10:28, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Да Вы, батенька, азов не знаете - питон он не как змея, он как комики https://ru.wikipedia.org/wiki/%D0%9C%D0%BE%D0%BD
     
     
  • 5.32, КО (?), 10:29, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    точка лишняя
     
     
  • 6.41, Аноним (1), 11:35, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Йумора вам в ленту: https://www.youtube.com/watch?v=0D7hFHfLEyk
     
  • 4.37, vrm (?), 11:14, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Си - он как нота. Причём не си, а до.
     
  • 2.21, user90 (?), 07:29, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > Откуда столько хейта в адрес питона?

    Потому что по факту это рядовой язык, который выезжает лишь за счет того, что стал выбором большинства. Осталось лишь прояснить, что такое "выбор большинства", но а) это будет оффтопиком, и б) меня тут же закидают говном (кто? - большинство, гы-гы).

     
     
  • 3.24, Аноним (24), 08:54, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Выбор большинства в эпоху СПО и пермиссивных лицензий - это значит, что за меня кто-то сделал часть моей работы. Поэтому неудивительно.
     
     
  • 4.30, user90 (?), 09:56, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вот только КАК он ее сделал.. ааа, пофиг, хоть как)) Хороший подход.
     
  • 2.47, Аноним (-), 12:44, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    >Откуда столько хейта в адрес питона?

    На самом деле ровно от двух категорий людей:
    1. От рукожопов, которые начитались таких же одаренностей о том, что Python учить не надо. Они его и не учат, считая что у них и так все получится. Вот у них и "получается", но обвиняют они не собственную "гениальность", а инструмент.
    2. От пиарящих другой язык.

     

  • 1.22, Аноним (24), 08:14, 15/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    С появлением Трюфеля полезность pypy резко упала.
     
  • 1.23, pripolz (?), 08:17, 15/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Я тут тоже проектик начал - pybash называется. Реализация Python на Bash.
    Зацените:

    #!/bin/bash
    echo pybash v. 0.0.1

    python $@

     
     
  • 2.28, Аноним (27), 09:27, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Баш там же у всех переменных тип стринг, не кошерно.
     

  • 1.25, Аноним (25), 09:05, 15/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Напишите новость о миграции Project Trident с FreeBSD на Void Linux в 2020 году.
     
  • 1.26, Аноним (24), 09:13, 15/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >в то время как cppyy для кода на C++.
    >cppyy is based on Cling

    Они в курсе какой cling огромный, и что он тащит llvm, причём протухших версий, не используемых ни в одной актуальной версии дистров (и пропатчить на новые - это тонна работы, потому что в Церне форкнули когда-то давно шланг и на обновления до новой версии шланга и llvm забили)?

     
  • 1.29, Аноним (29), 09:46, 15/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Хайп вокруг Питона связан с тем "ревностью", т.к. этот язык "подвинул" 95% других языков вниз. Скорость - последний оплот "выстоявших", и pypy/cython бьют именно по нему.

    Впрочем из-за pypy волноваться не стоит. Ведь тут http://packages.pypy.org/ - 1000 совместимых пакетов.
    А вот тут
    http://pypy.org/ - 200000 пакетов (в 200 раз больше).

    Сила Питона не в "большинстве", а именно в 200к пакетов на все случаи жизни (не одной сотни жизней). Ну и в списках, срезах, бесскобье тоже есть сила.

    Вселенское притворство программистов - это ругать питон за медлительность. Ругать за это вправе только пользователи. А за то что на питоне быстро пишется - хвалить программисты вправе.  

     
     
  • 2.44, Грусть (?), 11:54, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Большое число "пакетов" - это проклятье.
     
  • 2.56, myhand (ok), 21:16, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Ведь тут http://packages.pypy.org/ - 1000 совместимых пакетов.

    Читаем на первой странице: "This page shows what happens when you use pip to install the 1000 most-downloaded package from pypi.python.org. This list is done automatically [...]"

    В общем, иностранные товарищи хочут сказать, что это просто результат _автоматического_ тестирования 1000 самых популярных пакетов с pypi.org, а не то, что ты подумал.

    > А вот тут http://pypy.org/ - 200000 пакетов (в 200 раз больше).

    pypi.org только.  Сколько там на самом деле совместимых с pypy пакетов - хз.  Далеко не все тестируют совместимость и ставят соответствующий классификатор.

     

  • 1.38, Анонимно (?), 11:15, 15/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Какой смысл выпускать сейчас обновление когда в 3.8 добавили конструкцию := из гохи и надо бы её везде поддержать
     
  • 1.39, qwerty (??), 11:20, 15/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Релиз PyPy 7.2, реализации Python, написанной на языке Python, для написания Python...
     
  • 1.40, Аноним (40), 11:22, 15/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Питон, он как Electron, нафигачил и в mass production. Итог - миллионы пользователей тянут сотни мегабайт зависимостей и страдают от тормозов, из-за того, что разработчик решил сэкономить на разработке. От того и отношение к языку у многих такое.
     
     
  • 2.43, Грусть (?), 11:52, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Куда ему до JavaScript...
     
     
  • 3.46, Аноним (1), 12:41, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Действительно, падать ещё долго придётся до такого дна, на котором сейчас жс.
     
  • 3.52, Аноним (52), 16:46, 15/10/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Разработчики JavaScript не путаются в назначении языка
     

  • 1.42, Грусть (?), 11:51, 15/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > в то время как cppyy для кода

    Неловко вышло...

     
  • 1.55, Аноним (55), 19:58, 15/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    phpphp 7.2
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

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