#137 GPU вычисления_ задача n тел, часть 4.3 доработка системы угловых частиц
00:00 Введение и цель серии • Программа CUDA Education завершает серию по добавлению новых частиц в алгоритмы. • Цель — добавить новый набор частиц, перемещающихся по собственному конвейеру. • Частицы перемещаются по кругу, что требует выполнения случайных вычислений. 00:52 Сложности вычислений • Добавление неподвижных частиц было бы тривиальной задачей. • Случайные движения частиц рассчитываются заранее на стороне вычислений. • Из-за использования одного графического процессора полная независимость частиц невозможна. 01:48 Изменения в алгоритме • Слева показан алгоритм по умолчанию, справа — изменения для нового набора частиц. • Подготовка угловых частиц завершена, теперь нужно доделать остальное. 02:47 Подготовка пула дескрипторов • В функции подготовки пула дескрипторов размер пула увеличен до двух для каждого кадра. • Новый алгоритм использует два пула дескрипторов: один для графики, другой для вычислений. 04:44 Привязка графического конвейера • В команде build graphics, Buffer привязывается графический конвейер corner. • Используется графика точек привязки VK. 05:52 Работа с буферами вершин • Подключение VKCMB к буферам вершин. • Контроль буферов и смещений под командой build graphics command buffer. 06:42 Рендеринг и вычисления • Отправка угловых вычислений независимо от обычных команд. • Взаимодействие с ограждением и перезагрузкой для корректной работы. 12:04 Семафоры и синхронизация • Добавление трёх семафоров: для вывода цвета сцены, вершины и угловых частиц. • Завершение обработки угловых частиц с использованием семафора синхронизации. 13:46 Запуск нового алгоритма • Демонстрация работы нового алгоритма с новыми частицами. • Подчёркивается сложность работы с низкоуровневым языком Vulkan. 14:41 Заключение • Независимые частицы не мешают друг другу, несмотря на использование одного графического процессора. • Необходимость синхронизации для корректной работы системы частиц. 15:57 Отключение функции отрисовки • Отключение функции отрисовки приводит к тому, что вызов отрисовки оказывается внутри буфера команд build graphics. • Привязка графики к графическому конвейеру corner graphics. • Закомментирование вызова draw приводит к исчезновению частиц на экране. 16:55 Влияние количества частиц • Увеличение количества частиц с 10 до 1000 не приводит к сбою приложения. • Для корректной работы требуется хотя бы одна частица. • Создание слишком большого количества частиц может привести к нехватке места на экране. 20:10 Обучение и ресурсы • Автор призывает начать изучение Vulcan языка. • Рекомендует посетить конференцию по Vulcan 2026 на YouTube. • Упоминает необходимость установки Vulcan SDK и примеров из учебников. 21:04 Требования к оборудованию • Для работы с Vulcan требуется графический процессор, поддерживающий трассировку лучей. • Рекомендуется использовать выделенную дискретную видеокарту. • Старые интегрированные видеокарты не поддерживают Vulcan по умолчанию. 22:03 Завершение
00:00 Введение и цель серии • Программа CUDA Education завершает серию по добавлению новых частиц в алгоритмы. • Цель — добавить новый набор частиц, перемещающихся по собственному конвейеру. • Частицы перемещаются по кругу, что требует выполнения случайных вычислений. 00:52 Сложности вычислений • Добавление неподвижных частиц было бы тривиальной задачей. • Случайные движения частиц рассчитываются заранее на стороне вычислений. • Из-за использования одного графического процессора полная независимость частиц невозможна. 01:48 Изменения в алгоритме • Слева показан алгоритм по умолчанию, справа — изменения для нового набора частиц. • Подготовка угловых частиц завершена, теперь нужно доделать остальное. 02:47 Подготовка пула дескрипторов • В функции подготовки пула дескрипторов размер пула увеличен до двух для каждого кадра. • Новый алгоритм использует два пула дескрипторов: один для графики, другой для вычислений. 04:44 Привязка графического конвейера • В команде build graphics, Buffer привязывается графический конвейер corner. • Используется графика точек привязки VK. 05:52 Работа с буферами вершин • Подключение VKCMB к буферам вершин. • Контроль буферов и смещений под командой build graphics command buffer. 06:42 Рендеринг и вычисления • Отправка угловых вычислений независимо от обычных команд. • Взаимодействие с ограждением и перезагрузкой для корректной работы. 12:04 Семафоры и синхронизация • Добавление трёх семафоров: для вывода цвета сцены, вершины и угловых частиц. • Завершение обработки угловых частиц с использованием семафора синхронизации. 13:46 Запуск нового алгоритма • Демонстрация работы нового алгоритма с новыми частицами. • Подчёркивается сложность работы с низкоуровневым языком Vulkan. 14:41 Заключение • Независимые частицы не мешают друг другу, несмотря на использование одного графического процессора. • Необходимость синхронизации для корректной работы системы частиц. 15:57 Отключение функции отрисовки • Отключение функции отрисовки приводит к тому, что вызов отрисовки оказывается внутри буфера команд build graphics. • Привязка графики к графическому конвейеру corner graphics. • Закомментирование вызова draw приводит к исчезновению частиц на экране. 16:55 Влияние количества частиц • Увеличение количества частиц с 10 до 1000 не приводит к сбою приложения. • Для корректной работы требуется хотя бы одна частица. • Создание слишком большого количества частиц может привести к нехватке места на экране. 20:10 Обучение и ресурсы • Автор призывает начать изучение Vulcan языка. • Рекомендует посетить конференцию по Vulcan 2026 на YouTube. • Упоминает необходимость установки Vulcan SDK и примеров из учебников. 21:04 Требования к оборудованию • Для работы с Vulcan требуется графический процессор, поддерживающий трассировку лучей. • Рекомендуется использовать выделенную дискретную видеокарту. • Старые интегрированные видеокарты не поддерживают Vulcan по умолчанию. 22:03 Завершение
