Cuda 上三角矩阵

Cuda 上三角矩阵,cuda,Cuda,我想用cuda创建上三角矩阵 在上三角矩阵中,元素位于 对角线下方的D为零。此函数应指定 其他元素的给定值 但下面的代码将所有值赋值为0,为什么 __global__ void initUpperTrinagleGPU(int *devMatrix, int numR, int numC, int value) { int x = blockDim.x*blockIdx.x + threadIdx.x; int y = blockDim.y*blockIdx.y + thread

我想用cuda创建上三角矩阵

在上三角矩阵中,元素位于 对角线下方的D为零。此函数应指定 其他元素的给定值

但下面的代码将所有值赋值为0,为什么

__global__ void initUpperTrinagleGPU(int *devMatrix, int numR, int numC, int value) {
    int x = blockDim.x*blockIdx.x + threadIdx.x;
    int y = blockDim.y*blockIdx.y + threadIdx.y;

    int offset = y * numC + x;

    if(numC <= numR) {
        devMatrix[offset] = 0;
    }
    else
        devMatrix[offset] = value;
}
\uuuuu全局\uuuuuvoid initUpperTrinagleGPU(int*devMatrix,int-numR,int-numC,int-value){
intx=blockDim.x*blockIdx.x+threadIdx.x;
int y=blockDim.y*blockIdx.y+threadIdx.y;
int offset=y*numC+x;

if(numC此条件是错误的
if(numC
if(x >= y) {
    devMatrix[offset] = 0;
}
else {
    devMatrix[offset] = value;
}
if(y < numR && x < numC) { ...