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

Пример

Здравствуйте

есть еще такой вопрос

возможна ли такая комбинация

i = blockIdx.x * BlockDim.x + threadIdx.x

C[ i ] = A[ i -1 ] + B[ i+1 ];
для всех i пренадлежащих одному блоку

(Если нет) Как лучше считать такое выражение?;
1. считать смежные ячейки все время в SHARED ?
2. или постоянно загружать в глобальную память после обмена в SHARED и считать там?
N порядка 100 000 double complex

3. уменьшить обмены таким образом

for(j=0 ; j < M ; j++ ) {
C[ i + j ] = A[ i - 1 + j ] + B[ i + 1 + j ];
}
т.е. на каждом треде последовательно выполняется часть сетки, а не одна ячейка.

спасибо