По его словам, люди, которых он уважает и считает умными, не боятся пользоваться новыми инструментами.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍53❤7👀7🔥5🤣3🌚1🤝1
Не теряющий актуальности материал — «Введение в распределённые системы» (An Introduction to Distributed Systems) Кайла Кингсбери.
https://github.com/aphyr/distsys-class
👉 @PythonPortal
https://github.com/aphyr/distsys-class
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6🤝2
Новая библиотека для создания SVG-диаграмм. Она называется Pele и представляет собой альтернативу Mermaid.
✓ Настройка с помощью CSS-переменных
✓ Размер всего около 230 КБ (Mermaid занимает более 1 МБ)
✓ Мгновенный рендеринг
Разработана командой Obsidian:
→ github.com/obsidianmd/pele
👉 @PythonPortal
✓ Настройка с помощью CSS-переменных
✓ Размер всего около 230 КБ (Mermaid занимает более 1 МБ)
✓ Мгновенный рендеринг
Разработана командой Obsidian:
→ github.com/obsidianmd/pele
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11🔥3
Я думал, что понимаю, как работает загрузка GPU, пока не начал писать это руководство.
Я постоянно смешивал три разных понятия:
- Объём работы, который мы запускаем.
- Объём работы, который фактически размещён на GPU.
- Объём работы, готовый к выполнению прямо сейчас.
Но это совершенно разные вещи.
Возьмём CUDA-ядро с 240 блоками по 256 потоков в каждом. Всего получается 61 440 логических потоков, или 1920 варпов. Однако количество запущенных потоков ничего не говорит о том, сколько варпов может одновременно находиться на GPU.
Блоки размещаются на потоковых мультипроцессорах (SM) с учётом доступных регистров, разделяемой памяти и ограничений на количество потоков, варпов и блоков.
Даже после размещения на SM варп может ожидать завершения операции с памятью, разрешения зависимости между арифметическими операциями или синхронизации. Планировщик может выбирать только те варпы, которые действительно готовы к выдаче инструкций на выполнение.
Это изменило и мой подход к анализу показателей производительности.
Occupancy — показатель, отражающий отношение количества активных варпов на SM к максимально поддерживаемому количеству варпов на этом SM.
GPU utilization измеряет другое. В NVML этот показатель отражает долю интервала измерения, в течение которой выполнялось хотя бы одно CUDA-ядро.
Таким образом, GPU может показывать загрузку 100%, даже если Tensor Cores не используются на полную мощность, пропускная способность HBM не исчерпана, а производительность ограничивается одним из компонентов системы. При этом значительная часть ресурсов GPU может оставаться недозагруженной.
С памятью возникают похожие заблуждения. Регистры, разделяемая память, L1, L2 и HBM — это не просто уровни памяти, последовательно отличающиеся скоростью. У каждого из них свои области доступности, ёмкость, особенности управления и способы доступа.
Если модель помещается в HBM, это означает лишь то, что для неё достаточно видеопамяти. Но практически ничего не говорит о том, сколько байтов приходится передавать, насколько эффективно объединяются обращения к памяти, как часто данные используются повторно и действительно ли память ограничивает производительность CUDA-ядра.
Хороший пример — FlashAttention. Алгоритм вычисляет точный механизм внимания (attention), но использует разбиение на блоки (tiling) и повторные вычисления, чтобы сократить объём передачи данных между HBM и внутренней памятью GPU.
Tensor Cores оказались ещё одной технологией, которую я раньше воспринимал слишком упрощённо.
Это специализированные вычислительные блоки для матричных операций умножения с накоплением, играющие огромную роль в задачах ИИ. Однако они не «выполняют модель» целиком.
Операции редукции, индексации, поэлементные вычисления, синхронизация и перемещение данных по-прежнему задействуют другие компоненты GPU. Кроме того, запуск CUDA-ядер тоже создаёт дополнительные накладные расходы.
Со временем я перестал спрашивать себя: «Почему GPU не загружен на 100%?» Вместо этого я начал задавать более правильный вопрос: «Что именно сейчас ограничивает скорость выполнения полезной работы?»
В итоге всё это превратилось в руководство на 42 страницы.
В нём рассматриваются потоковые мультипроцессоры (SM), варпы и планировщики, иерархия памяти и скрытие задержек, Tensor Cores, распределение вычислений GEMM по аппаратным ресурсам GPU, точность вычислений и показатели производительности, которые очень легко интерпретировать неправильно.
https://drive.google.com/file/d/17tyvxr__8vZ6o995GNq6I5PC5JOiv0ql/view
👉 @PythonPortal
Я постоянно смешивал три разных понятия:
- Объём работы, который мы запускаем.
- Объём работы, который фактически размещён на GPU.
- Объём работы, готовый к выполнению прямо сейчас.
Но это совершенно разные вещи.
Возьмём CUDA-ядро с 240 блоками по 256 потоков в каждом. Всего получается 61 440 логических потоков, или 1920 варпов. Однако количество запущенных потоков ничего не говорит о том, сколько варпов может одновременно находиться на GPU.
Блоки размещаются на потоковых мультипроцессорах (SM) с учётом доступных регистров, разделяемой памяти и ограничений на количество потоков, варпов и блоков.
Даже после размещения на SM варп может ожидать завершения операции с памятью, разрешения зависимости между арифметическими операциями или синхронизации. Планировщик может выбирать только те варпы, которые действительно готовы к выдаче инструкций на выполнение.
Это изменило и мой подход к анализу показателей производительности.
Occupancy — показатель, отражающий отношение количества активных варпов на SM к максимально поддерживаемому количеству варпов на этом SM.
GPU utilization измеряет другое. В NVML этот показатель отражает долю интервала измерения, в течение которой выполнялось хотя бы одно CUDA-ядро.
Таким образом, GPU может показывать загрузку 100%, даже если Tensor Cores не используются на полную мощность, пропускная способность HBM не исчерпана, а производительность ограничивается одним из компонентов системы. При этом значительная часть ресурсов GPU может оставаться недозагруженной.
С памятью возникают похожие заблуждения. Регистры, разделяемая память, L1, L2 и HBM — это не просто уровни памяти, последовательно отличающиеся скоростью. У каждого из них свои области доступности, ёмкость, особенности управления и способы доступа.
Если модель помещается в HBM, это означает лишь то, что для неё достаточно видеопамяти. Но практически ничего не говорит о том, сколько байтов приходится передавать, насколько эффективно объединяются обращения к памяти, как часто данные используются повторно и действительно ли память ограничивает производительность CUDA-ядра.
Хороший пример — FlashAttention. Алгоритм вычисляет точный механизм внимания (attention), но использует разбиение на блоки (tiling) и повторные вычисления, чтобы сократить объём передачи данных между HBM и внутренней памятью GPU.
Tensor Cores оказались ещё одной технологией, которую я раньше воспринимал слишком упрощённо.
Это специализированные вычислительные блоки для матричных операций умножения с накоплением, играющие огромную роль в задачах ИИ. Однако они не «выполняют модель» целиком.
Операции редукции, индексации, поэлементные вычисления, синхронизация и перемещение данных по-прежнему задействуют другие компоненты GPU. Кроме того, запуск CUDA-ядер тоже создаёт дополнительные накладные расходы.
Со временем я перестал спрашивать себя: «Почему GPU не загружен на 100%?» Вместо этого я начал задавать более правильный вопрос: «Что именно сейчас ограничивает скорость выполнения полезной работы?»
В итоге всё это превратилось в руководство на 42 страницы.
В нём рассматриваются потоковые мультипроцессоры (SM), варпы и планировщики, иерархия памяти и скрытие задержек, Tensor Cores, распределение вычислений GEMM по аппаратным ресурсам GPU, точность вычислений и показатели производительности, которые очень легко интерпретировать неправильно.
https://drive.google.com/file/d/17tyvxr__8vZ6o995GNq6I5PC5JOiv0ql/view
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9
This media is not supported in your browser
VIEW IN TELEGRAM
Microsoft приобрела Maluuba за год до выхода GPT-1.
Основатель компании признаётся, что сожалеет о продаже, поскольку Maluuba могла бы стать следующей OpenAI.
Теперь та же команда специалистов по глубокому обучению вернулась с новым проектом Skyfall AI, и её первая модель — вовсе не очередная LLM.
SKY-001 — первая инженерная world model. Достаточно передать ей текстовый промпт или примерный эскиз, и она спроектирует объект целиком, разберёт его на отдельные детали вплоть до винтиков, а затем воссоздаст в виде полноценного CAD-файла, который можно открыть в таких программах, как Autodesk Fusion.
Согласно тестам компании, в задачах CAD и BIM модель работает в 100 раз быстрее и обходится в 150 раз дешевле, чем GPT-6 Astra.
Обратите внимание на момент в видео, когда детали одна за другой соединяются в готовую конструкцию.
👉 @PythonPortal
Основатель компании признаётся, что сожалеет о продаже, поскольку Maluuba могла бы стать следующей OpenAI.
Теперь та же команда специалистов по глубокому обучению вернулась с новым проектом Skyfall AI, и её первая модель — вовсе не очередная LLM.
SKY-001 — первая инженерная world model. Достаточно передать ей текстовый промпт или примерный эскиз, и она спроектирует объект целиком, разберёт его на отдельные детали вплоть до винтиков, а затем воссоздаст в виде полноценного CAD-файла, который можно открыть в таких программах, как Autodesk Fusion.
Согласно тестам компании, в задачах CAD и BIM модель работает в 100 раз быстрее и обходится в 150 раз дешевле, чем GPT-6 Astra.
Обратите внимание на момент в видео, когда детали одна за другой соединяются в готовую конструкцию.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤6🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
Парень провёл реверс-инжиниринг своего телевизора с помощью Claude.
- Воссоздал минималистичный главный экран в стиле Apple TV.
- Удалил всю предустановленную рекламу и ненужное ПО.
- Сократил потребление оперативной памяти на 70% и заметно ускорил работу телевизора.
Для желающих попробовать доступна опенсорсная версия.
👉 @PythonPortal
- Воссоздал минималистичный главный экран в стиле Apple TV.
- Удалил всю предустановленную рекламу и ненужное ПО.
- Сократил потребление оперативной памяти на 70% и заметно ускорил работу телевизора.
Для желающих попробовать доступна опенсорсная версия.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24❤18
«Calculus» Майкла Спивака считается одним из самых влиятельных учебников, знакомящих студентов с математическим анализом.
Книга охватывает основы математического анализа, функции, пределы, непрерывность, дифференцирование, интегрирование, тригонометрические и показательные функции, бесконечные последовательности и ряды, а также многие другие темы.
Особую ценность учебнику придаёт строгий, но при этом содержательный подход к изложению материала, а также обширный набор задач, призванных углубить понимание и показать взаимосвязи между математическими понятиями.
Хотя книга не находится в свободном доступе, в Google Books можно ознакомиться с её предварительной версией. Особенно полезно это будет тем, кто ещё не знаком с этим выдающимся учебником.
https://books.google.it/books?id=7JKVu_9InRUC&printsec=frontcover&hl=it#v=onepage&q&f=false
👉 @PythonPortal
Книга охватывает основы математического анализа, функции, пределы, непрерывность, дифференцирование, интегрирование, тригонометрические и показательные функции, бесконечные последовательности и ряды, а также многие другие темы.
Особую ценность учебнику придаёт строгий, но при этом содержательный подход к изложению материала, а также обширный набор задач, призванных углубить понимание и показать взаимосвязи между математическими понятиями.
Хотя книга не находится в свободном доступе, в Google Books можно ознакомиться с её предварительной версией. Особенно полезно это будет тем, кто ещё не знаком с этим выдающимся учебником.
https://books.google.it/books?id=7JKVu_9InRUC&printsec=frontcover&hl=it#v=onepage&q&f=false
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Теперь я могу играть в полную версию GTA Vice City прямо в браузере с частотой 60 FPS.
- Ничего не нужно скачивать.
- Не нужно ждать.
- Только GTA Vice City, оптимизированная до предела.
- Игра полностью портирована для запуска в браузере.
Всё это стало возможным благодаря миллиардам токенов, потраченных на работу с ИИ.
Теперь игра загружается быстрее официальной версии и стабильно работает при 60 FPS.
Попробовать: gta.rabisco.net🤯
👉 @PythonPortal
- Ничего не нужно скачивать.
- Не нужно ждать.
- Только GTA Vice City, оптимизированная до предела.
- Игра полностью портирована для запуска в браузере.
Всё это стало возможным благодаря миллиардам токенов, потраченных на работу с ИИ.
Теперь игра загружается быстрее официальной версии и стабильно работает при 60 FPS.
Попробовать: gta.rabisco.net
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤5🤯2🤣1🤝1
DeepSeek открыла исходный код движка инференса, лежащего в основе кластера, который, по заявлению компании, обрабатывает 155 триллионов токенов в сутки.
И это уже становится закономерностью. Ранее DeepSeek опубликовала FlashMLA, DeepGEMM, DeepEP и несколько других компонентов своей инфраструктуры инференса. Теперь компания открывает исходный код фреймворка, объединяющего значительную часть этих разработок.
Проект называется DeepInfer. Это высокопроизводительный фреймворк для инференса, который используется в масштабных продакшен-сервисах DeepSeek.
На данный момент он поддерживает DeepSeek-V4.1-Flash и включает несколько интересных оптимизаций для эффективного запуска крупных моделей с архитектурой Mixture-of-Experts (MoE).
В реализации предусмотрен параллелизм экспертов (Expert Parallelism) с динамической балансировкой нагрузки. Это позволяет распределять MoE-экспертов между GPU и корректировать нагрузку при её неравномерном распределении.
Для декодирования DeepInfer использует спекулятивное декодирование DSpark с проверкой, планируемой на основе оценок уверенности. Предварительные токены генерируются заранее, а оценки уверенности помогают определить, когда необходимо выполнить их проверку.
Отдельного внимания заслуживает планировщик. Формирование батчей на CPU выполняется параллельно с вычислениями на GPU, что сокращает время простоя, обычно возникающее между этапами декодирования.
Среди других возможностей:
- Ограниченное повторное воспроизведение вычислений для Sliding Window Attention.
- Инференс, результаты которого не зависят от состава батча.
- Детерминированное семплирование.
- Генерация с ограничениями на основе JSON Schema, регулярных выражений и грамматик EBNF.
DeepSeek также опубликовала необычайно подробную документацию по развёртыванию, в которой объясняется, как её продакшен-система разделяет этапы prefill и decode, распределяет MoE-экспертов между большими группами GPU и повторно использует закэшированный контекст.
Фреймворк поддерживает GPU NVIDIA с архитектурой SM100 и NPU Huawei Ascend 950.
Однако есть важное ограничение: публичная версия пока поддерживает только офлайн-инференс. В неё не входят система KV-кэша, полноценное разделение prefill и decode, а также балансировка нагрузки, необходимые для работы полноценного онлайн-сервиса.
Изначально DeepInfer разрабатывался преимущественно на базе vLLM с использованием отдельных идей из SGLang и TensorRT-LLM.
Таким образом, это не полная копия продакшен-инфраструктуры DeepSeek. Тем не менее компания открыла доступ к значительной части своей реальной реализации инференса, которую разработчики теперь могут изучать, тестировать в бенчмарках и использовать в собственных проектах.
Исходный код полностью открыт под лицензией Apache 2.0.
👉 @PythonPortal
И это уже становится закономерностью. Ранее DeepSeek опубликовала FlashMLA, DeepGEMM, DeepEP и несколько других компонентов своей инфраструктуры инференса. Теперь компания открывает исходный код фреймворка, объединяющего значительную часть этих разработок.
Проект называется DeepInfer. Это высокопроизводительный фреймворк для инференса, который используется в масштабных продакшен-сервисах DeepSeek.
На данный момент он поддерживает DeepSeek-V4.1-Flash и включает несколько интересных оптимизаций для эффективного запуска крупных моделей с архитектурой Mixture-of-Experts (MoE).
В реализации предусмотрен параллелизм экспертов (Expert Parallelism) с динамической балансировкой нагрузки. Это позволяет распределять MoE-экспертов между GPU и корректировать нагрузку при её неравномерном распределении.
Для декодирования DeepInfer использует спекулятивное декодирование DSpark с проверкой, планируемой на основе оценок уверенности. Предварительные токены генерируются заранее, а оценки уверенности помогают определить, когда необходимо выполнить их проверку.
Отдельного внимания заслуживает планировщик. Формирование батчей на CPU выполняется параллельно с вычислениями на GPU, что сокращает время простоя, обычно возникающее между этапами декодирования.
Среди других возможностей:
- Ограниченное повторное воспроизведение вычислений для Sliding Window Attention.
- Инференс, результаты которого не зависят от состава батча.
- Детерминированное семплирование.
- Генерация с ограничениями на основе JSON Schema, регулярных выражений и грамматик EBNF.
DeepSeek также опубликовала необычайно подробную документацию по развёртыванию, в которой объясняется, как её продакшен-система разделяет этапы prefill и decode, распределяет MoE-экспертов между большими группами GPU и повторно использует закэшированный контекст.
Фреймворк поддерживает GPU NVIDIA с архитектурой SM100 и NPU Huawei Ascend 950.
Однако есть важное ограничение: публичная версия пока поддерживает только офлайн-инференс. В неё не входят система KV-кэша, полноценное разделение prefill и decode, а также балансировка нагрузки, необходимые для работы полноценного онлайн-сервиса.
Изначально DeepInfer разрабатывался преимущественно на базе vLLM с использованием отдельных идей из SGLang и TensorRT-LLM.
Таким образом, это не полная копия продакшен-инфраструктуры DeepSeek. Тем не менее компания открыла доступ к значительной части своей реальной реализации инференса, которую разработчики теперь могут изучать, тестировать в бенчмарках и использовать в собственных проектах.
Исходный код полностью открыт под лицензией Apache 2.0.
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - deepseek-ai/DeepInfer: DeepInfer: High-performance, large-scale inference framework for DeepSeek models
DeepInfer: High-performance, large-scale inference framework for DeepSeek models - deepseek-ai/DeepInfer
👍13❤3
Демис Хассабис, генеральный директор Google DeepMind и лауреат Нобелевской премии, ожидает появления AGI гораздо раньше, чем предполагал в своих предыдущих прогнозах.
Январь 2025 года. До появления AGI остаётся ещё 5–10 лет. Возможно, для этого потребуется один или два технологических прорыва.
Февраль 2026 года. Мы находимся на пороге очередного переломного момента, когда появление AGI становится всё более близкой перспективой. Возможно, он появится в течение ближайших пяти лет.
Октябрь 2026 года. Теперь Хассабис ожидает появления AGI уже через 2–3 года.
https://www.wsj.com/tech/ai/demis-hassabis-ai-deepmind-google-isomorphic-2b4e3153?st=qXvQgt&reflink=desktopwebshare_permalink
👉 @PythonPortal
Январь 2025 года. До появления AGI остаётся ещё 5–10 лет. Возможно, для этого потребуется один или два технологических прорыва.
Февраль 2026 года. Мы находимся на пороге очередного переломного момента, когда появление AGI становится всё более близкой перспективой. Возможно, он появится в течение ближайших пяти лет.
Октябрь 2026 года. Теперь Хассабис ожидает появления AGI уже через 2–3 года.
https://www.wsj.com/tech/ai/demis-hassabis-ai-deepmind-google-isomorphic-2b4e3153?st=qXvQgt&reflink=desktopwebshare_permalink
Please open Telegram to view this post
VIEW IN TELEGRAM
😁16❤3
Media is too big
VIEW IN TELEGRAM
Генеральный директор OpenAI Сэм Альтман заявил:
Насколько умнее самых выдающихся людей может стать искусственный интеллект и как быстро это произойдёт?🤔
👉 @PythonPortal
«Будущее должно оставаться под контролем людей. Мы не хотим, чтобы слишком много власти сосредоточилось в руках ИИ с IQ в десять миллиардов или небольшой группы людей, которые смогут делать с помощью ИИ всё, что захотят».
Насколько умнее самых выдающихся людей может стать искусственный интеллект и как быстро это произойдёт?
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣21👍4🤔2❤1
Claude больше не способен проводить реверс-инжиниринг всего подряд. Anthropic незаметно прикрыла REA (Reverse Engineer Anything).
Любопытно, однако, при каких обстоятельствах это произошло.
После нескольких нашумевших случаев, когда пользователи с помощью Claude проводили реверс-инжиниринг прошивок телевизоров Samsung и обнаруживали сервисы сбора данных, Anthropic, по всей видимости, решила ограничить возможности модели в этой области.
Как говорится, слишком многое узнал.🚬
👉 @PythonPortal
Любопытно, однако, при каких обстоятельствах это произошло.
После нескольких нашумевших случаев, когда пользователи с помощью Claude проводили реверс-инжиниринг прошивок телевизоров Samsung и обнаруживали сервисы сбора данных, Anthropic, по всей видимости, решила ограничить возможности модели в этой области.
Как говорится, слишком многое узнал.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20😢14🌚3❤1🌭1
This media is not supported in your browser
VIEW IN TELEGRAM
Одна из лучших моделей, превращающих изображения в 3D, вышла в открытый доступ.
Hi3D V1.0 — масштабированная версия прошлогодней Sparc3D. Её код и веса уже опубликованы на GitHub и Hugging Face. Скачать и использовать модель можно совершенно бесплатно.
Признаться, за последнее время я не встречал более любопытного открытого релиза в области 3D.
👉 @PythonPortal
Hi3D V1.0 — масштабированная версия прошлогодней Sparc3D. Её код и веса уже опубликованы на GitHub и Hugging Face. Скачать и использовать модель можно совершенно бесплатно.
Признаться, за последнее время я не встречал более любопытного открытого релиза в области 3D.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥4❤3