Комментировать

Вообще-то, 2^32 даже int-ов

Вообще-то, 2^32 даже int-ов (а меньше - нет смысла) - это 16 гигабайт данных.

Кроме того, на OpenCL существует дурацкое ограничение в 1/4 памяти прибора (никогда в него не упирался, поэтому до сих пор не знаю - это на одну аллокацию или на все аллокации одного kernel, но сдается мне что на юнит исполнения, чтобы асинхронность обеспечить),

Как следствие, вы в реальности в ограничение 2^32 вряд-ли упретесь, а упретесь гораздо раньше в другие ограничения.