Разработчики Google представили (http://code.google.com/p/unladen-swallow/wiki/ProjectPlan) открытый проект Unladen Swallow (http://code.google.com/p/unladen-swallow/), нацеленный на ускорение выполнения Python скриптов, пообещав обеспечить пятикратный прирост производительности. Подобных результатов планируется достичь путем замены виртуальной машины стандартного Python интерпретатора на основанный на LLVM JIT-компилятор, на лету транслирующий скрипты в исполняемый код.
Кроме замены виртуальной машины, список изменений затрагивает изменение механизма блокировок, оптимизацию для работы на многоядерных CPU за счет распараллеливания вычислений, переработку сборщика мусора для работы в неблокирующем режиме, улучшение средств для создания многопоточных программ.Unladen Swallow основан на коде стандартного интерпретатора
CPython 2.6.1 (http://www.python.org/download/) и обеспечивает полную совместимость с ним. При этом, в настоящий момент развития проекта, Python скрипты в сред...URL: http://arstechnica.com/open-source/news/2009/03/google-launc...
Новость: http://www.opennet.me/opennews/art.shtml?num=20981
>LLVM JIT-компилятор, на лету транслирующий скрипты в исполняемый код.Ух ты, а можно то же самое и для Groovy?
>Ух ты, а можно то же самое и для Groovy?А java разве jit не использует?
это вы про что вообще? 0_О
В Groovy это уже есть (используется JVM).
дело понятное, кризис - нового железа закупать с выше приказа небыло, вот и оптимизируют
Вот это по нашему
Удачи! Больше языков, хороших и разных!
Задавим M$ вместе!
Много не надо. Если будет много сами запутаемся, перессоримся и M$ не задавим. M$-у наши раздоры только на руку. Лучше, немного хороших объектноориентированных.
правда жизни состоит в том, что M$у глубоко пофиг на ваши раздоры
Ну-ну. Пока в нашем стане постоянно будут войны "то vs это" у нас, например, так и не появится единого вменяемого API. Вендоры коммерческого софта и дальше будут ложить на GNU/linux, делая его только по ОСь от M$. И только не надо говорить, что нам не нужны эти Автокады с Фотопопами и Одноэсами.
То же и про зоопарк языков программирования. Туча малоизвестных ЯП, на некоторых всего-лишь пара проектов. Адепты одного такого ЯП грызутся с адептами другого. Это, конечно, "повышает" имидж свободного ПО.
Не будет малоизвестных языков - не будет развития. Ruby тоже был малоизвестным в начале.
лучше б он таким и оставался...
>Ruby тоже был малоизвестным в начале.вы ему льстите
> Пока в нашем стане постоянно будут войны "то vs это"...Конкуренция, поиск новых решений и свежие идеи всегда двигали мир опенсорса. Об этом говорили и Торвальдс и многие другие (совсем вот недавно - про единый линукс, или 73 открытые лицензии), и это много раз обсуждалось, в том числе, и на опеннете.
давно пора.
Догоним и перегоним Perl?
скорее дотнет и яву
>скорее дотнет и явуУ питона еще и с песочницами не ахти.Вон в Battle for Wesnoth его юзали для AI скриптов.Вроде разумное применение - особой скорости там не надо, считать вроде может, свой интерпретер клепать не надо, зачастую есть в системе, т.е. вроде как к месту.А закончилось все тем что пришло понимание того что AI скрипты которые по задумке ограничены тем не менее могут творить в системе что угодно а песочницы, увы, не работают.Ессно в итоге просто вырубили сий фич совсем: грузить юзеру скрипты которые могут неограниченно шариться по системе - хреновая идея.В жаве как минимум пытаются работающую песочницу изобразить.Да, ее регулярно ломают... но в питоне даже так не получается насколько я понял.А иногда для скриптоязыка ограничения могут быть полезны.Зачем бы тому же AI скрипту возможность лазить по всей моей системе?Ему требуется уметь считать и не более того, а то что при отсутствии ограничений запросто найдутся уроды которые вместо AI скрипта подгрузят спамилку\проксю - это как пить дать :)
>У питона еще и с песочницами не ахти.В гугле, в App Engine как-то сделали же песочницу.
там просто свой скомпилированный питон стоит, без физического присутствия системных сишных библиотек и эта новость как раз подтверждает эту теорию
Да всё у питона в порядке. Civilization IV на нём написана - и ничего. Главное правильно применить.
>Да всё у питона в порядке. Civilization IV на нём написана -
>и ничего. Главное правильно применить.Eve-online на нем работает и весьма успешно.
Ага. И причем тут песочница. Никто не спорит, что на питоне можно написать прогу. Проблема в том, что пользовательские скрипты на питоне никак не ограничить в правах.
не понял только одного
в пять раз быстрее - это означает "разнесем выполнение на пять ядер" или "оптимизируем код и ускорим его в пять раз на одном ядре" ?
Хм, если сейчас питон сливает с++ в 100 раз, то в будущем будет всего в 20 ... ну ну ...
>Хм, если сейчас питон сливает с++ в 100 раз, то в будущем
>будет всего в 20 ... ну ну ...Сравнивать Python и С++ - как сравнивать автобус и болид формулы-1. В первый помещается больше пассажиров, но он медленный, второй жутко быстрый, но даже маленькая кочка приведёт к катастрофе.
>даже маленькая кочка приведёт к катастрофередко вы смотрите формулу :)
завтра первое гран-при в сезоне. не пропустите
>Хм, если сейчас питон сливает с++ в 100 раз, то в будущем
>будет всего в 20 ... ну ну ...а C++ в 500 раз медленнее ассемблера, вот только почему-то массово на нем не пишут.
И проигрывает не в 100 раз, а в 10, да и если уж на то пошло, то в критических местах пишут на С, а потом делают врапер.
Прям в 500? Ладно. Приведите пример в котором проигрыш хотя бы в 10 раз. Т.е. пример оптимизированных функции на ASM и на C++, между которыми наблюдается такой феномен.
> а C++ в 500 раз медленнее ассемблеране фантазируй вслух, дядя.
P.S. C++ медленнее perl по скорости разработки. А assembler медленнее C++.
> в пять раз быстрее - это означает "разнесем выполнение на пять ядер" или
> "оптимизируем код и ускорим его в пять раз на одном ядре" ?Читайте оригинальные новости на английском, и таких вопросов не будет изначально.
# Produce a version of Python at least 5x faster than CPython.
# We intend to structure Unladen Swallow's internals to assume that multiple
# cores are available for our use. Servers are only going to acquire more and
# more cores, and we want to exploit that to do more and more work in parallel.посмотрим что у них получится. Хотелось бы и "оптимизируем" и в том числе "на одном ядре"
# Задавим M$ вместе!
Они сами себя давно уже давят. Им без разницы ресурсоемкость и производительность программ, их подход прост - вам нужна наша программа? Покупайте под нее отдельный сервер. Им главное - быстрота разработки, больше их ничего не волнуют. Это мое imho, конечно.
> Это мое imho, конечно.Это не imho, это чистая правда.
Как всегда ЭТО будет работать только на х86, как их СДК под робот-ведроид. Причем как можно было искурочить вполне себе кросс-платформенный qemu я себе даже не представляю.
думаю, они просто выкинули остальные архитектуры-платформы для простоты - ибо 99+% разработчиков всё равно имеет x86(_64) машины...
Вы бы хоть на код посмотрели, чтобы никто не думал что опеннет посетило стадо клоунов из погорелого цирка. А для людей с плохим зрением в новости написали, что код будет контрибутиться назад в основной Python.
>Вы бы хоть на код посмотрели, чтобы никто не думал что опеннет
>посетило стадо клоунов из погорелого цирка. А для людей с плохим
>зрением в новости написали, что код будет контрибутиться назад в основной
>Python.а вы уже посмотрели? так скажите чего там, тыкать пальчиком много ума не надо.
вот интересно зачем велосипеды, если на perl это и есть JIT?может предожить гуглу bash сделать в 10 раз быстрее?
У Google, насколько я знаю, преимущественно x86-сервера. Чего ради им надо смотреть на другие архитектуры?Вам надо, вы и портируйте.