@@ -838,6 +838,10 @@ <h1>Source code for dpctl.tensor._ctors</h1><div class="highlight"><pre>
838838 < span class ="k "> if</ span > < span class ="n "> _is_object_with_buffer_protocol</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> ):</ span >
839839 < span class ="n "> np_obj</ span > < span class ="o "> =</ span > < span class ="n "> np</ span > < span class ="o "> .</ span > < span class ="n "> array</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> )</ span >
840840 < span class ="k "> return</ span > < span class ="n "> np_obj</ span > < span class ="o "> .</ span > < span class ="n "> shape</ span > < span class ="p "> ,</ span > < span class ="n "> np_obj</ span > < span class ="o "> .</ span > < span class ="n "> dtype</ span > < span class ="p "> ,</ span > < span class ="n "> _host_set</ span >
841+ < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__usm_ndarray__"</ span > < span class ="p "> ):</ span >
842+ < span class ="n "> usm_ar</ span > < span class ="o "> =</ span > < span class ="nb "> getattr</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__usm_ndarray__"</ span > < span class ="p "> )</ span >
843+ < span class ="k "> if</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> usm_ar</ span > < span class ="p "> ,</ span > < span class ="n "> dpt</ span > < span class ="o "> .</ span > < span class ="n "> usm_ndarray</ span > < span class ="p "> ):</ span >
844+ < span class ="k "> return</ span > < span class ="n "> usm_ar</ span > < span class ="o "> .</ span > < span class ="n "> shape</ span > < span class ="p "> ,</ span > < span class ="n "> usm_ar</ span > < span class ="o "> .</ span > < span class ="n "> dtype</ span > < span class ="p "> ,</ span > < span class ="nb "> frozenset</ span > < span class ="p "> ([</ span > < span class ="n "> usm_ar</ span > < span class ="o "> .</ span > < span class ="n "> sycl_queue</ span > < span class ="p "> ])</ span >
841845 < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__sycl_usm_array_interface__"</ span > < span class ="p "> ):</ span >
842846 < span class ="n "> usm_ar</ span > < span class ="o "> =</ span > < span class ="n "> _usm_ndarray_from_suai</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> )</ span >
843847 < span class ="k "> return</ span > < span class ="n "> usm_ar</ span > < span class ="o "> .</ span > < span class ="n "> shape</ span > < span class ="p "> ,</ span > < span class ="n "> usm_ar</ span > < span class ="o "> .</ span > < span class ="n "> dtype</ span > < span class ="p "> ,</ span > < span class ="nb "> frozenset</ span > < span class ="p "> ([</ span > < span class ="n "> usm_ar</ span > < span class ="o "> .</ span > < span class ="n "> sycl_queue</ span > < span class ="p "> ])</ span >
@@ -1083,6 +1087,11 @@ <h1>Source code for dpctl.tensor._ctors</h1><div class="highlight"><pre>
10831087 < span class ="k "> if</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> o</ span > < span class ="p "> ,</ span > < span class ="n "> dpt</ span > < span class ="o "> .</ span > < span class ="n "> usm_ndarray</ span > < span class ="p "> ):</ span >
10841088 < span class ="n "> usm_types_list</ span > < span class ="o "> .</ span > < span class ="n "> append</ span > < span class ="p "> (</ span > < span class ="n "> o</ span > < span class ="o "> .</ span > < span class ="n "> usm_type</ span > < span class ="p "> )</ span >
10851089 < span class ="k "> return</ span >
1090+ < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> o</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__usm_ndarray__"</ span > < span class ="p "> ):</ span >
1091+ < span class ="n "> usm_arr</ span > < span class ="o "> =</ span > < span class ="nb "> getattr</ span > < span class ="p "> (</ span > < span class ="n "> o</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__usm_ndarray__"</ span > < span class ="p "> )</ span >
1092+ < span class ="k "> if</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> usm_arr</ span > < span class ="p "> ,</ span > < span class ="n "> dpt</ span > < span class ="o "> .</ span > < span class ="n "> usm_ndarray</ span > < span class ="p "> ):</ span >
1093+ < span class ="n "> usm_types_list</ span > < span class ="o "> .</ span > < span class ="n "> append</ span > < span class ="p "> (</ span > < span class ="n "> usm_arr</ span > < span class ="o "> .</ span > < span class ="n "> usm_type</ span > < span class ="p "> )</ span >
1094+ < span class ="k "> return</ span >
10861095 < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> o</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__sycl_usm_array_interface__"</ span > < span class ="p "> ):</ span >
10871096 < span class ="n "> usm_ar</ span > < span class ="o "> =</ span > < span class ="n "> _usm_ndarray_from_suai</ span > < span class ="p "> (</ span > < span class ="n "> o</ span > < span class ="p "> )</ span >
10881097 < span class ="n "> usm_types_list</ span > < span class ="o "> .</ span > < span class ="n "> append</ span > < span class ="p "> (</ span > < span class ="n "> usm_ar</ span > < span class ="o "> .</ span > < span class ="n "> usm_type</ span > < span class ="p "> )</ span >
@@ -1107,6 +1116,11 @@ <h1>Source code for dpctl.tensor._ctors</h1><div class="highlight"><pre>
11071116 < span class ="p "> )</ span >
11081117 < span class ="n "> _manager</ span > < span class ="o "> .</ span > < span class ="n "> add_event_pair</ span > < span class ="p "> (</ span > < span class ="n "> ht_ev</ span > < span class ="p "> ,</ span > < span class ="n "> cpy_ev</ span > < span class ="p "> )</ span >
11091118 < span class ="k "> return</ span >
1119+ < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> seq_o</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__usm_ndarray__"</ span > < span class ="p "> ):</ span >
1120+ < span class ="n "> usm_arr</ span > < span class ="o "> =</ span > < span class ="nb "> getattr</ span > < span class ="p "> (</ span > < span class ="n "> seq_o</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__usm_ndarray__"</ span > < span class ="p "> )</ span >
1121+ < span class ="k "> if</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> usm_arr</ span > < span class ="p "> ,</ span > < span class ="n "> dpt</ span > < span class ="o "> .</ span > < span class ="n "> usm_ndarray</ span > < span class ="p "> ):</ span >
1122+ < span class ="n "> _device_copy_walker</ span > < span class ="p "> (</ span > < span class ="n "> usm_arr</ span > < span class ="p "> ,</ span > < span class ="n "> res</ span > < span class ="p "> ,</ span > < span class ="n "> _manager</ span > < span class ="p "> )</ span >
1123+ < span class ="k "> return</ span >
11101124 < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> seq_o</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__sycl_usm_array_interface__"</ span > < span class ="p "> ):</ span >
11111125 < span class ="n "> usm_ar</ span > < span class ="o "> =</ span > < span class ="n "> _usm_ndarray_from_suai</ span > < span class ="p "> (</ span > < span class ="n "> seq_o</ span > < span class ="p "> )</ span >
11121126 < span class ="n "> exec_q</ span > < span class ="o "> =</ span > < span class ="n "> res</ span > < span class ="o "> .</ span > < span class ="n "> sycl_queue</ span >
@@ -1138,6 +1152,11 @@ <h1>Source code for dpctl.tensor._ctors</h1><div class="highlight"><pre>
11381152 < span class ="k "> return</ span >
11391153 < span class ="k "> else</ span > < span class ="p "> :</ span >
11401154 < span class ="n "> usm_res</ span > < span class ="p "> [</ span > < span class ="o "> ...</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> seq_o</ span >
1155+ < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> seq_o</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__usm_ndarray__"</ span > < span class ="p "> ):</ span >
1156+ < span class ="n "> usm_arr</ span > < span class ="o "> =</ span > < span class ="nb "> getattr</ span > < span class ="p "> (</ span > < span class ="n "> seq_o</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__usm_ndarray__"</ span > < span class ="p "> )</ span >
1157+ < span class ="k "> if</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> usm_arr</ span > < span class ="p "> ,</ span > < span class ="n "> dpt</ span > < span class ="o "> .</ span > < span class ="n "> usm_ndarray</ span > < span class ="p "> ):</ span >
1158+ < span class ="n "> _copy_through_host_walker</ span > < span class ="p "> (</ span > < span class ="n "> usm_arr</ span > < span class ="p "> ,</ span > < span class ="n "> usm_res</ span > < span class ="p "> )</ span >
1159+ < span class ="k "> return</ span >
11411160 < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> seq_o</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__sycl_usm_array_interface__"</ span > < span class ="p "> ):</ span >
11421161 < span class ="n "> usm_ar</ span > < span class ="o "> =</ span > < span class ="n "> _usm_ndarray_from_suai</ span > < span class ="p "> (</ span > < span class ="n "> seq_o</ span > < span class ="p "> )</ span >
11431162 < span class ="k "> if</ span > < span class ="p "> (</ span >
@@ -1341,6 +1360,17 @@ <h1>Source code for dpctl.tensor._ctors</h1><div class="highlight"><pre>
13411360 < span class ="n "> sycl_queue</ span > < span class ="o "> =</ span > < span class ="n "> sycl_queue</ span > < span class ="p "> ,</ span >
13421361 < span class ="n "> order</ span > < span class ="o "> =</ span > < span class ="n "> order</ span > < span class ="p "> ,</ span >
13431362 < span class ="p "> )</ span >
1363+ < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__usm_ndarray__"</ span > < span class ="p "> ):</ span >
1364+ < span class ="n "> usm_arr</ span > < span class ="o "> =</ span > < span class ="nb "> getattr</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__usm_ndarray__"</ span > < span class ="p "> )</ span >
1365+ < span class ="k "> if</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> usm_arr</ span > < span class ="p "> ,</ span > < span class ="n "> dpt</ span > < span class ="o "> .</ span > < span class ="n "> usm_ndarray</ span > < span class ="p "> ):</ span >
1366+ < span class ="k "> return</ span > < span class ="n "> _asarray_from_usm_ndarray</ span > < span class ="p "> (</ span >
1367+ < span class ="n "> usm_arr</ span > < span class ="p "> ,</ span >
1368+ < span class ="n "> dtype</ span > < span class ="o "> =</ span > < span class ="n "> dtype</ span > < span class ="p "> ,</ span >
1369+ < span class ="n "> copy</ span > < span class ="o "> =</ span > < span class ="n "> copy</ span > < span class ="p "> ,</ span >
1370+ < span class ="n "> usm_type</ span > < span class ="o "> =</ span > < span class ="n "> usm_type</ span > < span class ="p "> ,</ span >
1371+ < span class ="n "> sycl_queue</ span > < span class ="o "> =</ span > < span class ="n "> sycl_queue</ span > < span class ="p "> ,</ span >
1372+ < span class ="n "> order</ span > < span class ="o "> =</ span > < span class ="n "> order</ span > < span class ="p "> ,</ span >
1373+ < span class ="p "> )</ span >
13441374 < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> ,</ span > < span class ="s2 "> "__sycl_usm_array_interface__"</ span > < span class ="p "> ):</ span >
13451375 < span class ="n "> ary</ span > < span class ="o "> =</ span > < span class ="n "> _usm_ndarray_from_suai</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> )</ span >
13461376 < span class ="k "> return</ span > < span class ="n "> _asarray_from_usm_ndarray</ span > < span class ="p "> (</ span >
0 commit comments