Nvidia GPUDirect и захват камеры на GPU

У меня есть камера USB3, и мне нужно иметь захваченные изображения для загрузки в текстуру DirectX. В настоящее время я просто делаю это в своем коде в пользовательском режиме - собираю изображения и загружаю их в графический процессор, что, конечно, приводит к определенным накладным расходам на ЦП и задержке в ~5-7 миллисекунд.

На новом ПК установлена ​​видеокарта Nvidia Quadro, которая поддерживает GPUDirectНасколько я понимаю, это позволяет быстрее разделять память между графическим процессором и процессором, но я не уверен, как мне воспользоваться этим. Для того, чтобы захватывать изображения непосредственно в буферы GPU, драйвер камеры должен его поддерживать? Или это то, что я могу настроить в своем коде?

1 ответ

Ваша предпосылка неверна

как я понимаю, это позволяет быстрее разделять память между GPU и CPU

GPUDirect - это технология NVIDIA, которая поддерживает передачу данных с PCI на PCI между устройствами, а не между процессором и графическим процессором. Фактически он удаляет копию процессора при передаче данных между двумя устройствами PCI.

Для использования GPUDirect в вашем случае вам необходимо иметь карту захвата, которая будет подключена через PCI (ваша камера будет подключена к карте захвата). Затем вы можете передавать кадры непосредственно в графический процессор.

Не могу комментировать, если это будет быстрее, чем передача по USB.

Другие вопросы по тегам