Настроить локальную (общую) память для OpenCL с использованием платформ Nvidia

Я хочу оптимизировать мой шаблон доступа к локальной памяти в моем ядре OpenCL. Я где-то читал о настраиваемой локальной памяти. Например, мы должны быть в состоянии настроить, какое количество используется для локальной памяти и какое количество используется для автоматического кэширования.

Также я прочитал, что размер банка можно выбрать для новейшего (Kepler) оборудования Nvidia здесь: http://www.acceleware.com/blog/maximizing-shared-memory-bandwidth-nvidia-kepler-gpus. Этот момент представляется очень важным для хранения значений двойной точности в локальной памяти.

Предоставляет ли Nvidia возможность настройки локальной памяти исключительно для пользователей CUDA? Я не могу найти похожие методы для OpenCL. Так это может быть вызвано по-другому или это действительно не существует?

1 ответ

Решение

К сожалению, при использовании OpenCL невозможно управлять конфигурацией кеша / локальной памяти L1. Эта функциональность предоставляется только во время выполнения CUDA (через cudaDeviceSetCacheConfig или же cudaFuncSetCacheConfig).

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