code: def test_copyto_multigpu_noncontinguous(self, dtype):
      with cuda.Device(0):
          src = testing.shaped_arange((2, 3, 4), cupy, dtype)
          src = src.swapaxes(0, 1)
      with cuda.Device(1):
          dst = cupy.empty_like(src)
          cupy.copyto(dst, src)
  
      expected = testing.shaped_arange((2, 3, 4), numpy, dtype)
      expected = expected.swapaxes(0, 1)
  
      testing.assert_array_equal(expected, src.get())
      testing.assert_array_equal(expected, dst.get())
  
imports: import itertools
  import warnings
  import numpy
  import pytest
  import cupy
  from cupy import cuda
  from cupy import testing
label_desc: Use image node_id 17 for calling the TestBasic obj's underlying member method code with example usage: obj.test_copyto_multigpu_noncontinguous(dtype) without return types