Выпуск PyPy3 2.4, реализации Python 3, написанной на языке Python
22 октября 2014 года
Представлен выпуск PyPy3 2.4.0, реализации языка Python, написанной на языке Python (используется статически типизированное подмножество RPython, Restricted Python). Ветка PyPy3 развивается синхронно с PyPy и отличается поддержкой Python 3. В частности, если выпуск PyPy 2.4 обеспечивает поддержку языка Python 2.7.8, то PyPy3 2.4 представляет собой реализацию Python 3.2.5. Выпуск доступен для x86-систем Linux 32/64, Mac OS X 64 и Windows 32, а также для систем на базе архитектуры ARM (ARMv6 или ARMv7 с VFPv3).
Особенностью PyPy является использование JIT-компилятора, на лету транслирующего некоторые элементы в машинный код, что позволяет обеспечить высокий уровень производительности - при выполнении некоторых операций PyPy в несколько раз обгоняет классическую реализацию Python на языке Си (CPython). Ценой высокой производительности и использования JIT-компиляции является более высокое потребление памяти - общее потребление памяти в сложных и длительно работающих процессах (например, при трансляции PyPy силами самого PyPy) превышает потребление CPython в полтора-два раза.
В новой версии усилено совместное использование кода с проектом PyPy. Проведён внутренний рефакторинг кода обработки строк и байтовых массивов (bytearray), переписана реализация глобальной блокировки интерпретатора (GIL, global interpreter lock), что позволило значительно увеличить производительность обработки строк и выполнения внешних вызовов, в том числе модулей СFFI, написанных на языке Си. Улучшена обработка серий объектов, таких как сокеты, в длительно выполняемых процессах, что отразилось сокращением потребления памяти. Улучшена совместимость с платформой Windows. Внесено множество изменений в модуль поддержки функций POSIX, улучшена поддержка локали.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.