LINUX.ORG.RU

Pyston 0.5

 ,


0

2

25 мая вышла версия Pyston 0.5. Pyston — это реализация Python (2.7, в будущем — и 3.x) с использованием JIT-технологий LLVM.

Главное изменения этой версии - переход на сборку мусора через подсчет ссылок (ранее использовался tracing GC); это сделано для большей совместимости с существующими модулями расширения CPython (который, как известно, использует подсчет ссылок). В результате Pyston исполняет весь набор тестов NumPy практически без ошибок (1-3 сбойных теста, в зависимости от версии NumPy); правда, производительность при этом в 2 раза ниже, чем у CPython (из-за известных ограничений Pyston).

Среди негативных последствий перехода на подсчет ссылок — снижение общей производительности на 10% по сравнению с Pyston 0.4; следующий релиз (ожидаемый очень скоро) будет сфокусирован на улучшении производительности.

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

★★★★★

Последнее исправление: cetjs2 (всего исправлений: 4)

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

NIH? Это почти «Unladen Swallow наносит ответный удар».

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

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

Возможно, они выдадут соместимый продукт раньше, чем PyPy. Даже если он будет в 5 раз быстрее CPython, но, если он будет drop-in replacement, он выиграет.

Ключевое слово тут «возможно», только вероятность этого невелика, по-моему

«Failure is always an option» (ц).

его рассуждения и код мы тоже все видим

Интересно. И что с ними не так?

А чем Unladen Swallow закончился, не напомнишь?

А почему он так закончился, напомнить?

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

Про скорость могу понять - очевидный профит. А в чем прикол делать «ищщоодинпитон» с упором на совместимость? NIH?

Потому что CPython тормозной, совместимую с ним быструю реализацию так никто и не осилил, а несовместимые реализации никому не нужны.

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

По ссылке не ходил, русская википедия - довольно плохой источник данных об IT, CS и SE. Если тебе правда интересно, ищи Unladen Swallow postmortem.

tailgunner ★★★★★
() автор топика
Последнее исправление: tailgunner (всего исправлений: 1)

Я боялся, оно сдохло. Но мало того, что GIL так и не выкинули, так еще и на подсчет ссылок перешли. Лучше бы уж сдохло.

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

http://code.activestate.com/lists/python-list/598535/

Ну и? Болдом написано - спонсеры свалили а у людей пропал интерес. Ты можешь выразить свою мудрость как-то поконкретнее, вместо «ищите в интернетах и аптеках города»?

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

Болдом написано - спонсеры свалили а у людей пропал интерес

А ты всё прочитал? Потому что там написано:

«Unfortunately, LLVM in its current state is really designed as a static compiler optimizer and back end.»

«LLVM doesn't really support back-patching, which PyPy uses for fixing up their guard side exits»

«We also did a fair amount of good work contributing to LLVM, which other LLVM JIT projects, such as Parrot and Rubinius, can benefit from.»

«we did make some material contributions to LLVM»

Т.е. 5 лет назад инфраструктура LLVM была тупо не в форме для подобной задачи. Разрабы US сделали что могли, но не достигли цели (ускорить Python 5 раз, ЕМНИП). Однако это было _5 лет назад_, с тех пор LLVM развивался и Apple вливала деньги конкретно в JIT .

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

А болдом в самом начале тезисы выделили хакиры чтобы питон дискредитировать :) ? Но ты конечно можешь заниматься конспирологией, у нас свободная страна.

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

А болдом в самом начале тезисы выделили хакиры чтобы питон дискредитировать :) ?

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

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

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

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

Ну вот я и использую, просто MD не так проста, вот я и думаю, как бы ускорить процесс (даже процентов 20 - уже хорошо)

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

просто MD не так проста
MD

?

вот я и думаю, как бы ускорить процесс (даже процентов 20 - уже хорошо)

На сколько я знаю, PyPy плохо работает с NumPy http://buildbot.pypy.org/numpy-status/latest.html и совсем не работает со SciPy, что на практике одно и то же. А из других вариантов (если ты хочешь продолжать писать на Python, а не на питоноподобном языке со статической типизацией типа Cython) остается онтопик, который тормозит. Как вариант - искать более быстрые реализации конкретных алгоритмов для работы с массивами, либо в том или ином виде альтернативы NumPy типа Blaze - http://blaze.readthedocs.io/en/latest/overview.html и тестировать.

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

кратко

вся

У тебя функция сравнения строк сломалась :)

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

molecular dynamics

да меня в целом статическая типизация не пугает, я привык. а вот работа с массивами и синтаксис мне дико нравятся. за ссылки спасибо, если что-то ещё есть, буду благодарен!

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