The OpenNET Project / Index page

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

Оценка изменения производительности CPython за последние 5 лет

10.10.2025 08:51

Мигель Гринбе (Miguel Grinberg), автор нескольких книг по Python-фреймворкам SQLAlchemy и Flask, опубликовал результаты тестирования производительности веток CPython с 3.9 по 3.14. Дополнительно аналогичные тесты проведены для Pypy 3.11 (реализация Python с JIT-компилятором), Node.js 24 и Rust 1.90. Для выпусков CPython 3.13 и 3.14 дополнительно измерена производительность при включении JIT-компилятора и режима сборки Free-threading без глобальной блокировки.

Для изменения производительности использовались скрипты для вычисления чисел Фибоначчи (глубокая рекурсия) и пузырьковой сортировки случайно генерируемых чисел, запускаемые в однопоточном режиме и с разделением на 4 потока. Тесты запускались в Ubuntu 24.04 на ноутбуке с CPU Intel Core i5 и macOS Sequoia на ноутбуке с SoC Apple M2.

В большинстве тестов CPython 3.14 оказался быстрее ветки 3.13 примерно на 20%, при том, что в некоторых тестах ветки 3.11 и 3.12 оказались быстрее 3.13. Отрыв 3.14 от веток 3.9 и 3.10 составил примерно два раза. Pypy, Node.js и Rust обогнали CPython 3.14 в первом тесте в 4.93, 4.88 и 69.82 раз, а во втором тесте в 18.14, 6.64 и 36.15 раз, соответственно (сравнивались только однопоточные режимы).







