Я новичок в языке CUDA, и мне нужно выполнить моделирование частиц, которые обновляются на каждом временном шаге, добавляя случайное значение к их положению (отличающееся друг от друга, но с одинаковым распределением).
Моя идея состоит в том, чтобы дать каждой частице другое curandState (с другим начальным числом) и на каждом временном шаге просто делать curand(curandState[particle_id]).
Я думал, что смогу хранить случайные состояния и идентификаторы частиц в постоянной памяти графического процессора. Но я нигде не видел, чтобы кто-то так делал, вызовет ли это проблемы с памятью? Может ли это ускорить программу?
Спасибо за помощь :)