CUDA: использование разделяемой памяти между разными ядрами - PullRequest
2 голосов
/ 15 апреля 2011

Возможно ли это?Я пытаюсь определить массив общей памяти в одном ядре ... и затем мне нужно использовать эти значения в другом ядре.

Я попытался объявить

extern __shared__ float sharedMem[];

вне всех функций изатем записал его в одно ядро ​​и попытался получить к нему доступ в другом ядре.Массив sharedMem is правильно записан в первом ядре, но когда я пытаюсь получить доступ к нему во втором ядре, все значения равны 0. Поэтому я предполагаю, что это не сработает, или я делаю что-то не так.

Может кто-нибудь помочь мне с этим?

1 Ответ

3 голосов
/ 16 апреля 2011

Вы правы, общая память не сохраняется при вызовах ядра.Вместо этого вы должны использовать глобальную память (или текстурную память) и загружать ее в общую память при каждом вызове ядра.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...