⚙️ Почему код тормозит, даже если алгоритм хороший?
Причина может скрываться в промахах кэша, предсказании ветвлений, расположении данных или конкуренции потоков за память.
CPU Performance Engineering собирает материалы, которые помогают разобраться в этих ограничениях. Путь идёт от выполнения одной инструкции до запуска ИИ-моделей на CPU.
Внутри:
• Микроархитектура процессоров x86 и Arm.
• Кэши, память, NUMA и false sharing.
• Профилирование, perf и flame graphs.
• SIMD, векторизация и оптимизации компилятора.
• Многопоточность и задержки под нагрузкой.
• Инференс моделей и квантизация.
В 14 разделах есть воспроизводимые бенчмарки на C: исходники, команды сборки, результаты и разбор. Можно проверить поведение на своём железе.
Подборка опирается на первоисточники: статьи, документацию и измерения. Есть и MCP-сервер для подключения материалов к ИИ-ассистенту.
https://github.com/usamahz/cpu-performance-engineering
@Python_Community_ru
Причина может скрываться в промахах кэша, предсказании ветвлений, расположении данных или конкуренции потоков за память.
CPU Performance Engineering собирает материалы, которые помогают разобраться в этих ограничениях. Путь идёт от выполнения одной инструкции до запуска ИИ-моделей на CPU.
Внутри:
• Микроархитектура процессоров x86 и Arm.
• Кэши, память, NUMA и false sharing.
• Профилирование, perf и flame graphs.
• SIMD, векторизация и оптимизации компилятора.
• Многопоточность и задержки под нагрузкой.
• Инференс моделей и квантизация.
В 14 разделах есть воспроизводимые бенчмарки на C: исходники, команды сборки, результаты и разбор. Можно проверить поведение на своём железе.
Подборка опирается на первоисточники: статьи, документацию и измерения. Есть и MCP-сервер для подключения материалов к ИИ-ассистенту.
https://github.com/usamahz/cpu-performance-engineering
@Python_Community_ru
PyTorch экономит память при обучении LLM и лучше использует GPU на Mac
OpenTeams рассказала о своём вкладе в PyTorch за 2026 год. Несколько изменений, которые пригодятся на практике:
- Меньше разрывов в `torch.compile`. Dynamo перестраивают по образцу внутренних механизмов CPython, чтобы он точнее обрабатывал обычный Python-код. Это сокращает ситуации, когда компиляция прерывается и выполнение возвращается в Python.
- До 4 раз меньше пиковой памяти на расчёте loss. В PyTorch 2.13 появился LinearCrossEntropyLoss: он обрабатывает данные частями, не создавая целиком огромный тензор оценок по всему словарю. Особенно полезно при обучении языковых моделей.
- Больше операций на GPU Apple Silicon. MPS получил нативные реализации дополнительных операций. По замерам команды, native_group_norm на M4 ускорился в среднем более чем в 10 раз.
- Экспериментальная компиляция комплексных вычислений. В PyTorch 2.14 комплексные операции можно разложить на операции с вещественными тензорами и передать существующим механизмам оптимизации.
Для PyTorch 2.15 также подготовлены поддержка Python 3.15 в `torch.compile` и API отдельных MPS-потоков. Они позволят отправлять работу в несколько очередей GPU на Mac.
https://openteams.com/engineering-blog/pytorch-year-in-review-2026/
@Python_Community_ru
OpenTeams рассказала о своём вкладе в PyTorch за 2026 год. Несколько изменений, которые пригодятся на практике:
- Меньше разрывов в `torch.compile`. Dynamo перестраивают по образцу внутренних механизмов CPython, чтобы он точнее обрабатывал обычный Python-код. Это сокращает ситуации, когда компиляция прерывается и выполнение возвращается в Python.
- До 4 раз меньше пиковой памяти на расчёте loss. В PyTorch 2.13 появился LinearCrossEntropyLoss: он обрабатывает данные частями, не создавая целиком огромный тензор оценок по всему словарю. Особенно полезно при обучении языковых моделей.
- Больше операций на GPU Apple Silicon. MPS получил нативные реализации дополнительных операций. По замерам команды, native_group_norm на M4 ускорился в среднем более чем в 10 раз.
- Экспериментальная компиляция комплексных вычислений. В PyTorch 2.14 комплексные операции можно разложить на операции с вещественными тензорами и передать существующим механизмам оптимизации.
Для PyTorch 2.15 также подготовлены поддержка Python 3.15 в `torch.compile` и API отдельных MPS-потоков. Они позволят отправлять работу в несколько очередей GPU на Mac.
https://openteams.com/engineering-blog/pytorch-year-in-review-2026/
@Python_Community_ru
OpenTeams
PyTorch Year in Review: OpenTeams' Contributions in 2026
See what our PyTorch year in review covers: a CPython-faithful Dynamo, Python 3.15 on day one, fused linear cross-entropy, MPS ops and a new build backend.
Нововведения Python 3.15 превратили в игру: чтобы пройти дальше, придётся писать код.
whatsnewt - терминальный квест от Барри Уорсо. Вы просыпаетесь внутри интерпретатора и проходите 15 комнат с 18 головоломками, посвящёнными возможностям Python 3.15.
По пути встретятся ленивые импорты, frozendict, sentinel, распаковка в comprehensions, изменения типизации и другие нововведения.
Ответы запускаются в настоящем Python 3.15. Для заданий на типизацию используется pyrefly. Проверяется не только результат, но и способ решения: обойти новую конструкцию привычным циклом не всегда получится.
Внутри есть карта, инвентарь, подсказки за очки, ссылки на документацию и автосохранение.
Запуск через uv:
uvx --python 3.15 whatsnewt
Любопытная деталь: по словам автора, значительная часть игры написана совместно с Claude.
Хороший повод изучить релиз на практике: каждая новая возможность становится задачей, которую нужно решить самому.
https://pypi.org/project/whatsnewt/
@Python_Community_ru
whatsnewt - терминальный квест от Барри Уорсо. Вы просыпаетесь внутри интерпретатора и проходите 15 комнат с 18 головоломками, посвящёнными возможностям Python 3.15.
По пути встретятся ленивые импорты, frozendict, sentinel, распаковка в comprehensions, изменения типизации и другие нововведения.
Ответы запускаются в настоящем Python 3.15. Для заданий на типизацию используется pyrefly. Проверяется не только результат, но и способ решения: обойти новую конструкцию привычным циклом не всегда получится.
Внутри есть карта, инвентарь, подсказки за очки, ссылки на документацию и автосохранение.
Запуск через uv:
uvx --python 3.15 whatsnewt
Любопытная деталь: по словам автора, значительная часть игры написана совместно с Claude.
Хороший повод изучить релиз на практике: каждая новая возможность становится задачей, которую нужно решить самому.
https://pypi.org/project/whatsnewt/
@Python_Community_ru
🔥1
Генерировать видео и менять происходящее текстовыми командами прямо на ходу - одна из возможностей LongLive от NVIDIA.
Сейчас репозиторий объединяет четыре исследовательских проекта:
- LongLive 1.0 - интерактивная генерация длинных видео: пользователь меняет промпты по мере появления кадров.
- LongLive 2.0 — инфраструктура обучения и генерации с квантизацией NVFP4 и распределением вычислений между GPU.
- LongLive-Plug — перенос возможностей, полученных при дистилляции базовой модели, на совместимые производные модели без повторного обучения.
- Long-WAM — модели для робототехники, которые используют визуальную историю при выборе действий. Есть обучение, тестирование и демонстрации на реальных роботах.
Для каждого направления опубликованы код, документация и веса моделей. Можно скачать только нужный проект.
Интересно, как здесь сходятся генерация видео и робототехника: модели должны учитывать предыдущие кадры и продолжать последовательность — визуальную сцену или действия робота.
Репозиторий для тех, кто исследует длинные видеопоследовательности, интерактивные миры и обучение роботов.
https://github.com/NVlabs/LongLive
@Python_Community_ru
Сейчас репозиторий объединяет четыре исследовательских проекта:
- LongLive 1.0 - интерактивная генерация длинных видео: пользователь меняет промпты по мере появления кадров.
- LongLive 2.0 — инфраструктура обучения и генерации с квантизацией NVFP4 и распределением вычислений между GPU.
- LongLive-Plug — перенос возможностей, полученных при дистилляции базовой модели, на совместимые производные модели без повторного обучения.
- Long-WAM — модели для робототехники, которые используют визуальную историю при выборе действий. Есть обучение, тестирование и демонстрации на реальных роботах.
Для каждого направления опубликованы код, документация и веса моделей. Можно скачать только нужный проект.
Интересно, как здесь сходятся генерация видео и робототехника: модели должны учитывать предыдущие кадры и продолжать последовательность — визуальную сцену или действия робота.
Репозиторий для тех, кто исследует длинные видеопоследовательности, интерактивные миры и обучение роботов.
https://github.com/NVlabs/LongLive
@Python_Community_ru
Вопросы на собеседовании Python Senior: 100 вопросов с ответами (2026)
Вопросы на собеседовании Python Senior с ответами: 100 вопросов и примеры кода — CPython, GIL, asyncio, метаклассы, типизация, производительность, Python 3.14.
https://uproger.com/voprosy-na-sobesedovanii-python-senior/
@Python_Community_ru
Вопросы на собеседовании Python Senior с ответами: 100 вопросов и примеры кода — CPython, GIL, asyncio, метаклассы, типизация, производительность, Python 3.14.
https://uproger.com/voprosy-na-sobesedovanii-python-senior/
@Python_Community_ru
🐍 Когда стандартного `sqlite3` в Python становится мало, есть APSW.
Another Python SQLite Wrapper даёт доступ к полному C API SQLite из Python.
Что можно использовать:
• Виртуальные таблицы для подключения собственных источников данных.
• VFS для управления тем, как SQLite работает с файлами.
• Session API для записи и применения наборов изменений.
• Полнотекстовый поиск, JSON и передачу массивов через CArray.
• Синхронный код и поддержку асинхронных фреймворков.
Для обычных SQL-запросов встроенного sqlite3 часто достаточно. APSW полезен, когда нужны расширенные возможности SQLite и более глубокий контроль над движком.
Установка: pip install apsw
https://github.com/rogerbinns/apsw
@Python_Community_ru
Another Python SQLite Wrapper даёт доступ к полному C API SQLite из Python.
Что можно использовать:
• Виртуальные таблицы для подключения собственных источников данных.
• VFS для управления тем, как SQLite работает с файлами.
• Session API для записи и применения наборов изменений.
• Полнотекстовый поиск, JSON и передачу массивов через CArray.
• Синхронный код и поддержку асинхронных фреймворков.
Для обычных SQL-запросов встроенного sqlite3 часто достаточно. APSW полезен, когда нужны расширенные возможности SQLite и более глубокий контроль над движком.
Установка: pip install apsw
https://github.com/rogerbinns/apsw
@Python_Community_ru
This media is not supported in your browser
VIEW IN TELEGRAM
Python 3.15: что выведет lazy import? Задача с подвохом
Новая фича Python 3.15: lazy import (PEP 810). Импорт несуществующего модуля не падает при старте, а ошибка всплывает позже. Разбираем задачу с подвохом по шагам и показываем ограничения lazy. Сохрани, чтобы не ошибиться.
https://youtube.com/shorts/LorWGMBuokk?feature=share
@Python_Community_ru
Новая фича Python 3.15: lazy import (PEP 810). Импорт несуществующего модуля не падает при старте, а ошибка всплывает позже. Разбираем задачу с подвохом по шагам и показываем ограничения lazy. Сохрани, чтобы не ошибиться.
https://youtube.com/shorts/LorWGMBuokk?feature=share
@Python_Community_ru
OpenBMB выпустила две OCR-модели: одна распознаёт документы, другая проверяет, насколько результату можно доверять.
MiniCPM-OCR 1.0 – модель на 1,3 млрд параметров для китайских и английских документов. Обрабатывает текст, таблицы, формулы, графики и печати, преобразуя PDF и изображения в Markdown или JSON.
По данным команды, она набирает 93,68 на Real5-OmniDocBench и 54,7 на OCRBench v2. Поддерживает сложные снимки: перекошенные и изогнутые страницы, фотографии и повторно снятые документы.
MiniCPM-OCR Jev – проверяющая модель на 2 млрд параметров. Получает изображение и результат OCR, затем выставляет оценку качества от 0 до 1 для отдельных областей. Помогает находить текст, формулы и таблицы, требующие ручной проверки.
Jev работает и с другими распознавателями. На JevOCRBench её AUROC составляет 93,6 против 93,8 у Qwen3.5-397B-A17B. Это показатель различения правильных и ошибочных результатов, а не процент безошибочно распознанных страниц.
С ускорением DSpark авторы сообщают о пропускной способности в 1,49 раза выше PaddleOCR-VL-1.6 и в 3,62 раза выше MinerU2.5 Pro в своих тестах.
Доступны vLLM, SGLang, llama.cpp и Ollama, квантованные версии, SDK и инструкции по дообучению.
https://github.com/OpenBMB/MiniCPM-OCR
@Python_Community_ru
MiniCPM-OCR 1.0 – модель на 1,3 млрд параметров для китайских и английских документов. Обрабатывает текст, таблицы, формулы, графики и печати, преобразуя PDF и изображения в Markdown или JSON.
По данным команды, она набирает 93,68 на Real5-OmniDocBench и 54,7 на OCRBench v2. Поддерживает сложные снимки: перекошенные и изогнутые страницы, фотографии и повторно снятые документы.
MiniCPM-OCR Jev – проверяющая модель на 2 млрд параметров. Получает изображение и результат OCR, затем выставляет оценку качества от 0 до 1 для отдельных областей. Помогает находить текст, формулы и таблицы, требующие ручной проверки.
Jev работает и с другими распознавателями. На JevOCRBench её AUROC составляет 93,6 против 93,8 у Qwen3.5-397B-A17B. Это показатель различения правильных и ошибочных результатов, а не процент безошибочно распознанных страниц.
С ускорением DSpark авторы сообщают о пропускной способности в 1,49 раза выше PaddleOCR-VL-1.6 и в 3,62 раза выше MinerU2.5 Pro в своих тестах.
Доступны vLLM, SGLang, llama.cpp и Ollama, квантованные версии, SDK и инструкции по дообучению.
https://github.com/OpenBMB/MiniCPM-OCR
@Python_Community_ru