From 6a3d9e8306eb0304520d8e9c1902306b988f479a Mon Sep 17 00:00:00 2001 From: Oleksandr Pavlyk Date: Fri, 23 Aug 2024 08:40:03 -0500 Subject: [PATCH 1/2] Order copy into order='K' allocation task after tasks populating source array --- dpctl/tensor/_ctors.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/dpctl/tensor/_ctors.py b/dpctl/tensor/_ctors.py index 288390d34d..9e85a3bf59 100644 --- a/dpctl/tensor/_ctors.py +++ b/dpctl/tensor/_ctors.py @@ -1472,9 +1472,10 @@ def full_like( X = dpt.broadcast_to(X, sh) res = _empty_like_orderK(x, dtype, usm_type, sycl_queue) _manager = dpctl.utils.SequentialOrderManager[sycl_queue] - # populating new allocation, no dependent events + # order copy after tasks populating X + dep_evs = _manager.submitted_events hev, copy_ev = ti._copy_usm_ndarray_into_usm_ndarray( - src=X, dst=res, sycl_queue=sycl_queue + src=X, dst=res, sycl_queue=sycl_queue, depends=dep_evs ) _manager.add_event_pair(hev, copy_ev) return res From edf97c66c8576d06dc49db1522467ea30ca312fc Mon Sep 17 00:00:00 2001 From: Oleksandr Pavlyk Date: Fri, 23 Aug 2024 08:41:42 -0500 Subject: [PATCH 2/2] Correct commend in usm_ndarray_full pybind11 function --- dpctl/tensor/libtensor/source/full_ctor.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dpctl/tensor/libtensor/source/full_ctor.cpp b/dpctl/tensor/libtensor/source/full_ctor.cpp index 738a0d0a5f..27d8345bf6 100644 --- a/dpctl/tensor/libtensor/source/full_ctor.cpp +++ b/dpctl/tensor/libtensor/source/full_ctor.cpp @@ -215,7 +215,7 @@ usm_ndarray_full(const py::object &py_value, sycl::queue &exec_q, const std::vector &depends) { - // start, end should be coercible into data type of dst + // py_value should be coercible into data type of dst py::ssize_t dst_nelems = dst.get_size();