As I understand, the size of pitch of cudaPitchedPtr should be xsize*sizeof(typedata) which means pitch is not equal to xsize if typedata is greater than 1.
// widthSize = 64, heightSize = 64 cudaExtent pitchedVolSize = make_cudaExtent(widthSize*sizeof(float4), widthSize, heightSize); CUDA_SAFE_CALL(cudaMalloc3D(&writeablePitch, pitchedVolSize)); printf("%d, %d", writeablePitch.pitch, writeablePitch.xsize); // here, it prints out 1024, 1024
I don’t know why the xsize is 1024, as I think it should be 64.
Am i missing anything??
thanks in advance!