Приколол память OpenCL, кто-нибудь успешно пользовался?

Я использовал флаг CL_MEM_ALLOC_HOST_PTR со своими вызовами clCreateBuffer, но Compute Profiler показывает все мои «типы передачи памяти хоста» как Pageable. Я попробовал это с двумя разными настройками ядра, но профилировщик не показал, что я использую закрепленную память.

Это действительно случайно, когда ядро ​​​​использует закрепленную память? Оно чем-то ограничено? Я предполагаю, что размер буфера имеет значение. Я попробовал один буфер размером 10 000 чисел с плавающей запятой, и у меня все еще была память Pageable. Дайте мне знать, что вы все думаете.


person smuggledPancakes    schedule 20.10.2010    source источник


Ответы (1)


Если вы посмотрите руководство по программированию OpenCL (3.1), в разделе 3.3.1 упоминается, что OpenCL теперь имеет контроль над тем, выделяются ли объекты памяти закрепленными или нет. Вы можете только ПОПЫТАТЬСЯ создать их, используя CL_MEM_ALLOC_HOST_PTR.

person count0    schedule 19.11.2010