Compiles but the results are incorrect. I don’t think it’s the declaration, I’ve done a couple of basic tests (moving data to/from the shared memory and checking for consistency within the data once it’s been moved). A five point stencil operation seems to be causing the problems, I’m working my way up to it by starting with 2 point averaging.