Warning: Undefined array key 0 in /var/www/tgoop/function.php on line 65

Warning: Trying to access array offset on value of type null in /var/www/tgoop/function.php on line 65
- Telegram Web
Telegram Web
Сегодня даю доклад в 19:00 «Python: C, byte-code, GIL» на MoscowPython

Agenda:
- Byte-code
- Что происходит, когда вы запускаете CPython-скрипт
- GIL

Сегодня Будут ещё 2 доклада:
— «Поиск аномалий в данных, алгоритмы KNN и LOF»
— и про котов
Смотреть
онлайн
🔥4🐳1
PY.UP
Сегодня даю доклад в 19:00 «Python: C, byte-code, GIL» на MoscowPython Agenda: - Byte-code - Что происходит, когда вы запускаете CPython-скрипт - GIL Сегодня Будут ещё 2 доклада: — «Поиск аномалий в данных, алгоритмы KNN и LOF» — и про котов Смотреть онлайн
Презентация Python: C, byte-code, GIL

Получилось более сжато немного обрезано, чем я ожидал
Но, надеюсь, зашло с инфо-графикой. Есть определённые сложности рассказывать о внутрянке CPython, т.к. возникает вопрос «а зачем эти знания и как их применять?».

Хороший вопрос.
Ответ: «Да, просто интересно. Интересно понимать всю картину, в которой живёшь и делаешь проекты. После может и влиять на развитие CPython. Весьма популярный язык. Большой вклад.»

Были хорошие вопросы
Нужны ещё каверзные от вас :)
3🐳1
Возможно, в скором будещем
Ownership conception in Python
Статья от 13 June 2025

Влияние RUST'a?
🐳3👍1
Эксперементировали ли вы с free threading CPython?
Anonymous Poll
10%
Я не на PyCon
79%
Нет
9%
Запустил пару раз (без benchmarks)
2%
Да, активно
🐳1
noGIL: погружение в будущее CPython 3.14
— презентация с PyCon 2025

Основные проблемы с GIL и их решения (слайды 7-21, 45-57):

GIL как "бутылочное горлышко":
GIL ограничивает использование многоядерных процессоров для CPU-bound задач, замедляет предобработку данных для GPU, масштабирование ML-алгоритмов (особенно Reinforcement Learning), и усложняет отладку и логирование при использовании процессов вместо потоков. Обход GIL через процессы (multiprocessing) приводит к дополнительным накладным расходам на межпроцессное взаимодействие (IPC) и сериализацию данных (pickle), что дорого (слайды 7-13).

Удаление GIL:
Несовместимость с существующими расширениями и проблемы с потокобезопасностью внутренних структур памяти CPython (race condition) затрудняют полное удаление GIL (слайды 15-16).

Free-threading (без GIL):
Для обеспечения потокобезопасности без GIL предлагаются механизмы, такие как атомарные операции и критические секции. Атомарные операции гарантируют завершение, а критические секции (Py_BEGIN_CRITICAL_SECTION и Py_END_CRITICAL_SECTION) обеспечивают потокобезопасность без явной блокировки, но могут снижать производительность, так как другие потоки вынуждены ждать (слайды 47-57).

Оптимизации управления памятью:
Введение Biased Reference Counting (BRC) и Deferred Reference Counting (DRC) для ускорения подсчета ссылок без GIL. BRC позволяет потоку-владельцу изменять счетчик ссылок неатомарно, а другие потоки делают это атомарно. DRC — отложенные обновления счетчиков ссылок. Это позволяет улучшить производительность за счет уменьшения дорогостоящих атомарных операций (слайды 59-63).

Новый сборщик мусора (GC):
В новой версии CPython без GIL GC будет использовать механизм "Stop-the-world" для вычисления реального количества ссылок на объекты, учитывая отложенные изменения, и не будет поколений. Также планируется замена pymalloc на mimalloc для потокобезопасности и лучшей производительности (слайды 64-70).

Поднимай: PY.UP
🔥4🐳2
О прошедшем PyCon написали обзор на Tproger
В нём можно увидеть беглый взгляд по некоторым докладам. Весьма информативно для общего представления и фиксации куда мы движемся.

В обзоре описание и моего доклада: есть неточности. Тем не менее, советую заглянуть, если вы хотите увидеть куда «оно» движется. Для полной картины смотрите исходники, начните с моей презы и видео, которое появится здесь.

Благодарю оргов за PyCon, было здорово

@PY.UP
🔥2🐳2
В попытках сделать промо для своего курса на Физтехе по CPython Internals
Попробовал несколько подходов
Один из них более креативный

Нужны свежие идеи сцен и реплик в комментариях

Кстати, в CPython скорее скоро завезут green threads
В чём их отличие от free-threading реализации распишу позже

