OpenGL: Mesh shaders in the current year
Khronos одобрила расширение GL_EXT_mesh_shader для OpenGL, и это первый шаг к полному Mesh Shaders в линейке Mesa. Реализация уже влили в mesa, а вот драйвер RadeonSI ждёт своей очереди. Релиз ожидается в ближайшие дни.
Это первая крупная фича для OpenGL за долгое время, и она привнесёт геометрические шейдеры в core Mesa. Работа велась под эгидой AMD, при поддержке Qiang Yu и Shihao Wang.
Комментарии (118)
- Обсуждение в основном вращается вокруг будущего OpenGL и его расширений, включая GL_EXT_mesh_shader и GL_EXT_descriptor_buffer, а также их влияние на Minecraft и другие проекты.
- Участники обсуждают, что новые расширения делают возможным использование шейдеров накладки и дескрипторов буферов, что может быть полезно для таких проектов, как Minecraft.
- Также обсуждается, что OpenGL всё ещё используется в Minecraft и других проектах, и что новые расширения могут помочь в разработке игр.
- Некоторые участники выражают обеспокоенность по поводу того, что OpenGL может быть вытеснен Vulkan и другими API, и что поддержка OpenGL может быть прекращена в будущем.
- В обсуждении также затрагиваются такие темы, как эволюция графических API и их влияние на разработку игр и будущее OpenGL.
Blender 4.5 brings big changes
Выпуск Blender 4.5 LTS знаменует завершение линейки 4.x, с фокусом на улучшении бэкенда Vulkan для рендеринга интерфейса и 3D-сцен. Хотя Vulkan ещё не включён по умолчанию из-за проблем с поддержкой сеток из 100+ миллионов вершин, он уже сравним по функциональности и производительности с OpenGL, предлагая лучшее использование многопоточности современных GPU для плавной работы вьюпорта.
Обновление также поддерживает соответствие стандартам VFX-индустрии через синхронизацию с VFX Reference Platform и обновления библиотек. Основное внимание разработчиков теперь переключено на Blender 5.0, где ожидаются масштабные изменения в системе Geometry Nodes, ключевой для процедурных неразрушающих workflow.
Комментарии (85)
- Blender не является полноценной заменой параметрическим CAD-системам (например, Fusion 360, SolidWorks) для точного проектирования под 3D-печать или станки с ЧПУ, но может быть полезен для редактирования и исправления мешей.
- Для эффективной работы в Blender не требуется врожденный художественный талант; это навык, который можно развить на практике, начав с базовых руководств за несколько дней.
- Многие пользователи со схожим бэкграундом в CAD находят переход сложным из-за принципиально разных подходов к моделированию (полигональное vs. параметрическое), но в итоге осваивают и ценят Blender за гибкость.
- Blender активно развивается (ожидается версия 5.0 с новыми функциями, например, нодами для композитинга в видеоредакторе) и широко используется в индустрии (кино, AAA-игры), несмотря на сложности с UI.
- Выбор инструмента (Blender vs. CAD) зависит от конкретных задач: Blender силён в визуализации, скульптинге и работе с органическими формами, в то время как CAD-системы незаменимы для точного инженерного проектирования.
I regret building this $3000 Pi AI cluster 🔥 Горячее 💬 Длинная дискуссия
Создание кластера из 10 Raspberry Pi CM5 за $3000 оказалось спорным решением. Хотя сборка обеспечила 160 ГБ оперативной памяти и 10-кратный прирост производительности в тесте HPL (325 Gflops при 130 Вт), энергоэффективность лишь ненамного превзошла более мощный кластер на базе Framework. Основная проблема — неспособность использовать iGPU для ускорения AI через Vulkan в llama.cpp, что ограничило инференс моделей медленными CPU. Попытка запуска крупной модели Llama 3.3:70B провалилась: кластер не справился даже с генерацией 16 токенов из-за архитектурных ограничений распределённой обработки.
Практический вывод: такие системы подходят лишь для узких сценариев параллельных вычислений, но бесполезны для современных AI-задач. Автор отмечает, что за два года ожидания поставки железо устарело, а альтернативы вроде Xerxes Pi на Kickstarter лишь повторяют эту рискованную модель.
Комментарии (294)
- Сборка кластера из Raspberry Pi рассматривается как дорогостоящее и непрактичное, но интересное для обучения и экспериментов хобби, а не как эффективное решение для высокопроизводительных вычислений.
- Для серьёзных задач ИИ и распределённых систем рекомендуется использовать мощные CPU/GPU, виртуализацию или аренду облачных ресурсов, а не низкопроизводительные одноплатные компьютеры.
- Кластеры на Raspberry Pi могут быть полезны для образовательных целей, тестирования программных интерфейсов (например, MPI, Kubernetes) и управления лёгкими контейнерами, но не для нагрузок, требующих высокой пропускной способности или вычислений.
- Экономическая нецелесообразность сборки кластера из Pi для производительности подчёркивается высокой стоимостью, низкой эффективностью и доступностью более мощных и дешёвых альтернатив (например, GPU, NUC, MacBook).
- Автор исходного обсуждения получил ценный опыт и материалы для контента, но проект не оправдал ожиданий по производительности, особенно в задачах LLM-инференса.
AMD Open Source Driver for Vulkan project is discontinued
Проект AMDVLK с открытым исходным кодом прекращён.
Комментарии (39)
- AMD прекращает разработку открытого драйвера AMDVLK и переходит к полной поддержке стороннего драйвера RADV для Vulkan на Linux.
- Сообщество воспринимает это решение как позитивное и долгожданное, поскольку RADV уже давно популярнее у пользователей.
- Высказываются мнения, что полный переход на открытый код всего стека драйверов был бы выгоден для производителей железа.
- Поднимается вопрос о будущем Vulkan-драйвера AMD для Windows и возможности использования там RADV.
- Участники обсуждают сложности открытия кода из-за коммерческой тайны и патентов в проприетарных компонентах.
- Обсуждается влияние решения на развитие ROCm и совместимость с открытым стеком.
- Высказываются опасения о возможном негативном влиянии разработчиков AMDVLK на код RADV.
Intel Arc Pro B50 GPU Launched at $349 for Compact Workstations 💬 Длинная дискуссия
- Intel Arc Pro B50 — полупрофессиональная видеокарта на базе Battlemage BMG-G21 (16 Xe2-ядер, 16 ГБ GDDR6, 128-бит, 224 ГБ/с, 70 Вт, питание только от слота PCIe 5.0 x8).
- Форм-фактор low-profile, dual-slot, 4×mini-DP — ставится в компактные SFF-станции без дополнительных проводов.
- Целевые задачи: CAD, визуализация, локальный ИИ-инференс до 170 TOPS (INT8); драйверы сертифицированы под профессиональные приложения.
- Цена 349 $, продаётся как в рознице, так и в OEM-системах.
Комментарии (235)
- Arc Pro B50 ≈ 1.5× быстрее RTX A1000, но это лишь догоняющий показатель против 1,5-летней карты.
- 16 ГБ за $350 хвалят, но многие требуют 32–96 ГБ для ИИ/3D; Intel и AMD не делают, Nvidia тоже ограничивает.
- Однослотовая, 70 Вт, 4×DP, SR-IOV и vGPU — плюсы для серверов и виртуализации.
- Поддержка ПО (IPEX, Vulkan, игры) всё ещё сыровата; 8-потоковый лимит кодирования остался.
- Рынок разделился: кто-то хочет «много памяти за разумные деньги», кто-то смеётся, что «играть всё равно нельзя».
Rasterizer: A GPU-accelerated 2D vector graphics engine in ~4k LOC
Rasterizer — GPU-ускоренный движок 2D-векторной графики от mindbrix.
Проект на GitHub: mindbrix/Rasterizer.
Комментарии (51)
- Автор показал компактный GPU-рендерер 2D-векторов (Rasterizer), 10 лет развивавшийся из VectorGL; использует «традиционный» граф-конвейер Metal, а не compute-шейдеры.
- Лицензия «personal-use zlib» вызывает вопросы: неясно, что считать личным/некомерческим и можно ли распространять ПО с этой библиотекой.
- Производительность конкурентна с Vello (Apache/MIT) и, вероятно, выше Rive на сложных сценах; у Vello бывают подвисания при зуме.
- Поддерживаются любые масштабы и огромные пути, но самопересечения и правило winding остаются главной головной болью параллелизации.
- Реализованы только базовые заливки; текста, градиентов, фильтров пока нет. Кеширование текстур не используется — 60 fps достигается полным перерисом.
- Планы: добавить коммерческую лицензию, написать подробный пост о методике, оценить порт на Vulkan/OpenGL.
Dissecting the Apple M1 GPU, the end 🔥 Горячее 💬 Длинная дискуссия
В декабре 2020-го Хектор Мартин запустил Asahi Linux, а я, работая над Panfrost, лишь хотел подсказать. В итоге купил Mac mini и начал реверсить GPU. Через пару недель нарисовал треугольник, потом — компилятор шейдеров, а после сессии за несколько дней поднял OpenGL-драйвер.
Год улучшал драйвер, пока игры не пошли под macOS. Параллельно Asahi Lina писала kernel-драйвер; в декабре 2022-го у нас впервые заработала графика в Linux.
В 2023-м, заканчивая универ, я решил:
- довести M1-драйвер до ума;
- сделать полноценный OpenGL 4.6 и Vulkan;
- запустить Proton-игры.
Через месяц после выпуска — OpenGL 3.1, затем ES 3.1. Добавил эмуляцию geometry/tessellation, в январе 2024-го сдал OpenGL 4.6. Vulkan 1.3 прошёл за пару недель, 1.4 вышел в день публикации спецификации. Karol Herbst добавил OpenCL 3.0. Подключил sparse-текстуры — заработал Direct3D 12 через Proton.
Цели выполнены: драйверы в Mesa, игры идут, миф о несовместимости Vulkan с Apple развеян.
Комментарии (158)
- Alyssa за 5 лет с нуля довела Vulkan-драйвер для Apple Silicon до upstream, чем вдохновила всё open-source-сообщество.
- Учёба, работа в Collabora и «хобби»-проект — комментаторы поражаются, как она всё успевала.
- С августа она в Intel и, судя по резюме, занимается open-source-графикой Xe-HPG.
- Многие жалеют, что она уходит из Asahi, но считают переход новым вызовом, а не «уходом».
- Появились вопросы о будущем Asahi на M3/M4 и о том, почему Apple не мешает проекту, в отличие от других.
Librebox: An open source, Roblox-compatible game engine
Librebox-demo — репозиторий движка Librebox: открытой альтернативы Roblox.
Цель — совместимость с Roblox-играми и инструментами, но без проприетарных ограничений.
Ключевое
- Язык: C++ + Lua
- Лицензия: MIT
- Статус: ранняя альфа
- Сборка: CMake + vcpkg
Быстрый старт
git clone https://github.com/librebox-devs/librebox-demo.git
cd librebox-demo
cmake -B build -S . -DCMAKE_BUILD_TYPE=Release
cmake --build build
./build/librebox
Функции
- Загрузка
.rbxlи.rbxm - Базовый рендер OpenGL/Vulkan
- Серверный режим headless
Планы
- Поддержка плагинов
- Web-клиент
- Мобильные порты
PR и issue приветствуются.
Комментарии (66)
- Librebox — это пока демо с очень ограниченным подмножеством API Roblox; серверов и сети нет.
- Пользователи надеются на Linux-клиент и сохранение творений Roblox, но опасаются юридических проблем.
- GitHub и Discord проекта выглядят странно: разработчики скрыты, активности мало, но код реально пишется.
- Некоторые считают, что такие проекты важнее для Roblox, чем борьба с хищниками на платформе.
- Есть предложения переименовать в OpenBox из-за лицензии MIT, но другие напоминают, что MIT — это тоже «свободно».
FFmpeg 8.0 🔥 Горячее 💬 Длинная дискуссия
FFmpeg
Кроссплатформенное решение для записи, конвертации и потоковой передачи аудио/видео.
ffmpeg -i input.mp4 output.avi
Новости
23 августа 2025, FFmpeg 8.0 «Huffman»
Крупнейший релиз:
- Новые декодеры: APV, ProRes RAW, RealVideo 6.0, G.728
- Улучшения VVC: IBC, ACT, Palette Mode
- Vulkan-кодеки: FFv1 (кодирование/декодирование), ProRes RAW (декодирование)
- Аппаратное ускорение: Vulkan VP9, VAAPI VVC, OpenHarmony H.264/5
- Форматы: MCC, G.728, Whip, APV
- Фильтры: colordetect, pad_cuda, Whisper и др.
Кодеки на базе вычислительных шейдеров Vulkan 1.3 работают на любом железе без привязки к специфическим ускорителям.
Инфраструктура обновлена: новый фордж на code.ffmpeg.org.
30 сентября 2024, FFmpeg 7.1 «Péter»
- VVC-декодер стал стабильным.
- Добавлены AAC USAC, MV-HEVC, LC-EVC.
- Vulkan-кодирование H.264/HEVC, скоро AV1.
- Исправлена передача диапазона цветов (full-range).
Комментарии (187)
- Пользователи благодарят разработчиков FFmpeg и называют его незаменимым инструментом для автоматизации аудио/видео.
- Особый интерес вызывают новые кодеки и ускорение через вычислительные шейдеры Vulkan, включая ProRes и FFv1.
- Многие признают, что без LLM/скриптов сложно помнить все параметры CLI, поэтому активно используют LLM-обёртки.
- Обсуждаются GUI-фронтенды, проблемы экранирования при вызове из Python и запросы о денойзе старых записей.
- Подчёркивают, что FFmpeg лежит в основе множества других инструментов, а новый релиз быстро дойдёт до yt-dlp, Jellyfin и подобных проектов.
ARM adds neural accelerators to GPUs
- Arm Neural Technology — первое в мире решение, встраивающее нейро-акселераторы в мобильные GPU Arm. С 2026 г. оно сокращает нагрузку на GPU до 50 % и открывает путь к ПК-качеству графики на смартфонах.
- Neural Super Sampling (NSS) — стартовая функция: апскейл 540p → 1080p за 4 мс на кадр.
- Открытый набор разработчика уже доступен: плагин Unreal Engine, эмулятор Vulkan, профайлеры, модели на GitHub и Hugging Face. Поддержка от Epic, Tencent, NetEase и др.
- Расширения Vulkan добавляют «Graph Pipeline» для вывода нейросетей прямо в рендер-процесс.
Комментарии (38)
- Участники обсуждают, как ИИ-апскейлинг (типа DLSS/FSR) позволит инди-студиям делать игры «АА-качества» из минимальной графики, высвобождая ресурсы для гейм-дизайна.
- ARM анонсировала «первую в отрасли» встроенную нейро-ускоряющую часть в GPU, но многие указывают, что NPU в SoC уже есть с 2017 г. (Kirin 970) и новизна, вероятно, в интеграции именно в GPU, а не рядом.
- Поддержка Vulkan-расширений вместо проприетарных API считается плюсом, но вызывает опасения «extension spaghetti».
- Скепсис вызывают сроки (IP анонсирована за два года до чипов) и маркетинговые формулировки «Arm как компания» vs «ARM как архитектура».
- Участники перечисляют три пути ускорения ИИ: GPU compute, tensor-cores, NPU; последние пока используются мало, кроме как для lock-in Microsoft ONNX.
Writing a Rust GPU kernel driver: a brief introduction on how GPU drivers work 🔥 Горячее
Это вторая часть серии о разработке Tyr — современного GPU‑драйвера на Rust для ядра Linux с поддержкой Arm Mali на CSF.
Разберем, как работают GPU‑драйверы, на примере VkCube — простого приложения на Vulkan, рисующего вращающийся куб. Простота сцены помогает понять путь данных и команд от приложения к GPU.
UMD и KMD
- UMD (usermode) реализует API вроде Vulkan/OpenGL/OpenCL и преобразует команды приложений в низкоуровневые команды для GPU. В нашем случае это panvk из Mesa.
- KMD (kernel mode) соединяет UMD с железом: инициализирует устройство, управляет памятью, очередями, планированием и уведомлениями. В нашем случае это Tyr, нацеленный попасть в основное дерево Linux.
Что делает UMD
- Подготавливает данные: геометрию, текстуры, машинный код шейдеров, матрицы трансформаций.
- Просит KMD разместить их в памяти GPU, создает VkCommandBuffer с командами отрисовки, настраивает состояние конвейера, указывает, куда писать результат, и как получать сигнал о завершении.
Про шейдеры
- Это полноценные программы на GPU. Для VkCube им нужны хотя бы геометрия, цвета и матрица вращения, чтобы расположить и раскрасить куб и крутить его.
Что делает KMD
- Выделяет и отображает память, изолируя процессы в отдельных контекстах/VM.
- Принимает работу от UMD, ставит в аппаратные очереди, отслеживает зависимости и завершение.
- Планирует выполнение на массово параллельном, асинхронном железе, соблюдая порядок и справедливое распределение ресурса между клиентами.
- Инициализирует устройство: тактирование, питание, стартовые процедуры; обеспечивает совместный и честный доступ приложений к GPU.
Ключевой вывод
- Основная сложность — в UMD, который переводит высокоуровневые API в команды GPU. Но KMD обязан предоставить надежные примитивы: память, очереди, синхронизацию, планирование и разделение ресурсов, чтобы UMD было реально реализовать.
Интерфейс драйвера
- На основе этих задач KMD экспонирует минимальный набор операций: запрос сведений об устройстве, создание/уничтожение VM, привязка/отвязка памяти к VM, получение состояния VM, отправка работ в очереди и механизмы уведомлений — тот же API, что у C‑драйвера Panthor для того же железа.
Комментарии (34)
- Обсуждение статьи о драйвере GPU: часть читателей хвалит материал, но считает его слишком коротким и ждёт продолжения/второй части.
- Уточняют, что речь идёт о драйвере panthor для Mali CSF (на RK3588), а не panfrost; один из комментаторов отмечал баги в Firefox на RK3588, ему ответили про соответствующий драйвер.
- Спор о фокусе: одни подчёркивают важность того, что это один из первых GPU-драйверов Linux на Rust; другие критикуют кликбейт заголовок и считают, что нужно акцентировать Mali CSF, а не Rust.
- Техническая дискуссия: вопрос о целесообразности uring_cmd вместо ioctl; ответы поясняют, что из-за природы асинхронных очередей GPU дополнительная CPU-очередь мало что даст, а интерфейс драйвера следует ожиданиям Mesa.
- Отмечают, что текущая часть охватывает в основном границу пользователь/ядро и управление очередями/буферами; «основное действие» — выполнение команд GPU — ожидается в следующих частях.
- Дополнительно подчёркивают сложность современных GPU-драйверов и их объём в ядре Linux, что оправдывает выбранные подходы и терминологию.