Выделяет ли cudaHostAllocMapped буфер на устройстве?

Документация за cudaHostAlloc() говорит, что с cudaHostAllocMapped Отметьте, что это распределяет закрепленную память на хосте и «Отображает распределение в адресное пространство CUDA». Значит ли это, что зеркальный буфер тоже выделяется на устройстве? Либо во время cudaHostAlloc() или же cudaHostGetDevicePointer() вызов.
Или устройство связывается с памятью хоста при каждом доступе к указателю, возвращенному cudaHostGetDevicePointer() ?

Этот вопрос отличается от Когда использовать cudaHostRegister () и cudaHostAlloc ()? Каково значение "Закреплены или заблокированы на странице" объем памяти? Каковы эквиваленты в OpenCL? потому что я не спрашиваю, что такое API, когда их использовать или что закреплено в памяти. Я спрашиваю конкретно, выделен ли зеркальный буфер на GPU или нет.

1

Решение

«Зеркальный» буфер не выделен.

Когда код устройства использует указатель, который относится к отображенной памяти хоста, тогда устройство чтения или записи с использованием этого указателя будет генерировать трафик PCIE для передачи данных в / из памяти хоста для обслуживания чтения или записи.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]