The OpenNET Project / Index page

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

Dropbox прекращает разработку Pyston. Опубликован финальный выпуск 0.6.1

05.02.2017 10:55

Опубликовано обновление проекта Pyston 0.6.1, в рамках которого компанией Dropbox развивалась высокопроизводительная реализация языка Python, созданная с использованием наработок проекта LLVM и использующая JIT-компиляцию для достижения высокой производительности. Код Pyston написан на языке C++ и распространяется под лицензией Apache.

Кроме исправления ошибок и устранения несовместимостей в новой версии в представлены значительные оптимизации производительности. При проведении штатных тестов Pyston 0.6.1 работает в среднем на 95% быстрее, чем CPython, в более реалистичных тестах на основе реальных web-приложений Pyston обгоняет CPython на 48%, а на серверах Dropbox - на 10%.

К сожалению дальнейшее развитие проекта будет зависеть от интереса к нему независимого сообщества - компания Dropbox приняла решение прекратить разработку своими силами и Pyston 0.6.1 стал последним релизом, подготовленным инженерами Dropbox в своё основное рабочее время. Проанализировав состояние проекта компания пришла к выводу, что на поддержание совместимости с CPython и обеспечение приемлемого потребления памяти требуется значительно больше ресурсов и затрат, чем ожидалось. Но решающим фактором отказа от проекта Pyston стали не оправдавшиеся завышенные надежды на производительность Pyston.

Несмотря на неплохие показатели в синтетических тестах, на реальных серверах Dropbox использование Pyston позволило добиться лишь ускорения кода на 10%, что значительно меньше ожидаемого (планировалось добиться повышения производительности как минимум в два раза). В текущем виде Pyston обеспечивает неплохую совместимость с CPython, достаточную для выполнения серверного кода Dropbox, но всё время при разработке ушло на обеспечение совместимости и снижение потребления памяти, а не на оптимизацию специфичных нагрузок. В итоге, более реалистичным путём оптимизации в Dropbox стала переработка кода, требующего высокой производительности, на других языках, таких как Go.

В ближайшее время занятые в разработке Pyston инженеры будут переключены на работу над другими проектами. Код Pyston останется открытым и доступным для развития сообществом. Рассматриваются возможности продолжения развития отдельных частей проекта или их переноса в CPython.

Напомним, что в отличие от проекта PyPy, также продвигающего идею применения JIT для ускорения выполнения Python-скриптов, в Pyston используется не трассирующий JIT, базирующийся на компиляции в машинный код часто выполняемых циклов, а применяемый в современных JavaScript-движках JIT на основе трансляции отдельных методов (method-at-a-time), который, по мнению инженеров Dropbox, является более перспективной технологией. Принцип работы Pyston сводится к разбору кода на языке Python и его трансляции в промежуточное представление LLVM (IR, Intermediate Representation). Далее IR-представление проходит обработку в оптимизаторе LLVM и передаётся для исполнения в JIT-движок LLVM, который преобразует IR-представление в машинный код.

