указатели openCL в устройстве Переполнение стека

У меня есть две матрицы, которые я копирую на устройство, и я хочу использовать одну в качестве текущего состояния, а другую — в качестве следующего состояния и поменять местами указатели между ними. Как я могу создать 2 указателя внутри устройства, которые указывают на эти матрицы в глобальной памяти внутри устройства? Спасибо

0

Решение

Просто сделайте это, как в обычном C. Но помните, указатель действителен только в пределах ядра.

Пример:

__kernel void mykernel(__global int *A, __global int *B, __global int *C)
{
int id = get_global_id(0);
__global int * p;
if(A[id] > 10){
p = A;
}else{
p = B;
}
C[id] = p[id];
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector