syoon
1
in one example from NVIDIA that i’m looking at has the following;
global void kernel ( Grid P, Grid R, …)
{
int i = blockIdx.xblockDim.x + threadIdx.x;
int j = blockIdx.yblockDim.y + threadIdx.y;
int k = blockIdx.z*blockDim.z + threadIdx.z;
int idx = iR.istride + jR.jstride + k;
}
I know threadIdx.x is built in variables like threadIdx.y and threadIdx.z…
Is R.stride also a built-in variable ?
or, its just saying i need some kind of looping for R that didnt show-up in the example to make it simple…
any comments are appreciated and thanks in advance.
the example is from “Optimizing Memory Performance : Gauss-Seidel Solver” from NVIDIA.
syoon
2
in one example from NVIDIA that i’m looking at has the following;
global void kernel ( Grid P, Grid R, …)
{
int i = blockIdx.xblockDim.x + threadIdx.x;
int j = blockIdx.yblockDim.y + threadIdx.y;
int k = blockIdx.z*blockDim.z + threadIdx.z;
int idx = iR.istride + jR.jstride + k;
}
I know threadIdx.x is built in variables like threadIdx.y and threadIdx.z…
Is R.stride also a built-in variable ?
or, its just saying i need some kind of looping for R that didnt show-up in the example to make it simple…
any comments are appreciated and thanks in advance.
the example is from “Optimizing Memory Performance : Gauss-Seidel Solver” from NVIDIA.
tera
3
No, R is an argument of that kernel:
global void kernel ( Grid P, Grid R, …)
tera
4
No, R is an argument of that kernel:
global void kernel ( Grid P, Grid R, …)