Cuda 上三角矩阵
我想用cuda创建上三角矩阵 在上三角矩阵中,元素位于 对角线下方的D为零。此函数应指定 其他元素的给定值 但下面的代码将所有值赋值为0,为什么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
__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) { ...