Когда пишете тут что-то в комментарии - держите себя в руках. Особенно относится к тем кто по какой-то причине не смог ужиться с Растом.
У него есть проблемы, и мы знаем об этом.
Всех люблю.
https://doesjitgobrrr.com/
Неофициальный дэшборд по JIT performance :)
Если кривая идет вверх то это значит "медленнее". Если вниз - значит стало "быстрее".
Пока только на aarch64 архитектуре JIT быстрее чем не-JIT
Кто-то говорит что киллер-фича 3.15 это lazy imports. Nah, not even close.
Реальная киллер-фича 3.15 это встроенный статистический профилировщик Tachyon.
Корокто: вы можете запустить его на проде, и ваше приложение (которое вы профилируете) никак не пострадает по перфомансу.
> Есть wall-clock/cpu режимы
> async-aware (Господи, наконец-то). При чем умеет отображать как те корутины что прямо сейчас жрут CPU, так и те которые ждут IO/лока, и так далее
> Умеет в native stack (удивительно)
> GC-aware
> GIL-aware
> Умеет сэмплировать все треды, а не только текущий
PyPy... умирает?
Для тех кто не знает PyPy является одной из реализаций Python, прямой аналог CPython, при чем с крутым джитом.
Один из мейнтейнеров PyPy предложил numpy дропнуть поддержку для PyPy со словами "PyPy is no longer under active development": https://github.com/numpy/numpy/issues/30416
Печальная новость для всего Python сообщества.
За ссылку спасибо @serjflint
Тут на днях начали хайпиться проекты от одного автора, например turboapi который заявляет что он быстрее чем fastapi в 22 раза.
Уж очень интересно стало как этого достигли.
Коротко: все бенчи полный AI-slop.
Анализ: https://eclips4.github.io/slopsource.html
https://discuss.python.org/t/2026-python-core-dev-sprint-at-openai/106928/13
Полу-драмма происходит на наших глазах.
Каждый год осенью происходит Core sprint для участников команды CPython. В этом году его отважились хостить OpenAI. 57 участников подали заявку, а мест то оказалось всего 40. OpenAI не могут пожертвовать денег на дополнительное помещение на недостающие 17 лиц.
Поражает.
https://peps.python.org/pep-0828/
Был принят.
Теперь можно будет делать так
async def agenerator():
yield 1
yield 2
return 3
async def main():
result = yield from agenerator()
assert result == 3
Matti Picus изменил формулировку, теперь написано что разработка замедлилась, но не заброшена.
🎉
Более того, появился PR в numpy c поддержкой 3.12: https://github.com/numpy/numpy/pull/32332