@PY.UP
👍5🐳1
Ну-ка, ну-ка / Python: The Documentary Film
— интервью с ключевыми людьми экосистемы
— поворотные моменты в развитии и сложности сообщества
— как формировались ценности, роль PSF и почему культура Python важнее «фич»
— а здесь Q&A по фильму на EuroPython

@PY.UP
🔥4🐳2
Всем привет
Виде с моим выступлением на PyCon2025 опубликовано
noGIL: погружение в будущее CPython3.14


Updates:

1. Пригласили на сл.конференции c докладом: CPython Under Load: NoGIL, GreenThreads, AsyncIO vs. Other Langs: deep-dive in core and benchmarks
— 25.09 PyCon Гана (Африка) — думаю отказаться, тк организаторы слишком поздно сообщили об этом мне
— 17.10 PyCon Финляндии — посольство не выдаёт визу, ищу обходные пути
— 06.12 PyCon Индонезия — еду

3. Начал сочинять музыку о CPython:
— уже есть весьма и весьма хорошие фидбеки на черновик, который послушал узкий кругу разных людей
— планирую выпустить альбом к end-2025 / mid-2026
— совершенно не шарю как делается выпуск альбома, если кто шарит, то не помешали ли бы советы или контакты таких людей

@PY.UP
🔥6🐳1
Ребятки, всем привет
Это было топово — конфа в НН. Всем рекомендую ездить по конфам и оставаться на пре-/пост-пати дискуссии, столько нового узнаёте: сильных людей и глубокие мысли — стоящие разговоры!

Отдельно хочу поблагодарить
Васю Рябова, Мишу Ефимова, Серёжу Мирянова
— сильные доклады, глубокие дискуссии, титаны 🔥
Оч.рад был видеть среди спикеров Давида Джалаева!

Отдельные респект Никите Соболеву и оргам — высокий уровень конфы и атмосферы!

Здесь преза.
В презе есть видео, которые отсутствовали в pdf на выступлении — добавляет понимания.

В этот Пн вечером буду выступать на MoscowPython: Дотянуться до кремния. HighLoad Python: SIMD, GPU
Записи выступлений по докладу:
Нижний Новгород
MoscowPython

Если есть вопросы по теме доклада, то пишите их в комменты или приходите задать в Пн.

Будем понимать, как сыпучий песок превращается в исполнение
print(1+1) — и как вычисляется

UPD: короткая визуализация производства

@PY.UP
🔥12🐳1
Ниже пост от организаторов конференции с моими правками

Записи с нашей бесплатной конфы в Нижнем подъехали!


Во-первых, хочу еще раз повторить слова благодарности всем: организаторам и волонтерам, спикерам, участникам. Отдельно хочу отметить тех, кто поддержал конфу анонсами. Приехало и пришло очень много людей: 1100+ регистраций, почти 600 человек на площадке. Вы все крутые!

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

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

Конкуренция за звание "лучшего" доклада – высочаящая. Выбирать будем не по каким-то там голосованиям, которые ни на что не влияют, а по просмотрам на ютюбе. Поддержите спикеров и меня просмотрами :)

Выкладываю записи сразу, а не через полгода.

Доклады в порядке выступлений:
- Чего вы не знали о строках в Python? / Василий Рябов
- ИИ-агенты в каждый дом / Алексей Порядин
- Генератор байткода и байткод генератора / Михаил Ефимов
- Внутреннее устройство сборки мусора в CPython 3.14+ / Сергей Мирянов
- Проектирование — это когда чувствуешь, а не какие-то там циферки / Николай Хитров
- Дотянуться до кремния. HighLoad Python: SIMD, GPU / Пётр Андреев
- Continuous profiling / Давид Джалаев
- Vim — это метаредактирование / Илья Ильиных

При поддержке:
- https://it52.info
- https://itgorky.ru
- Находки в опенсорсе

@PY.UP
🔥5🐳1
Всем привет
Кому не сложно, можете забустить канал?
https://www.tgoop.com/boost/py_up

Я опубликую сторис с наброском музыки о CPython
Нужен n-й уровень канала для публикации наброска
👍7🐳1
Ребятки, спасибо за буст поддержку!
Поднялись весьма высоко :)

В сторис музыкальный отрывок — черновик о CPython.

Финальную версию планирую делать более дерзкой в стиле funk + hip-hop.
А сейчас тёплый-душевный groove для Пятницы — самое то 🌞🍀👀
Сопровождаю атмосферным видео рядом.
Please open Telegram to view this post
VIEW IN TELEGRAM
👏3🐳1
Всех с праздником
релиз 3.14.0
Чего нового смотреть здесь
🐳9🎉3🔥1🎄1
#Q:CPython-warm-up 'где хранится значение инта ?'

И что думаете про вывод :)
Ночная разминка перед сегодняшним утром

Ваши соображения в комментарии
Заходи -> PY.UP
🔥1🐳1😨1
2025/10/15 22:57:11
Back to Top
HTML Embed Code: