Halide :: Буфер на GPU - PullRequest
       26

Halide :: Буфер на GPU

0 голосов
/ 12 июня 2018

У меня уже есть приложение, которое принимает входные изображения, копирует их в графический процессор, а затем к этому изображению применяются некоторые фильтры CUDA.Поэтому, когда я хочу реализовать новый фильтр, я пишу только сам фильтр (т.е. ядро), поскольку логика копирования CPU-GPU уже существует.

Теперь я хочу попробовать Halide для написания фильтров изображений для CUDA, и я столкнулся с проблемой, что Halide :: Buffer, который представляет входное изображение, выделяется на CPU, поэтому мне придется изменить существующее копированиелогика.

Есть ли способ инициализировать Halide :: Buffer с данными, которые уже находятся на GPU, и избежать дополнительного копирования.

1 Ответ

0 голосов
/ 13 июня 2018

Да, вы можете создать буфер без выделения хоста правильного размера с помощью конструктора Halide :: Buffer (nullptr, ... sizes ...), а затем вызвать Buffer :: device_wrap_native, чтобы связать указатель cuda сэто.

...