Список указателей в cuda?

#list #pointers #cuda

#Список #указатели #cuda

Вопрос:

 __global__ void finalImageGathering(float3 *lists[]) {
    unsigned int x = blockIdx.x*blockDim.x   threadIdx.x;
    unsigned int y = blockIdx.y*blockDim.y   threadIdx.y;
    float3 test;
    for(int i = 0; i<Blah; i  )
        test  = lists[i][y * width   x];
}
  

Возможно ли иметь список указателей на разные списки float3, или мне нужно сделать что-то еще?

Комментарии:

1. Возможно, вы захотите сначала правильно отформатировать это и уточнить, в чем заключается ваш вопрос.

Ответ №1:

Вы можете это сделать, CUDA не накладывает особых ограничений на косвенное перенаправление указателей ни на что, кроме указателей на функции (и это ограничение в основном снято и на новейшем оборудовании). Что является более сложным, так это выделение памяти для такого массива указателей устройств и копирование его в память хоста и из нее, если вам нужно.