#stack #cuda
#стек #cuda
Вопрос:
Я пытаюсь реализовать стек, в который я могу вставлять значения (x, y) и pop.
Я просмотрел весь форум Nvidia, однако я вижу, что в любом случае можно найти способ реализации стека.
Если бы кто-нибудь мог показать простейший пример, который был бы очень полезен!
Спасибо.
Комментарии:
1. Я не думаю, что реализация стека для CUDA отличается от того, что у вас есть в обычном C . Просто имейте в виду, что ваш стек будет размещен в оперативной памяти карты, а это не очень быстрая память
2. Какова область стека? Уровень потока, уровень блока или уровень сетки?
3. Среда CUDA сильно отличается от традиционного хост-ПК. Стек, вероятно, будет работать очень плохо. Не пытайтесь просто перенести существующие алгоритмы на CUDA. Абстрагируйтесь от реализации и определите однородные задачи, которые могут быть выполнены с помощью масштабного распараллеливания.
4. Стек? Это последовательный. Если у вас нет большого количества стеков (по крайней мере, по одному на блок), структура данных не является оптимальной для архитектуры. Что вы пытаетесь решить?
Ответ №1:
Подумайте, действительно ли ваш стек является структурой данных, которая будет быстрой и массово параллельной? Если да, вы должны быть в состоянии реализовать в CUDA, точно так же, как вы бы сделали это в C.