def test_ascontiguousarray_with_device(device, shape, padding, dtype): obj = array_utils.create_dummy_ndarray( chainerx, shape, dtype, padding=padding) a = chainerx.ascontiguousarray(obj, device=device) b = chainerx.ascontiguousarray(obj) array_utils.check_device(a, device) assert a.is_contiguous chainerx.testing.assert_array_equal_ex(a, b)
def test_ascontiguousarray_with_device(device, shape, padding, dtype): obj = array_utils.create_dummy_ndarray( chainerx, shape, dtype, padding=padding) a = chainerx.ascontiguousarray(obj, device=device) b = chainerx.ascontiguousarray(obj) array_utils.check_device(a, device) assert a.is_contiguous chainerx.testing.assert_array_equal_ex(a, b)
def test_ascontiguousarray_from_chainerx_array(device, shape, dtype, padding): np_arr = array_utils.create_dummy_ndarray( numpy, shape, dtype, padding=padding) obj = chainerx.testing._fromnumpy(np_arr, keepstrides=True, device=device) a = chainerx.ascontiguousarray(obj) if not padding and shape != (): # () will be reshaped to (1,) assert a is obj e = chainerx.ascontiguousarray(np_arr) chainerx.testing.assert_array_equal_ex(e, a, strides_check=False) assert a.is_contiguous assert e.dtype.name == a.dtype.name
def test_ascontiguousarray_from_chainerx_array(device, shape, dtype, padding): np_arr = array_utils.create_dummy_ndarray( numpy, shape, dtype, padding=padding) obj = chainerx.testing._fromnumpy(np_arr, keepstrides=True, device=device) a = chainerx.ascontiguousarray(obj) if not padding and shape != (): # () will be reshaped to (1,) assert a is obj e = chainerx.ascontiguousarray(np_arr) chainerx.testing.assert_array_equal_ex(e, a, strides_check=False) assert a.is_contiguous assert e.dtype.name == a.dtype.name
def test_ascontiguousarray_from_chainerx_array_device(): with chainerx.using_device(chainerx.get_device('native:0')): dev = chainerx.get_device('native:1') # Non default one assert chainerx.get_default_device() is not dev a = chainerx.arange(10, device=dev) b = chainerx.ascontiguousarray(a) assert b.is_contiguous is True assert b.device is dev