#131 Vulkan API: Подсчет очередей в семействе очередей. Пример вычислений GPU, часть 8

00:00 Введение в количество Q • Обсуждение семейств очередей на графическом процессоре. • Упоминание очередей графики, вычислений, передачи, декодирования и кодирования видео. • Объяснение, что количество Q — это количество заявок, допускаемых семейством Q. 01:18 Значение количества Q • Линии передачи данных не являются потоками или аппаратными блоками. • Большее количество Q не всегда означает больший параллелизм. • Устройство предоставляет до 16 независимых очередей отправки. 02:48 Ручки VVKQ • Драйвер графического процессора позволяет создавать до 16 ручек VVKQ. • Каждая ручка VVKQ поддерживает графику, вычисления и передачу данных. • Это не означает наличие 16 ядер или потоковых мультипроцессоров. 03:51 Сбор очередей • Очереди собираются в стопку по мере выполнения работы. • Возможность параллелизма не гарантируется. 04:15 Причины использования 16 очередей • 16 очередей используются для сокрытия задержек и разделения рабочей нагрузки. • Центральный процессор может отправлять несколько очередей VK в семейство очередей. • Графический процессор самостоятельно обрабатывает очереди. 05:35 Примеры использования очередей • Q0 может быть основной графикой, Q1 — асинхронными вычислениями, Q2 — фоновыми вычислениями. • Остальные очереди могут быть неиспользуемыми или зарезервированными для драйвера. 06:33 Независимость заявок • Заявки в QA и QB независимы друг от друга. • Графический процессор может выполнять работу с обеих сторон одновременно. • Для зависимостей между заявками используются семафоры. 07:50 Синхронизация процессов • Математическая независимость процессов не означает отсутствие необходимости синхронизации. • Синхронизация требуется при использовании общих ресурсов, таких как буферы и память. • Примеры общих ресурсов: один и тот же буфер, цепочка подкачки, привязка кадра изображения к буферу. 10:03 Синхронизация в программировании на GPU • Повторное использование буфера команд и синхронизация процессора с помощью fences. • Необходимость синхронизации при чтении и записи ресурсов. 10:20 Параллельная обработка и ресурсы • В программировании на GPU параллельная обработка требует управления ресурсами. • Важно избегать конкуренции за память, полосу пропускания и другие ресурсы. 12:05 Пример с конвейером вычислений • Конвейер вычислений для алгоритма n-body: два конвейера на вычислительной стороне и графическая часть. • Необходимость барьера между конвейерами для упорядоченного чтения и записи памяти. 13:02 Ограничения параллелизма • Создание 16 дескрипторов VKQ не гарантирует параллелизм. • Параллелизм зависит от драйвера, планировщика и графического процессора. 14:02 Управление задачами на центральном процессоре • Возможность представления 16 задач со стороны центрального процессора. • Сложности при наличии только одного показателя Q и необходимости управления порядком задач. 15:00 Установка Vulcan SDK • Рекомендации по установке Vulcan SDK и примеров. • Проверка поддержки Vulcan на графическом процессоре перед покупкой компьютера. • Упоминание о поддержке Vulcan видеокартами RTX от NVIDIA.

Иконка канала Ленинский Букварь
246 подписчиков
12+
3 просмотра
2 дня назад
12+
3 просмотра
2 дня назад

00:00 Введение в количество Q • Обсуждение семейств очередей на графическом процессоре. • Упоминание очередей графики, вычислений, передачи, декодирования и кодирования видео. • Объяснение, что количество Q — это количество заявок, допускаемых семейством Q. 01:18 Значение количества Q • Линии передачи данных не являются потоками или аппаратными блоками. • Большее количество Q не всегда означает больший параллелизм. • Устройство предоставляет до 16 независимых очередей отправки. 02:48 Ручки VVKQ • Драйвер графического процессора позволяет создавать до 16 ручек VVKQ. • Каждая ручка VVKQ поддерживает графику, вычисления и передачу данных. • Это не означает наличие 16 ядер или потоковых мультипроцессоров. 03:51 Сбор очередей • Очереди собираются в стопку по мере выполнения работы. • Возможность параллелизма не гарантируется. 04:15 Причины использования 16 очередей • 16 очередей используются для сокрытия задержек и разделения рабочей нагрузки. • Центральный процессор может отправлять несколько очередей VK в семейство очередей. • Графический процессор самостоятельно обрабатывает очереди. 05:35 Примеры использования очередей • Q0 может быть основной графикой, Q1 — асинхронными вычислениями, Q2 — фоновыми вычислениями. • Остальные очереди могут быть неиспользуемыми или зарезервированными для драйвера. 06:33 Независимость заявок • Заявки в QA и QB независимы друг от друга. • Графический процессор может выполнять работу с обеих сторон одновременно. • Для зависимостей между заявками используются семафоры. 07:50 Синхронизация процессов • Математическая независимость процессов не означает отсутствие необходимости синхронизации. • Синхронизация требуется при использовании общих ресурсов, таких как буферы и память. • Примеры общих ресурсов: один и тот же буфер, цепочка подкачки, привязка кадра изображения к буферу. 10:03 Синхронизация в программировании на GPU • Повторное использование буфера команд и синхронизация процессора с помощью fences. • Необходимость синхронизации при чтении и записи ресурсов. 10:20 Параллельная обработка и ресурсы • В программировании на GPU параллельная обработка требует управления ресурсами. • Важно избегать конкуренции за память, полосу пропускания и другие ресурсы. 12:05 Пример с конвейером вычислений • Конвейер вычислений для алгоритма n-body: два конвейера на вычислительной стороне и графическая часть. • Необходимость барьера между конвейерами для упорядоченного чтения и записи памяти. 13:02 Ограничения параллелизма • Создание 16 дескрипторов VKQ не гарантирует параллелизм. • Параллелизм зависит от драйвера, планировщика и графического процессора. 14:02 Управление задачами на центральном процессоре • Возможность представления 16 задач со стороны центрального процессора. • Сложности при наличии только одного показателя Q и необходимости управления порядком задач. 15:00 Установка Vulcan SDK • Рекомендации по установке Vulcan SDK и примеров. • Проверка поддержки Vulcan на графическом процессоре перед покупкой компьютера. • Упоминание о поддержке Vulcan видеокартами RTX от NVIDIA.

, чтобы оставлять комментарии