diff --git a/dpctl/tensor/_copy_utils.py b/dpctl/tensor/_copy_utils.py index c80733f77f..ecea9f860b 100644 --- a/dpctl/tensor/_copy_utils.py +++ b/dpctl/tensor/_copy_utils.py @@ -41,6 +41,9 @@ def _copy_to_numpy(ary): if not isinstance(ary, dpt.usm_ndarray): raise TypeError(f"Expected dpctl.tensor.usm_ndarray, got {type(ary)}") + if ary.size == 0: + # no data needs to be copied for zero sized array + return np.ndarray(ary.shape, dtype=ary.dtype) nb = ary.usm_data.nbytes q = ary.sycl_queue hh = dpm.MemoryUSMHost(nb, queue=q)