Режим без глобальной блокировки в CPython 3.14 позволил в два раза ускорить многопоточное выполнение. Включение режима с JIT в CPython не привело к существенному росту производительности, а в тесте ветки 3.14 в macOS даже замедлило выполнение.



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





  1. Главная ссылка к новости (https://blog.miguelgrinberg.co...)
  2. OpenNews: Сравнение производительности сетевого драйвера в вариантах на 10 языках программирования
  3. OpenNews: Оценка производительности 14 серверов приложений на языке Python
  4. OpenNews: Оценка типичных проблем с безопасностью для различных языков программирования
  5. OpenNews: Оценка популярности грязных хаков у разработчиков на различных языках программирования
  6. OpenNews: Опубликованы тесты простейших приложений на различных языках программирования.
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/64029-python
Ключевые слова: python, benchmark
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (114) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 09:06, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Все-таки ускорили питон? Не прошло и десяти лет. А нет, прошло.
     
     
  • 2.2, Аноним (2), 09:14, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +20 +/
    > Все-таки ускорили питон? Не прошло и десяти лет. А нет, прошло.

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

     
     
  • 3.92, Аноним (92), 21:15, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А при глубоком понимании что, те же циферки какой-то иной смысл будут иметь?
     
  • 2.44, Аноним (44), 14:20, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Все-таки ускорили питон? Не прошло и десяти лет. А нет, прошло.

    На 20%. При отставании от C в 60 тысяч раз. Это успех.

     
     
  • 3.58, Аноним (58), 16:34, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Опустим множитель кило, в 60 раз.
     
     
  • 4.77, Аноним (77), 19:04, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не в шестьдесят, а в почти полные семьдесят.
     

  • 1.3, th3m3 (ok), 09:26, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну и кто там хотел избавиться от GIL? Довольны?)
     
     
  • 2.5, Аноним (5), 09:33, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Само по себе не имеет значения. Если асинхронный код в итоге выиграет, будет неплохо.
     
     
  • 3.9, Имя (?), 09:50, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Кому неплохо? Представь себе, в Python не все вeб-мakаки на хайлоаде, а в остальных местах async особо и ни нужон
     
     
  • 4.11, Аноним (5), 10:17, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Кому неплохо? Представь себе, в Python не все вeб-мakаки на хайлоаде, а
    > в остальных местах async особо и ни нужон

    На локалхосте есть миллион и одна полезная задача, легко решающаяся асинхронным кодом. Только он на треть медленнее в 1 поток я так прикидывал, но если задача параллельная, легко отыгрывается. Ручная возня с запуском тредов ни разу не окупилась, они слишком неоптимальны в итоге.

     
     
  • 5.17, Аноним (17), 11:08, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    ага, оптимизации в два раза в мульти-трединге между 3.13 и 3.14 просто показывают насколько весь язык не заточен для мульти-треда и конь не валялся оптимизировать это все. Взять любой мачурный язык, так дай бог если 5% ускорения в вакууме между релизами завозят
     
     
  • 6.73, Аноним (77), 18:29, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Это лишь показывает, насколько питон отвратителен.
    >Взять любой мачурный язык, так дай бог если 5% ускорения в вакууме между релизами завозят

    Потому, что они изначально сделаны хорошо.

     
  • 5.21, Имя (?), 11:24, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну если у тебя задача параллельная, где много чего-то ждут чего-то, а потом делают чего-то, то да, а если нет, то сам async становится лишней вознёй, и тем более странным выглядит желание некоторых фанатиков бездумно перетащить в async все библиотеки, думая видимо, что async "эта крута", и не совсем понимая, что это инструмент для довольно чётко очерченного круга задач
     
     
  • 6.23, Аноним (5), 11:37, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Никогда не знаешь, когда она станет параллельной. Сегодня 1 потока достаточно, а завтра ты захочешь 1000 запускать. У меня так было много раз с requests, зачем ждать 300 секунд, если можно управиться за 3? Потом sqlalchemy и так далее, да, такие библиотеки "это крута", и позволяют повысить производительность кода в сотни раз совершенно без затрат и значительных изменений логики.
     
     
  • 7.45, Витюшка (?), 14:22, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это если ты вообще не понимаешь что ты делаешь. Тебе нужно запускать максимум по одному потоку на ядро процессора.
     
     
  • 8.50, User (??), 14:33, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Ээээ для i o bound задач ... текст свёрнут, показать
     
     
  • 9.54, Витюшка (?), 15:12, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Для любых У тебя есть только N физических ядер Далее яитаем про thread pool, s... текст свёрнут, показать
     
     
  • 10.97, Аноним (97), 22:17, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    NVMe с 64 очередями передают привет ... текст свёрнут, показать
     
  • 8.56, Аноним (5), 15:51, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, мне нужно запускать ничем неограниченное число потоков, пока я получаю уско... большой текст свёрнут, показать
     
  • 8.62, Аноним (62), 17:29, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Физические ядра тут не помогут, у питона не потоки, а гринтреды, они в рамках си... текст свёрнут, показать
     
     
  • 9.71, Аноним (77), 18:24, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Проблема не в зелёных потоках, а в gil ... текст свёрнут, показать
     
  • 7.78, Имя (?), 19:29, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Дело не в самом параллелизме, а в том, что когда у тебя нет вот этого "ждут чего-то", то async тебе ничем не поможет, ведь он сделан именно для того, чтобы утилизировать время простаивания в многопоточном коде. Нет простаивания и/или многопоточного кода? Извольте. Ну и, как уже было сказано выше, вэб-вознёй круг задач, решаемых с помощью python и его экосистемы не ограничивается.
     
     
  • 8.80, Аноним (5), 19:48, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А в том и дело, что параллелизм в питоне не работает без асинхронного кода Ты н... текст свёрнут, показать
     
     
  • 9.87, Имя (?), 20:36, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Мне даже интересно, а что это за такой use case, когда у тебя работа с файлом тр... текст свёрнут, показать
     
     
  • 10.99, Аноним (77), 23:26, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Вы предлагаете на время работы с файлом вешать программу целиком Вот запустится... текст свёрнут, показать
     
  • 9.90, Имя (?), 20:48, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    И вообще, с чего ты это взял Я не говорю сейчас про запросы куда-то, с ними всё... текст свёрнут, показать
     
     
  • 10.94, Аноним (5), 21:17, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Затем, что у тебя есть замечательный gil, и он не даст выполняться python коду ... текст свёрнут, показать
     
  • 6.81, Аноним (77), 20:14, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >а если нет, то сам async становится лишней вознёй

    Питонопроблемы. А всё из-за того, что в питоне цветные функции. Вот условный ocaml или go позволяет иметь бесцветные функции, из-за чего это не превращается в проблему. Если не нравятся эти языки, возьмите какой-то другой.
    >и тем более странным выглядит желание некоторых фанатиков бездумно перетащить в async все библиотеки, думая видимо, что async "эта крута"

    Если питонистов не смущает скорость работы их кода, пускай хотя-бы сложности смущаются и переходят на нормальные языки.

     
     
  • 7.88, Имя (?), 20:43, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >А всё из-за того, что в питоне цветные функции. Вот условный ocaml или go позволяет иметь бесцветные функции, из-за чего это не превращается в проблему

    Допустим у тебя есть какой-то такой условный алгоритм: делаем что-то, ждём, потом делаем ещё что-то. И так надо много-много раз и параллельно. Как это решается в этих языках так, что якобы по твоим словам не имеет проблем и позволяет одни функции назвать цветными, а другие прозрачными?

     
     
  • 8.98, Аноним (77), 23:20, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    https habr com ru articles 466337 Всё просто В случае с Ocaml, Go или другог... большой текст свёрнут, показать
     
  • 5.70, Аноним (77), 18:23, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Ручная возня с запуском тредов ни разу не окупилась, они слишком неоптимальны в итоге.

    Тем временем, можно взять любой язык с зелёными потоками, хоть ocaml, хоть go, хоть любой другой язык на ваш вкус.

     
  • 2.6, Соль земли2 (?), 09:46, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    GIL им на хвост наступил.
     
  • 2.8, Аноним (8), 09:49, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Очень даже. 3.14 без gil будет побыстрее более ранних версий (за исключением 3.11 наверно) даже в однопоточке. А в многопоточке без gil уж и подавно. Вопрос только когда это все там устаканится, ибо неявных багов там должно быть еще море. 3.14 еще пилить и пилить. Изменение слишком уж кардинальное, впору было бы питон4 называть.
     
     
  • 3.20, th3m3 (ok), 11:15, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    И опять без обратной совместимости, прощайте все батарейки :)
     
     
  • 4.82, Аноним (77), 20:17, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Так это же хорошо. Питон - объективно плохой язык. Может быть, после очередного слома обратной совместимости, программисты начнут выбирать нормально спроектированные языки.
     

  • 1.4, Аноним (5), 09:31, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Производительность питона -- последнее что имеет значение на практике. Не удивлён производительности жита, небось, и сравнивали шланговые билды с гццшными?
     
     
  • 2.14, Аноним (14), 10:46, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Производительность программы не может не иметь значения. Это буквально время, оно самый дефицитный ресурс. То, что питонисты считают иначе, много о них говорит. Питон - это не язык создания программ, а клуб по интересам или секта.
     
     
  • 3.22, Аноним (5), 11:26, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Там, где нужна производительность, давно скомпилированный нативный код вызывается. И он освобождает gil. Ты так говоришь, будто на свете только pure-python реализации и всех заставляют ими пользоваться.

    Да и вон портаж уже переписали на плюсы, сильно эффективнее чёт не стало, зато сопровождение ммм прелесть. А ведь это всего лишь ПМ.

     
  • 3.24, Аноним (24), 11:46, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Где нужен перворманс там не питон выбирают. Так что на практике ему достаточно не быть таким дном как руби первой версии.
     
  • 3.40, Имя (?), 13:18, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Куда торопишься, снова суетиться? А жить когда?
     
  • 3.41, Аноним (41), 13:50, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Производительность программы не может не иметь значения

    Конечно может. В скриптах производительность не имеет никакого значения.

    > Это буквально время, оно самый дефицитный ресурс. То, что питонисты считают иначе, много о них говорит.

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

     
  • 3.51, User (??), 14:37, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Время _программиста_ дефицитный ресурс.
    А cpu time для огромного количества задач не то, чтобы "значения не имеет" - но где-то около.
     

  • 1.7, funny.falcon (?), 09:46, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    В 3.14 free threading уже не особо и замедляет. Явный прогресс!
     
  • 1.10, Аноним (10), 09:56, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Python лучше всех - доля рынка эта вещь упрямая!
     
     
  • 2.15, Аноним (14), 10:47, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Доля рынка языков для непрограммистов.
     
     
  • 3.29, Аноним (58), 12:08, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Для неОпрограммистов
     
  • 2.18, Shellpeck (?), 11:09, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Миллиарды мух не могут ошибаться...
    То, что не могло бы появиться без таких проектов лучше бы и не появлялись.
     
     
  • 3.42, Аноним (41), 13:54, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Миллиарды мух не могут ошибаться...

    Годы идут, а опеннетные эксперты все про "миллиарды мух"...

    > То, что не могло бы появиться без таких проектов лучше бы и не появлялись.

    Ну да, выкидываем все научные рассчеты и ML, чтобы не ломать картину мира опеннетного эксперта.

     
  • 3.47, Аноним (44), 14:24, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > все научные рассчеты

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

     
  • 2.53, Аноним (53), 15:07, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В бэкенде что-то не особо.
     
  • 2.74, Илья (??), 18:49, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Слава богу, на спад идёт. Питон плохо приживается
     

  • 1.12, Аноним (12), 10:22, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    А что кстати мешает питону официально перейти на PyPy?
     
     
  • 2.13, Аноним (5), 10:24, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > А что кстати мешает питону официально перейти на PyPy?

    То, что он хорош только в попугаеметрах.

     
     
  • 3.26, Аноним (26), 11:47, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А чем плох в реальных задачах?
     
     
  • 4.27, Аноним (5), 11:53, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > А чем плох в реальных задачах?

    Все минусы жита, плохая поддержка в существующем коде, потенциальные баги.

     
     
  • 5.28, Аноним (26), 12:06, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Поддержка и баги это следствие малой пользовательской базы и малого количества разработчиков. А вот минусы jit в студию.  
     
     
  • 6.31, Аноним (5), 12:20, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    code Номер объекта SCP-JIT Класс объекта Евклид Особые условия содержания SC... большой текст свёрнут, показать
     
  • 4.52, User (??), 14:40, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Жрет дофига памяти (Которая - в отличие от CPU - не то, чтобы "хорошо разделяемый" ресурс) и "не дает"\"дает незначительную" прибавку к производительности - и задачи у тебя сильно не все cpu bound, и не весь тот cpu на hot path обрабатывается pure python кодом...
     
  • 2.16, Аноним (16), 11:04, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ограниченная область применения
     
  • 2.30, Аноним (58), 12:14, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Сделано не ими.
    И PyPy, решая ту же проблему, не нуждается во всяких LLVM.
     
  • 2.69, Аноним (77), 18:19, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Потому, что между cpython и pypy есть отличия.
     
     
  • 3.75, Аноним (58), 18:50, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Если бы команды объединили усилмя, различия бы устранили.
     
     
  • 4.83, Аноним (77), 20:19, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Эти различия не на пустом месте образовались. И исправить их можно только выпустив условный python 4, обратно несовместимый с текущим кодом.
     

  • 1.19, vitalif (ok), 11:09, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну то есть ничего особо не поменялось.)
     
  • 1.32, Аноним (58), 12:26, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Я на графиках на другое обратил внимание. При прочих равных, производительность разных Питонов на MacOS несколько выше, чем на Linux. Darwin же основан на микроядре Mach? Значит, расхожее мнение о худшей производительности микроядерных ОС - миф?
    Лично мне, это добавило надежд в отношении производительности Hurd.
     
     
  • 2.36, Аноним (36), 12:54, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Странный вывод.
    Автор тестил на том что было, а было у него 13th Gen Intel(R) Core(TM) i5-1340P (он об этом написал в комментах своего блога) и Apple M2. Отсюда и разница.
     
  • 2.63, Аноним (62), 17:33, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Дарвин, конечно, сделан (когда-то давно) на ядре Mach, да только на том ядре крутится один-единственный процесс "система", внутри которой обычное юникс-ядро, то есть микроядерный ipc не используется.

    Но в принципе ты прав, Hurd на современном железе совсем не медленный.

     

  • 1.35, User (??), 12:50, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Традиционное фибоначчи-в-вакууме, ага.
    Нет бы - ну не знаю - какую fastapi\django'у по контейнерам с разными версиями интерпретатора подсобрать-да-нагрузить...
     
     
  • 2.37, Аноним (36), 12:59, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Чтобы что? Чтобы ловить сайд эффекты производительности docker/podman, fastapi, django и какого-нибудь gunicorn? А потом делать неверные выводы?
    В том то и суть, чтобы все это исключить.
     
     
  • 3.39, User (??), 13:12, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Чтобы что? Чтобы ловить сайд эффекты производительности docker/podman, fastapi, django
    > и какого-нибудь gunicorn? А потом делать неверные выводы?
    > В том то и суть, чтобы все это исключить.

    Ну меня очень радуют "верные выводы" сделанные в тестах того же pypy - но очень огорчает несовпадение этих выводов с реальностью примерно во всех наблюдаемых вариантах практического использования.

     

  • 1.38, Аноним (38), 13:09, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Стандарт и жЫд не сильно отличаются, а кто-то мне втирал за скорость :)
     
  • 1.43, Аноним (-), 14:06, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > автор нескольких книг по Python-фреймворкам SQLAlchemy и Flask,
    > опубликовал результаты тестирования

    ...очередного удвоения надоев на тему того как именно питон не тормозит :)

     
  • 1.46, Витюшка (?), 14:24, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Больше всего мне здесь нравится график Rust. Которого почти не видно.
     
     
  • 2.49, Аноним (44), 14:30, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Rust обогнали CPython 3.14 в первом тесте в ... 69.82 раз, а во втором тесте в ... 36.15 раз

    Это удивительно - компилируемая программа оказалась быстрее интерпретируемого скрипта.

     
     
  • 3.66, Ангним (?), 18:04, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Уровень опеннетсперктизы.
    Питон тоже компилируется.
     
     
  • 4.68, Аноним (5), 18:14, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Уровень опеннетсперктизы.
    > Питон тоже компилируется.

    Так речь о скрипте для cpython. Когда питон компилируется (тот же cython), там производительность 1 в 1 с си.

     
     
  • 5.85, User (??), 20:29, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ээээ... ну вот cython не пробовал - а с nuitka'ой прироста по скорости считай что и нет - так, удобства поставки для развлечение.
     
     
  • 6.96, Аноним (5), 21:28, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Ээээ... ну вот cython не пробовал - а с nuitka'ой прироста по
    > скорости считай что и нет - так, удобства поставки для развлечение.

    Я не совсем понял юмора nuitka. Собирает все блобы в кучу, ок, но код в итоге выполняется будто питон у меня без всяких оптимизаций и pgo собран. Т.е. реальный интерпретатор почему-то почти на 30% быстрее интерпретирует чем этот оттраслированный блоб исполняется. Не сомневаюсь, в попугаеметрах картина может быть иной.

     
  • 4.84, User (??), 20:27, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    "Но есть нюанс!"
     

  • 1.48, Аноним (44), 14:27, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > (глубокая рекурсия)

    обычно заканчивается переполнением стека.

     
     
  • 2.72, Аноним (77), 18:27, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В нормальных языках хвостовая рекурсия оптимизируется начиная с первого релизного компилятора/интерпретатора.
     

  • 1.55, Аноним (53), 15:16, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Зачем-то питон форсят в веб, он там не нужон, пых лучше же намного. А всякое ML и прочее - ну это вообще неинтересная ниша.
     
     
  • 2.64, Аноним (62), 17:35, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Истину глаголишь. Самый лучший веб это php или perl.
     
     
  • 3.65, Аноним (5), 17:39, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Истину глаголишь. Самый лучший веб это php или perl.

    Нет, это битрикс.

     
  • 3.67, Аноним (67), 18:10, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Хуже Perl'а только Brainfuck. Это write-only язык. Хорошо что он помер.
     

  • 1.57, someanon (?), 16:30, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    То, что PyPy быстрее Node.js, приятно удивило. Хотя, казалось бы, размеры пользовательской базы и количество разработчиков несравнимы.
     
     
  • 2.59, Аноним (53), 16:43, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну он раньше появился, аж в 2002 году. И сишка в rpython быстрее плюсов в нодовском V8.
     

  • 1.61, Аноним (61), 17:23, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    micropython всё равно вне конкуренции. Хотя, казалось бы, у него ресурсов меньше на оптимизацию.
     
  • 1.76, Аноним (77), 19:03, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Удивительно, насколько отвратительные языки набрали популярность То есть соврем... большой текст свёрнут, показать
     
     
  • 2.79, Аноним (5), 19:31, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Пока что питон в десятки раз меньше го памяти потребляет в рантайме на ровно тех же задачах. К слову о "компилируемых" языках. И эффективно шарит её. Смотрю на тебя раст.
     
     
  • 3.93, Аноним (77), 21:16, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Наглая ложь Простейший код import sys for i in 1, 2, 4, 8 print i, sys gets... большой текст свёрнут, показать
     
     
  • 4.95, Аноним (5), 21:22, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну ты нашёл, что считать. Давай ещё ресурсоёмкость массива и переменных в cython для коллекции посчитай. Я прекрасно вижу как сотня интерпретаторов питона не создавала мне головной боли, и сотня статических блобов на го создаёт, когда вся задача скачать следующие чанки по ссылке.
     
     
  • 5.100, Аноним (77), 23:34, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Чините руки. Вам выше наглядно показали почему вы не правы. Либо у вас различается реализация, либо вы неправильно измеряете.
     
     
  • 6.101, Аноним (5), 23:42, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну чепуха же. В первом случае используются типичные батарейки и стандартная библиотека, во втором случае используются типичные батарейки и стандартная библиотека. Результат: ресурсоёмкость разнится на порядки и все недостатки на лицо.
     
     
  • 7.104, Аноним (77), 01:11, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Телепаты в отпуске.
    >когда вся задача скачать следующие чанки по ссылке.

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

    Попробуйте условый парсер комибнатор на питоне и голанге сравнить. У вас как раз и образуются множество мелких объектов. Или любой другой код, который данные обрабатывает.

     
  • 4.103, Аноним (103), 01:04, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Да ты не иначе как гений сравнивать нативные числовые типы CPU с безлимитными ч... большой текст свёрнут, показать
     
     
  • 5.105, Аноним (77), 01:39, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    А я просил безлимитные числа Нет Это гениальное решение - вначале из какой-ниб... большой текст свёрнут, показать
     
     
  • 6.108, Аноним (103), 02:07, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ты начал с ними сравнивать Случай, когда В СКРИПТОВОМ языке нужно экономить на ... большой текст свёрнут, показать
     
     
  • 7.112, Аноним (77), 04:00, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну а как мне получить числа с фиксированной длиной в питоне Никак Через сложны... большой текст свёрнут, показать
     
  • 7.114, Аноним (77), 04:48, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >А вот делать математические расчеты, не падая к верху лапками при достижении размера int на текущем CPU - это при расчетах нужно всегда.

    Кстати говоря, о математических расчётах.

    0.1+0.2-0.1==0.2
    False

    sys.getsizeof(0.2)
    24

    Что это за за язык такой, что целые числа он хранит в безразмером формате, а дробные - нет? На что он тратит целых 24 байта, если после простейшего расчёта он уже теряет точность? Только не надо рассказывать про плавающую запятую, это ваша идея, что питон нужен для математических расчётов. Или питон только для целочисленных расчётов, а если нужны как миниму дроби, то их нужно изобретать самому?

     
  • 7.117, Аноним (77), 05:04, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Персонаж опять на полном серьезе сравнивает компилируемый и скриптовый языки.

    Кстати говоря. Даже в динамически типизированном языке имеет смысл хранить метаданные не в каждом экземпляре типа, а разделять между экземплярами, как минимум если в языке есть хотя бы какое-то подобие конструктора, наследования или мета таблиц. Так что оправдание интерпретируемостью тут тоже не прокатывает.

     
  • 2.86, Аноним (103), 20:36, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну и ну Интерпретируемый скриптовый язык оказался медленее компилируемого Да б... большой текст свёрнут, показать
     
     
  • 3.102, Аноним (77), 00:48, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Вопрос не только в том, что он медленее, вопрос в том, насколько А что вы хотит... большой текст свёрнут, показать
     
     
  • 4.106, Аноним (103), 01:46, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ты на полном серьезе искренне недоумеваешь, что интерпретируемый язык в N раз ме... большой текст свёрнут, показать
     
     
  • 5.107, Аноним (77), 02:06, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Нет, я недоумеваю, почему питон до сих пор не вытеснен условным лиспом, js-ом, l... большой текст свёрнут, показать
     
     
  • 6.110, Аноним (103), 02:26, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Господи, да что ж ты такой тугой При чем твой SML вообще Ты заявил, что Лисп п... большой текст свёрнут, показать
     
     
  • 7.113, Аноним (77), 04:11, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Вы пропустили одно важное слово типобезопасный Ни алгол, ти фортран типобезоп... большой текст свёрнут, показать
     
  • 2.91, Аноним (91), 21:05, 10/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Удивительно, насколько отвратительные языки набрали популярность

    Согласен.

    >Интересно, а насколько же тормозными были первые версии гвидобейсика?

    Ну вот могу вспомнить опыт программирования на Python в 2000-х: мне надо было моделировать обработку цифрового сигнала с немедленной визуализацией нескольких очень длинных рядов одновременно, также надо было визуализировать поток данных от устройства в live-режиме.
    Сначала я делал визуализацию в OpenOffice Calc, но он так тормозил, что отрисовывал картинку несколько секунд. Потом всё сделал на Python (с использованием numpy), но загрузка процессора 100% и потери данных и невозможные дёргания (lag'и).
    Потом всё переписал на C++ и работало быстро, процессор не нагружался.

     
     
  • 3.109, Бес (??), 02:09, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Классика же.Сам Гвидо советует примерно так и делать: переписывать проблемные места с Python на C.
     

  • 1.89, Аноним (89), 20:46, 10/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Довольно жалко всё это. Больше всего меня расстраивает что они катастрофически усложняют и раздувают код ускорениями для частных случаев (https://docs.python.org/3.11/whatsnew/3.11.html#pep-659-specializing-adaptive- например, полный кошмар), а по итогу получают 1% буст на синтетических бенчмарках, а на деле всё ещё медленнее даже перла который 20 лет уже не развивается. Питон настолько медленный что заметно замедляет даже workload'ы упирающиеся в базу или сеть - по сути я даже не знаю для чего его можно использовать. Даже наколеночный сайт на фласке - выставишь в сеть и его завалят AI боты.
     
     
  • 2.115, Аноним (67), 05:02, 11/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Питон хорош для прототипирования, скриптов или в качестве клея для запуска чего-то, написанного на других языках. Если вы используете Питон в критичных частях - вы что-то делаете не так. Он прекрасен простотой и скоростью написания, и абсолютно отвратителен в плане производительности, безопасности и даже стабильности. Не надо брать в руки молоток и смотреть на всё вокруг как на гвозди.
     

  • 1.111, Golangdev (?), 03:19, 11/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Pypy
    > CPython

    Госпаде, нафига их 2 ? Какой из них - правильный ?)

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

     
  • 1.116, enhance your python (-), 05:02, 11/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Есть такая работа - питон ускорять. Можно, конечно, пописать под SBCL с компиляцией в натив двадцать лет назад как, а попробуй-ка ускорить питон. И асинками весь код обмажь. Вот то-то же.
     

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



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

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