Jump to content

OpenCL: 2D Array

From Haidhi Wiki
Revision as of 07:22, 8 January 2026 by SanzSkuy (talk | contribs)

Untuk memproses array 2D di OpenCL, kita perlu nge-flatten array 2D itu jadi 1D. Bahkan mau sampai 100D tetap perlu di-flatten ke 1D. Jadi teknik untuk memproses data yang lebih dari 1D adalah dengan cara Indexing

Misal kita buat array gini

const int W = 4;
const int H = 3;

std::vector<float> a(W * H);
std::vector<float> b(W * H);
std::vector<float> c(W * H);
    
// isi data
for (int y = 0; y < H; y++) {
    for (int x = 0; x < W; x++) {
        a[y * W + x] = y * 10 + x;
        b[y * W + x] = 1.0f;
    }
}