Closed vlad-perevezentsev closed 1 month ago
When I try to pass an input array with negative strides along with values as scalar (usm_ndarray) I get a RuntimeError: USM-host allocation failure while with positive strides dpt.searchsorted works
RuntimeError: USM-host allocation failure
dpt.searchsorted
import dpctl.tensor as dpt a = dpt.asarray([1,2,3]) a.strides >>> (1,) v = dpt.asarray(1) dpt.searchsorted(a,v) >>> usm_ndarray(0) a = dpt.asarray([3,2,1])[::-1] a.strides >>> (-1,) dpt.searchsorted(a,v) --------------------------------------------------------------------------- RuntimeError Traceback (most recent call last) Cell In[14], line 1 ----> 1 dpt.searchsorted(a,v) File ~/miniconda3/envs/test/lib/python3.10/site-packages/dpctl/tensor/_searchsorted.py:153, in searchsorted(x1, x2, side, sorter) 150 dst = _empty_like_orderK(x2, index_dt, usm_type=dst_usm_type) 152 if side == "left": --> 153 ht_ev, _ = _searchsorted_left( 154 hay=x1, 155 needles=x2, 156 positions=dst, 157 sycl_queue=q, 158 depends=[ 159 ev, 160 ], 161 ) 162 else: 163 ht_ev, _ = _searchsorted_right( 164 hay=x1, 165 needles=x2, (...) 170 ], 171 ) RuntimeError: USM-host allocation failure
If values are usm_ndarray 1-D array dpt.searchsorted works correctly
import dpctl.tensor as dpt a = dpt.asarray([3,2,1])[::-1] a.strides >>> (-1,) v = dpt.asarray([1]) >>> usm_ndarray([0])
When I try to pass an input array with negative strides along with values as scalar (usm_ndarray) I get a
RuntimeError: USM-host allocation failure
while with positive stridesdpt.searchsorted
worksIf values are usm_ndarray 1-D array
dpt.searchsorted
works correctlyEnvironment details
```bash $ conda list # Name Version Build Channel _libgcc_mutex 0.1 conda_forge conda-forge _openmp_mutex 4.5 2_gnu conda-forge _sysroot_linux-64_curr_repodata_hack 3 h69a702a_14 conda-forge astroid 3.1.0 pypi_0 pypi asttokens 2.4.1 pyhd8ed1ab_0 conda-forge attrs 23.2.0 pypi_0 pypi bandit 1.7.8 pypi_0 pypi black 23.12.1 pypi_0 pypi boto3 1.34.88 pypi_0 pypi botocore 1.34.88 pypi_0 pypi bzip2 1.0.8 hd590300_5 conda-forge c-ares 1.28.1 hd590300_0 conda-forge ca-certificates 2024.3.11 h06a4308_0 cachetools 5.3.3 pypi_0 pypi certifi 2024.2.2 pypi_0 pypi cfgv 3.4.0 pypi_0 pypi charset-normalizer 3.3.2 pypi_0 pypi clang-format 12.0.1.2 pypi_0 pypi click 8.1.7 pypi_0 pypi cmake 3.29.2 hcfe8598_0 conda-forge colorama 0.4.6 pyhd8ed1ab_0 conda-forge cython 3.0.10 py310hc6cd4ac_0 conda-forge decorator 5.1.1 pyhd8ed1ab_0 conda-forge dill 0.3.8 pypi_0 pypi distlib 0.3.8 pypi_0 pypi distro 1.9.0 pyhd8ed1ab_0 conda-forge dpcpp-cpp-rt 2024.2.0 intel_455 http://satpkgserver.an.intel.com:8081 dpcpp-sycl-rt 2024.2.0 intel_455 http://satpkgserver.an.intel.com:8081 dpcpp_cpp_rt 2024.2.0 intel_455 http://satpkgserver.an.intel.com:8081 dpcpp_impl_linux-64 2024.2.0 intel_455 http://satpkgserver.an.intel.com:8081 dpcpp_linux-64 2024.2.0 intel_455 http://satpkgserver.an.intel.com:8081 dpctl 0.18.0dev0 py310h15de555_6 dppy/label/dev dpnp 0.15.0.dev1+75.gb988e9c4df.dirty dev_0