Для получения информации о типах переменных для программ на динамическом языке Python применяется техника вероятностного предсказания типов объектов с последующим уточнением правильности выбора типа в процессе выполнения. Таким образом Pyston постоянно варьирует выполнение между двумя ветками - быстрой, когда данные о предсказанных типах подтверждаются, и медленной, используемой в случае рассогласования данных о типе. Работа может осуществляться в многопоточном режиме, допускающем параллельное выполнение нескольких нитей кода на языке Python и избавленном от глобальной блокировки интерпретатора (GIL, global interpreter lock). <

 
  1. Главная ссылка к новости (https://blog.pyston.org/2017/0...)
  2. OpenNews: Выпуск Pyston 0.6, реализации языка Python с JIT-компилятором
  3. OpenNews: Выпуск Pyston 0.5, реализации языка Python с JIT-компилятором
  4. OpenNews: Выпуск Pyston 0.4, реализации языка Python с JIT-компилятором
  5. OpenNews: Выпуск Cython 0.25, компилятора для языка Python
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/45984-pyston
Ключевые слова: pyston, python
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (136) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 11:10, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +3 +/
    Ускорить один из популярных языков в два раза не так уж и просто, кто бы мог подумать?
     

     ....большая нить свёрнута, показать (36)

  • 1.2, proud_anon (?), 11:10, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +25 +/
    Поняли наконец, что идея использования питона в качестве высокопроизводительного языка ущербна изначально. Костыли только отсрочили момент осознания. Быстро, Дешево, Качественно - выбери только 2 критерия.
     
     
  • 2.8, Аноним (-), 11:39, 05/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +1 +/
    > Быстро, Дешево, Качественно - выбери только 2 критерия.

    Выбираю Быстро и Качественно. Что делать?

     
     
  • 3.10, Xasd (ok), 11:46, 05/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    rust наверно?

    "быстро" -- я так понимаю имеется ввиду "быстро работает программа"

    "дёшево" -- значит "быстро и дёшево написать на коленке программу"

    "качественно" -- "на 1 процент кода -- допустить маленькую вероятность в нём ошибки"

    "дёшево"+"качественно" это понятное дело ниша для Python

     
     
  • 4.13, Аноним (-), 12:10, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –11 +/
    Вы шутите? Rust далеко не быстрый. Да и не слишком качественный с его существенными изменениями в минорных версиях.
     
     
  • 5.68, Аноним (-), 20:10, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    В Rust статических оптимизаций доступно больше, чем в с++.
     
  • 5.121, Alexey (??), 10:30, 07/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    В тестах debian скорость алгоритмов, реализованных на rust была почти что такая же как и у C++.
     
  • 3.15, Аноним (-), 12:36, 05/02/2017 [^] [^^] [^^^] [ответить]  [] []     [к модератору]
  • –5 +/
    Ruby? Elixir?
     
     
  • 4.30, name (??), 15:04, 05/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • –5 +/
    Ruby - это тот же Python: красив, удобен и фичаст, но тормозной и с GIL'ом.
    А Elixir - это вообще в другую степь. Лучше уже node.js.
     
     
  • 5.36, Аноним (-), 15:28, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Что значит Elixir - в другую степь? http://www.phoenixframework.org/
     
  • 5.38, Аноним (-), 15:34, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –2 +/
    > Ruby - это тот же Python: красив, удобен и фичаст, но тормозной
    > и с GIL'ом.

    GIL используется и в CPython. А вот в JRuby его нет.
    На счёт тормознутости - https://benchmarksgame.alioth.debian.org/u64q/ruby.html

    В 0.5-0.7 раза "тормознее" питона, как-то странно говорить. Проще сказать "быстрее".

     
     
  • 6.42, angra (ok), 16:39, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +2 +/
    Избирательность зрения у тебя потрясающая. Сам дал ссылку, в которой ruby быстрее только на 5 тестах из 10 и медленнее на других 5, казалось бы паритет. Но нет, на вторые пять тестов можно просто закрыть глаза и сделать вид, что их нет.
     
     
  • 7.95, Аноним (-), 23:25, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    потому что тесты какашные, сравните код тестов и убедитесь в этом сами.
     
     
  • 8.97, angra (ok), 23:46, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    Там вообще-то можно предложить свой вариант кода для любого из тестов на любом и... текст свёрнут, показать
     
     
  • 9.100, Аноним (-), 01:55, 06/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Уже проходили это, тесты заворачивают с формулировкой что используются оптимизац... текст свёрнут, показать
     
  • 4.39, Parsee (ok), 16:15, 05/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • –1 +/
    Просили ведь, качественно!
    Динамика это быстро и дёшево. Quick and dirty.
     
  • 3.16, Anonymous1 (?), 12:54, 05/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +4 +/
    >> Быстро, Дешево, Качественно - выбери только 2 критерия.
    > Выбираю Быстро и Качественно. Что делать?

    Платить много-много денег для разработки. По-моему, очевидно.

     
  • 3.17, бедный буратино (ok), 13:23, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    заплатить миллион за python
     
  • 3.29, all_glory_to_the_hypnotoad (ok), 14:56, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +2 +/
    > Выбираю Быстро и Качественно. Что делать?

    бери с++

     
  • 3.50, Аноним (-), 17:51, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    >> Быстро, Дешево, Качественно - выбери только 2 критерия.
    >Выбираю Быстро и Качественно. Что делать?

    Готовить бабки на java+с++ || go+c++ программистов.

     
  • 3.59, Семилетов (ok), 19:05, 05/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • –4 +/
    > Выбираю Быстро и Качественно. Что делать?

    c#

     
     
  • 4.73, h0rn3t (?), 20:31, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    ахахаха
     
  • 3.65, Diozan (??), 20:06, 05/02/2017 [^] [^^] [^^^] [ответить]  [] []     [к модератору]
  • +/
    > Выбираю Быстро и Качественно. Что делать?

    Деньги готовить. Ибо не дёшево.

     
     
  • 4.82, Аноним (-), 21:05, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Не дешево, но зато правильно. Полный контроль. При любой проблеме винить кроме собственных программистов будет некого.
     
  • 3.75, Аноним (-), 20:32, 05/02/2017 [^] [^^] [^^^] [ответить]  [] []     [к модератору]
  • +1 +/
    c++11 + Qt позволяют писать код не менее быстро, зато на порядок быстрее выполняющийся.
     
     
  • 4.102, анан (?), 09:34, 06/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –2 +/
    А в результате проект типа KDE забагованный...
     
     
  • 5.103, Anonim (??), 09:39, 06/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Не знаю чего та у KDE, на моё ПО на Qt у пользователей нет жалоб..., разве что за очень редким исключением. Полагаю у них просто бардак в организации.
     
  • 3.87, Лютый жабист_ (?), 21:37, 05/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • –2 +/
    Если заранее посчитать зп прогеров, надо было ставить нормальное железо (что дешевле, чем нанять штат писателей Крутого Нового Языка и в итоге профукать бабло и не получить роста. А из нормальных языков (те не си) самый крутой известно кто
     
  • 2.9, cmp (ok), 11:45, 05/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +5 +/
    Неужели хоть до кого-то доходит, что все эти скрипто поделки лишь саппорт, и городить огород типа пипи и прочего тупик и неизбежное фиаско.
     
  • 2.70, Vkni (ok), 20:22, 05/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • –1 +/
    > Быстро, Дешево, Качественно
    > - выбери только 2 критерия.

    Ну те же простые программы на Ocaml'е визуально отличаются от питоновских только заменой def на let да убиранием двоеточий. Производительность - половина от C++ной.

     
     
  • 3.151, Липецкая налоговая (?), 21:45, 08/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    здесь не любят OCaml, жди мунусов.
     
  • 2.125, Аноним (-), 11:29, 07/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    На с++ с учетом последнего стандарта и либ на все случаи жизни (Boost, Qt), код пишется не на много медленнее, где-то на 20%, не больше. Зато дает гарантированную производительность. Видимо у них там совсем всё глубоко запитонено, раз они решились заняться исследованиями в области оптимизации, не дающими никаких гарантий, нежели просто переписать на другой язык.
     

  • 1.3, Аноним (-), 11:12, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +11 +/
    Мда уж. Вот тебе и "сверхбыстрый питон". Рожденный ползать, как говорится,..
     
     
  • 2.12, Аноним (-), 12:02, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +5 +/
    Надо понимать, что питон оказался достаточным для достижения ими того положения, в котором они находятся и которое недостижимо для 99.999% проектов. И теперь пришло время идти дальше. А рядовым проектам питона хватит за глаза, причём без оптимизаций. Ещё Брукс писал, что "первое правило оптимизации - не занимайтесь оптимизацией".
     
     
  • 3.20, www2 (ok), 13:42, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Прямо так и писал - "не занимайтесь"? Врёте нещадно. Не занимайтесь ПРЕЖДЕВРЕМЕННОЙ оптимизацией. Сначала пишем, потом ищем узкие места, узкие места оптимизируем. Писать сразу "оптимизированно" не стоит, потому что как правило получается экономия на спичках в ущерб читабельности кода.
     
     
  • 4.112, Anonim (??), 13:28, 06/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    > Писать сразу "оптимизированно" не стоит

    Это уже баянoм стало... Каждый год находитя очередной цитирующий ее человек, при полном непонимании смысла. Вне изначального контекста она неверна. Как минимум надо писать так:
    > Писать сразу "оптимизированно" в ущерб читаемости, когда недостаток производительности зараннее не очевиден, не стоит.

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

     

  • 1.4, Аноним (-), 11:14, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +1 +/
    Не шмогли. "Перспективная технология", да, в то время как у PyPy на синтетике на порядок быстрее здесь всего в два раза. Но надо снять шляпу, синдром Вьетнама не развился.
     
     
  • 2.5, Аноним (-), 11:26, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Вы там не забывайте, что этот ваш пи-пи является подмножеством, а не самим питоном.
    Питон тормозной. С этим нужно смириться.
     
     
  • 3.7, Филипп Филиппович (ok), 11:36, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    PyPy — это не RPython. RPython — это то, на чём PyPy написан. А реализует PyPy именно полноценный Python.

    И потом, тормоза — в головах. Когда на Python пишется код, по-настоящему критичный по производительности и памяти (кроме случаев, когда всё критичное упрятано, скажем, в библиотеку на C/C++, а на Python сделана только логика обвязки), это проблема не столько языка, сколько выбора языка. Для фрагментов, которые обещают стать бутылочными горлышками, на Python можно писать макет, самую первую версию и т.п. Но и только.

    Рецепт-то прост. У данного языка есть масса ниш, в которых он хорош, но не надо пытаться лезть туда, где — как минимум, при существующих реализациях — он является не лучшим выбором.

     
     
  • 4.11, Аноним (-), 11:58, 05/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +1 +/
    Слуште, Филип Филипыч. А зачем обвязки на тормозном языке делать, когда быстрых навалом?
    Ниже смотри цитату из блога больших любителей питона.
     
     
  • 5.14, Аноним (-), 12:36, 05/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • –1 +/
    Потому что быстрее сделать на питоне, а потом узкие места (как всего лишь авторизационную проксю) оптимизировать. Но лично я к таким историям всегда со скепсисом отношусь, так как не раз и не два приходил на новый проект и поднимал производительность питонокода на порядок. Даже не трогая pypy. Такие дела. Хотя никто не запрещает хвататься за go, а не профайлер, это да.
     
     
  • 6.19, Аноним (-), 13:40, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –2 +/
    О, ну конечно Вот вы бы решили проблему, повысив производительность на порядок ... большой текст свёрнут, показать
     
     
  • 7.31, proud_anon (?), 15:08, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +2 +/
    "Он тормозной и код выглядит как..." Отличная метафора, сохраню на память.
    Теперь наши свинцовые костыли для бега, благодаря новейшим разработкам в генной инженерии могут быть выкрашены в стойкий, чудесный нежно-изумрудный цвет. Наши костыли - идеальный подарок как для начинающего, так и опытного питониста. Ведь всем известно, что без костылей они не могут ходить.
     
  • 7.37, Аноним (-), 15:33, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > И место ему там, где требуется,
    > чтобы непрограммисты могли программировать. Это вузы и институты.

    Только там для этого почему-то предпочитают жабку.

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

    И опять мимо. Классика здесь паскаль. Который заменили (или заменяют, по мере слоупочности) на жабку и уж потом, самыми передовыми, на питон.

    О, слышу гулкие раскаты грома. Похоже жабисты прочитали и впечатлились )

     
  • 5.22, funny.falcon (?), 13:47, 05/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • –1 +/
    Потому что, до появления Go, Python был самым "легко усвояевым" языком общего назначения.
    Т.е. из тех языков, на которых можно было писать "почти-всё-что-угодно", он был проще всего в изучении, и имел меньше всего косяков в самом языке и рантайме (чем выгодно отличался от perl и php).

    Теперь нишу подобного языка всё больше отвоёвывает Go, т.к. он, в добавок к перечисленным достоинствам, ещё и быстрый.

     
     
  • 6.35, Аноним (-), 15:22, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > Потому что, до появления Go, Python был самым "легко усвояевым" языком общего
    > назначения.
    > Т.е. из тех языков, на которых можно было писать "почти-всё-что-угодно",

    Совершенно внезапно, "самым-самым" в этом плане был VB. Сперва 5-6, потом уже .NET.
    Чуть более элитная школота любила дельфи. Главный аргумент – и там и там, гуи с формочками можно было легко и просто нащелкать мышкой, в отличие от питонов и прочих. Да и привлекательность для типичного «общеназначенца» кучи платных компонентов, как и возможности сразу, «из коробки», не открывать код и деплоить бинарник, недооценивать не следует.

     
     
  • 7.46, all_glory_to_the_hypnotoad (ok), 17:11, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Так было ещё до популярности питона, когда в общем то айти образование везде было ниже плинтуса. А сейчас уровень немного подрос и везде впихивают именно питон без всякой гуйни.
     
  • 4.33, all_glory_to_the_hypnotoad (ok), 15:14, 05/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +1 +/
    В реальности всё происходит несколько иначе Если уж меня совсем прижало и пришл... большой текст свёрнут, показать
     

  • 1.6, Аноним (-), 11:32, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +1 +/
    https blog selectel ru oblachnoe-xranilishhe-obnovlenie-api Слово людям, кото... большой текст свёрнут, показать
     
     
  • 2.21, эцсамое (ok), 13:45, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –2 +/
    1 миллион хелловорлдов в секунду на питоне:

    https://medium.com/@squeaky_pl/million-requests-per-second-with-python-95

     
  • 2.41, й (?), 16:31, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    т.е. они сравнивают prefork-архитектуру (wsgi) с event-driven. для прокси, понятно, по процессу на запрос, будет очень неоптимально. asyncio? не, не слышали.
     
     
  • 3.51, all_glory_to_the_hypnotoad (ok), 17:54, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +2 +/
    prefork архитектура, event-driven и wsgi ортогональны друг другу. В частности wsgi это всего лишь програмный интерфейс, prefork способ бутстрапа секелета сервиса и e-d - метод организации асинхронности. Упомянутый uwsgi в статье сочетает сразу все эти технологии и нарвряд ли существует что-то более лучшее для убогого питона.
     
     
  • 4.55, й (?), 18:38, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    rtfm. WSGI doesn't work with async. т.е. запустить-то можно, но асинхронным оно быть перестаёт и работает с wsgi только по схеме "один клиент -- один воркер"
     
     
  • 5.56, all_glory_to_the_hypnotoad (ok), 18:50, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    ты просто тупoй и совсем не понимаешь что читаешь. Вот для совсем овoщей разжёвано как это всё работает

    http://uwsgi-docs.readthedocs.io/en/latest/Async.html#running-uwsgi-in-async-

     
     
  • 6.60, й (?), 19:11, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    http://www.tornadoweb.org/en/stable/wsgi.html

    In WSGI mode asynchronous methods are not supported. This means that it is not possible to use AsyncHTTPClient, or the tornado.auth or tornado.websocket modules.

     
     
  • 7.108, Аноним (-), 10:26, 06/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    То что тонадо не может в асинхронный wsgi не значит что и другие не могут. Так то!
     
     
  • 8.114, й (?), 14:33, 06/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    я вообще сомневаюсь, что у этих программистов на uwsgi было что-то асинхронное ... текст свёрнут, показать
     

  • 1.18, бедный буратино (ok), 13:23, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +/
    как корабль назовёте - так он вам и поплывёт
     
     
  • 2.26, Аноним (-), 14:26, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Скорее как корабль назовете- так он и по ползет)
     
  • 2.32, Аноним (-), 15:12, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    А «Корытом» назовете —
    Не уйдете от беды:
    Эта шхуна и в болоте
    Нахлебается воды.
    Эта шхуна и в болоте
    Нахлебается воды.

    ;-)

     

  • 1.27, all_glory_to_the_hypnotoad (ok), 14:30, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +2 +/
    > Несмотря на неплохие показатели в синтетических тестах, на реальных серверах Dropbox использование Pyston позволило добиться лишь ускорения кода на 10%, что значительно меньше ожидаемого ... более реалистичным путём ... стала переработка кода ... на других языках, таких как Go.

    Что-то до людей очень долго и туго доходят очевидные вещи. Действительно, ну кто бы мог подумать, что программы, написанные на во-всех-щелях-динамическом-яп в котором ну просто всё сделано чтобы его невозможно было никак ускорить, будут тормозить с любыми подпорками в виде JITов, особенно если код пишет типичная техническая недоросль.

     
     
  • 2.71, Аноним (-), 20:26, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +2 +/
    Всё просто, люди не хотят переучиваться, становятся ярыми фанатиками своей позиции. Мультикомбайность языка позволяет его использовать под всё на свете, но это не значит что это правильно. Как следствие когда-то всё таки возникает понимание данного факта. А тут еще и весь мир рассмешили.
     
     
  • 3.94, all_glory_to_the_hypnotoad (ok), 23:08, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Чему не хочет переучиваться хрюндель который продвигал pyston?
     

  • 1.28, Аноним (-), 14:36, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +2 +/
    Тут прямо эксперты языков программирования. Один, не сможет усидеть на всех стульях сразу. Не надо так идеализировать мир
     
     
  • 2.72, Аноним (-), 20:30, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    Python еще как сидит. С такой сборной фанатиков пересидит и пересмешит всех остальных.
     

  • 1.34, Аноним (-), 15:16, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +/
    Нельзя ускорить то, что и так работает запредельно быстро.
     
  • 1.40, Аноним (-), 16:23, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +/
    А зачем в этом проекте какая то там совместимость с другим проектом - CPython? Вот этого я не понял. Это ведь два разных проекта. Кому нужна совместимость между Linux и Andoid или между WebKit и Blink? Да никому, их нет и чем дальше, тем сильнее они разойдутся.
     
     
  • 2.57, angra (ok), 18:52, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Это же очевидно, чтобы без модификаций выполнять уже существующий код на CPython.
     
     
  • 3.62, Аноним (-), 19:32, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Вот смотрите, на Scala свой код, а на Java свой, они похожи, но они разные и каждый для своего дела и всех это устраивает, тогда в чём проблема здесь?
     
     
  • 4.74, angra (ok), 20:32, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    А причем здесь Scala и Java? Сдается мне, что ты вообще не понимаешь, о чем речь идет. А заодно не понимаешь, каким именно образом код на Scala и Java может сосуществовать в одном проекте и почему в случае Pyston и CPython подобное невозможно.
     
  • 4.85, Aleks Revo (ok), 21:18, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Потому что хотели "всё быстро заработало", а не "создали свой ни с чем не совместимый язык и переписали всё на нём".
    Пришли в итоге к компромису и переписывают всё на уже созданном быстром языке, проверенном и отточенном под их задачи, хотя и не идеальном.
     
     
  • 5.92, Аноним (-), 22:35, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    А разработчики CPython ничего из пистона в свой проект не привнесут?
     

  • 1.44, Аноним (-), 16:55, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +1 +/
    В отличие от ряда аналогов, Dropbox не использует шифрование данных на стороне клиента, что, в частности, сделало возможным инцидент 19 июня 2011 года, когда из-за ошибки в обновлённом программном обеспечении сервера в течение четырёх часов был возможен вход в любой аккаунт с использованием любого пароля.
     
     
  • 2.76, Аноним (-), 20:35, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    Это был просто день открытых дверей
     

  • 1.67, Аноним (-), 20:08, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +/
    Что и следовало ожидать. В нашем проекте идет переезд на Java и возможно Scala
     
  • 1.69, Аноним (-), 20:14, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +/
    Да всё нормально, это естественное стечение обстоятельств. Люди, просто инструменты надо подбирать по назначению, а не по удобству. Что вы думали, Python заменит все остальные языки? Нет конечно. У него есть своя небольшая ниша, как у матлаба, под которую он заточен. И ожидать от него большего - глупо.
     
     
  • 2.136, Аноним (-), 08:12, 08/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Это должно быть написано везде, вместо рекомендаций использовать питон для всего.
     

  • 1.77, Аноним (-), 20:35, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • –1 +/
    Как тут у всех быстро отношение к питону поменялось. В прошлых новостях были одни восхваления. А как написали что да, действительно, питон не для нагруженных сервисов, так понеслось.
     
     
  • 2.86, Aleks Revo (ok), 21:21, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +1 +/
    > Как тут у всех быстро отношение к питону поменялось. В прошлых новостях
    > были одни восхваления. А как написали что да, действительно, питон не
    > для нагруженных сервисов, так понеслось.

    Потому что те, кто радовались - сейчас напиваются, а те, кто нудел "ну мы же вам говорили" - воспрянули духом и торжествуют.

     

  • 1.79, Аноним (-), 20:41, 05/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +/
    Помню какой был скандал у Ubuntu, когда они долгие месяцы пытались оптимизировать менеджер приложений, и всё бестолку, продолжал безбожно тормозить. В итоге признали ошибку, и убрали его. Тут видим аналогичную ситуацию. Только с явно большими потерями. Дураки, чё сказать. Надо смотреть на вещи объективно, а не через призму упрямости.
     
     
  • 2.83, Аноним (-), 21:09, 05/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > Помню какой был скандал у Ubuntu, когда они долгие месяцы пытались оптимизировать
    > менеджер приложений, и всё бестолку, продолжал безбожно тормозить.

    Очередной знаток реалий. На опеннете анонимы годами жаловалисть на тормозной питон в убунте в целом и на этот самый менеджер в частности.

    > В итоге признали ошибку, и убрали его.

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

     

  • 1.99, pavlikvk (?), 01:41, 06/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  [] []     [к модератору]
  • +/
    Кучка пейсателей из конторки чье творение замечательно заменяется любым популярным веб-сервером с DAV надоело тратить время на совместимость своих костылей, но плохой именно Python, да.

    Я не знаю что там такого у Dropbox на Python, но очевидно, что узкое место - это I/O операции. Нужно было не свои монстроузные JIT-костыли выдумывать, а просто взять asyncio.

     
     
  • 2.104, Anonim (??), 09:43, 06/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    Вам, конечно, виднее
     
     
  • 3.111, pavlikvk (?), 12:46, 06/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > Вам, конечно, виднее

    Конечно, закупиться железом и смаштабироваться в ширь было бы куда умнее и дальновиднее на деньги которые вливали в разработку этого JIT-компилятора, который при наличии PyPy и так не жизнеспособен. Все эти басни наш JIT лучше, чем их JIT - это темы для докладов на конференциях и не более.

     
  • 2.105, Anonim (??), 09:46, 06/02/2017 [^] [^^] [^^^] [ответить]  [] []     [к модератору]
  • +1 +/
    Судя по новости, они остро нуждаются в подобных диванных аналитиках. Может вам стоит предложить свою кандидатуру?
    >  но очевидно, что узкое место - это I/O операции

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

     
     
  • 3.106, Аноним (-), 10:00, 06/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +2 +/
    >Я не знаю что там такого у Dropbox на Python, но очевидно, что узкое место - это I/O операции.

    расшифровываю: я не знаю что там происходит, но я все проблемы решаю почесав пятку правой ноги левой ногой.

     
     
  • 4.113, Anonim (??), 13:31, 06/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Ну, как видите, они вот только осознали, что так можно
     
  • 2.107, Аноним (-), 10:21, 06/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    >просто взять asyncio

    IO не зависит от ЯП, парадигмы программирования -- все зависит от пряморукости. И уж поверь, проседоны по IO есть константа. И хоть пиши на ассемблере производительность не увеличится.Свой asyncio проверь на 100500 одновременных запросах. Ждем отчета.

    P.S. Хотя, нет, не ждем, ты ж никогда отчеты не писал.

     
     
  • 3.110, pavlikvk (?), 12:41, 06/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Ты просто не в курсе асинхронного программирования, а пытаешься что-то рассуждать. На асинхронщине можно и 100500 и 201000 rps держать. А asyncio это или NodeJS уже и не так важно. Жду от тебя аналога последних на ассемблере.
     
     
  • 4.119, Аноним (-), 19:40, 06/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +3 +/
    Я как раз в курсе Каждый твой асинхронный запрос, висячий и ожидающий возможнос... большой текст свёрнут, показать
     

  • 1.109, DVDV (?), 10:45, 06/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  []     [к модератору]
  • +/
    "Быстро, Дешево, Качественно - выбери только 2 критерия." Похоже все три - это NIM (Nimrod). Синтаксис питона, скорость CPP.


     
     
  • 2.120, Аноним (-), 05:40, 07/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +1 +/
    Продолжайте, продолжайте фразу. ...маргинальность лиспа.
     
     
  • 3.124, DVDV (?), 10:57, 07/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    Как всё в начале маргинально. Потом что-то "выстреливает", что-то нет. Последнее непредсказуемо.
     
  • 2.137, Аноним (-), 08:16, 08/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +/
    > "Быстро, Дешево, Качественно - выбери только 2 критерия." Похоже все три -
    > это NIM (Nimrod). Синтаксис питона, скорость CPP.

    Вопрос - почему не писать сразу на Си?

     
     
  • 3.139, DVDV (?), 10:38, 08/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • –2 +/
    Си- устаревший синтаксис (нет выделения блоков отступами), нет модульности, нет сборки мусора, нет контроля выхода за границы массива. Всё это есть в Nim. Синтаксический сахар питона. При том компиляция в нативный код, это не интерпретатор. Поскольку использует вылизанный gcc, мала вероятность глюков и нет нужды переписывать под разные процессоры, это gcc делает.
     
     
  • 4.140, Аноним (-), 11:15, 08/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    Расскажи какой gcc хороший бсд-шникам. Как они там выпиливали его, ибо неясно, что есть "стандартная библиотека", "стандартные вызовы". По факту, выхлоп от gcc должен быть открыт под GPL, как сам gcc. Дядя Столлман просто водит всех занос.
     
  • 4.148, Аноним (-), 19:51, 08/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    >устаревший синтаксис (нет выделения блоков отступами)

    Уууууууу.

     
  • 3.143, Аноним (-), 15:27, 08/02/2017 [^] [^^] [^^^] [ответить]  []     [к модератору]
  • +2 +/
    >> "Быстро, Дешево, Качественно - выбери только 2 критерия." Похоже все три -
    >> это NIM (Nimrod). Синтаксис питона, скорость CPP.
    > Вопрос - почему не писать сразу на Си?

    Пиши! Разрешаю!
    Заодно уговори авторов ranger переписать его на сишке и помоги vifmщикам, а то их детище, хоть и на сишечке, позорно^W нехорошо сливает, при включенных превиюшках, по скорости этому самому рейнджеру.

    Еще, можешь обратить свой взор на mps-youtube. Тоже питон. Не труЪ, нужно переписать. Не знаю правда, что это даст в плане экономии ресурсов, но возможно, если запускать и искать пару сотен альбомов одновременно, что-то можно будет и заметить невооруженным глазом!

    arandr - питонообертка вокруг xrandr. xpra, прокся для иксов ни питоне.
    Увы, тут вся надежда только на тебя!


     
     
  • 4.149, Аноним (-), 19:52, 08/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • –1 +/
    >[оверквотинг удален]
    > Пиши! Разрешаю!
    > Заодно уговори авторов ranger переписать его на сишке и помоги vifmщикам, а
    > то их детище, хоть и на сишечке, позорно^W нехорошо сливает, при
    > включенных превиюшках, по скорости этому самому рейнджеру.
    > Еще, можешь обратить свой взор на mps-youtube. Тоже питон. Не труЪ, нужно
    > переписать. Не знаю правда, что это даст в плане экономии ресурсов,
    > но возможно, если запускать и искать пару сотен альбомов одновременно, что-то
    > можно будет и заметить невооруженным глазом!
    > arandr - питонообертка вокруг xrandr. xpra, прокся для иксов ни питоне.
    > Увы, тут вся надежда только на тебя!

    Мне питон не уперся, как бы perl + xs.

     
     
  • 5.150, Аноним (-), 21:23, 08/02/2017 [^] [^^] [^^^] [ответить]      [к модератору]
  • +/
    > Мне питон не уперся, как бы perl + xs.

    Очень интересно, даже не смотря на то, что новость о питоне, да и ветка обсуждения тоже.
    Держи нас в курсе!
    Правда, постарайся в следующий раз все же прочитать, на что отвечаешь.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

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