A 1D array is allocated if the height and depth extents are both zero.
A 2D array is allocated if only the depth extent is zero.
I would expect that calling cudaMemcpy3d on this array (with cudaExtent.depth = 0) would copy over data properly but I don’t think data is copied over correctly.
When I replace the cudaMemcpy3d calls with cudaMemcpy2d calls, I see the data is copied correctly. Is this expected behavior with cudaMemcpy3d (fails to copy anything if extent.depth = 0 and source array is created with extent.depth = 0)
This will fail because array is not a 3D Array. However, the only other relevant function for create graph Memcpy nodes is cudaGraphAddMemcpyNode1D, which does not seem to work on pitched 2D arrays.
How should I create CUDA Graph Memcpy Nodes that support 2D CUDA Arrays?