Skip to content

Commit d5944e6

Browse files
author
github-actions[doc-deploy-bot]
committed
Latest docs.
1 parent ec20205 commit d5944e6

File tree

5 files changed

+50
-10
lines changed

5 files changed

+50
-10
lines changed

master/_modules/dpctl/tensor/_indexing_functions.html

Lines changed: 45 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -823,8 +823,8 @@ <h1>Source code for dpctl.tensor._indexing_functions</h1><div class="highlight">
823823
<span class="p">)</span>
824824

825825

826-
<div class="viewcode-block" id="take"><a class="viewcode-back" href="../../../api_reference/dpctl/generated/dpctl.tensor.take.html#dpctl.tensor.take">[docs]</a><span class="k">def</span><span class="w"> </span><span class="nf">take</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">indices</span><span class="p">,</span> <span class="o">/</span><span class="p">,</span> <span class="o">*</span><span class="p">,</span> <span class="n">axis</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">mode</span><span class="o">=</span><span class="s2">&quot;wrap&quot;</span><span class="p">):</span>
827-
<span class="w"> </span><span class="sd">&quot;&quot;&quot;take(x, indices, axis=None, mode=&quot;wrap&quot;)</span>
826+
<div class="viewcode-block" id="take"><a class="viewcode-back" href="../../../api_reference/dpctl/generated/dpctl.tensor.take.html#dpctl.tensor.take">[docs]</a><span class="k">def</span><span class="w"> </span><span class="nf">take</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">indices</span><span class="p">,</span> <span class="o">/</span><span class="p">,</span> <span class="o">*</span><span class="p">,</span> <span class="n">axis</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">out</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">mode</span><span class="o">=</span><span class="s2">&quot;wrap&quot;</span><span class="p">):</span>
827+
<span class="w"> </span><span class="sd">&quot;&quot;&quot;take(x, indices, axis=None, out=None, mode=&quot;wrap&quot;)</span>
828828

829829
<span class="sd"> Takes elements from an array along a given axis at given indices.</span>
830830

@@ -837,6 +837,9 @@ <h1>Source code for dpctl.tensor._indexing_functions</h1><div class="highlight">
837837
<span class="sd"> The axis along which the values will be selected.</span>
838838
<span class="sd"> If ``x`` is one-dimensional, this argument is optional.</span>
839839
<span class="sd"> Default: ``None``.</span>
840+
<span class="sd"> out (Optional[usm_ndarray]):</span>
841+
<span class="sd"> Output array to populate. Array must have the correct</span>
842+
<span class="sd"> shape and the expected data type.</span>
840843
<span class="sd"> mode (str, optional):</span>
841844
<span class="sd"> How out-of-bounds indices will be handled. Possible values</span>
842845
<span class="sd"> are:</span>
@@ -904,18 +907,53 @@ <h1>Source code for dpctl.tensor._indexing_functions</h1><div class="highlight">
904907
<span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">&quot;`axis` must be 0 for an array of dimension 0.&quot;</span><span class="p">)</span>
905908
<span class="n">res_shape</span> <span class="o">=</span> <span class="n">indices</span><span class="o">.</span><span class="n">shape</span>
906909

907-
<span class="n">res</span> <span class="o">=</span> <span class="n">dpt</span><span class="o">.</span><span class="n">empty</span><span class="p">(</span>
908-
<span class="n">res_shape</span><span class="p">,</span> <span class="n">dtype</span><span class="o">=</span><span class="n">x</span><span class="o">.</span><span class="n">dtype</span><span class="p">,</span> <span class="n">usm_type</span><span class="o">=</span><span class="n">res_usm_type</span><span class="p">,</span> <span class="n">sycl_queue</span><span class="o">=</span><span class="n">exec_q</span>
909-
<span class="p">)</span>
910+
<span class="n">dt</span> <span class="o">=</span> <span class="n">x</span><span class="o">.</span><span class="n">dtype</span>
911+
912+
<span class="n">orig_out</span> <span class="o">=</span> <span class="n">out</span>
913+
<span class="k">if</span> <span class="n">out</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
914+
<span class="k">if</span> <span class="ow">not</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">out</span><span class="p">,</span> <span class="n">dpt</span><span class="o">.</span><span class="n">usm_ndarray</span><span class="p">):</span>
915+
<span class="k">raise</span> <span class="ne">TypeError</span><span class="p">(</span>
916+
<span class="sa">f</span><span class="s2">&quot;output array must be of usm_ndarray type, got </span><span class="si">{</span><span class="nb">type</span><span class="p">(</span><span class="n">out</span><span class="p">)</span><span class="si">}</span><span class="s2">&quot;</span>
917+
<span class="p">)</span>
918+
<span class="k">if</span> <span class="ow">not</span> <span class="n">out</span><span class="o">.</span><span class="n">flags</span><span class="o">.</span><span class="n">writable</span><span class="p">:</span>
919+
<span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">&quot;provided `out` array is read-only&quot;</span><span class="p">)</span>
920+
921+
<span class="k">if</span> <span class="n">out</span><span class="o">.</span><span class="n">shape</span> <span class="o">!=</span> <span class="n">res_shape</span><span class="p">:</span>
922+
<span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span>
923+
<span class="s2">&quot;The shape of input and output arrays are inconsistent. &quot;</span>
924+
<span class="sa">f</span><span class="s2">&quot;Expected output shape is </span><span class="si">{</span><span class="n">res_shape</span><span class="si">}</span><span class="s2">, got </span><span class="si">{</span><span class="n">out</span><span class="o">.</span><span class="n">shape</span><span class="si">}</span><span class="s2">&quot;</span>
925+
<span class="p">)</span>
926+
<span class="k">if</span> <span class="n">dt</span> <span class="o">!=</span> <span class="n">out</span><span class="o">.</span><span class="n">dtype</span><span class="p">:</span>
927+
<span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span>
928+
<span class="sa">f</span><span class="s2">&quot;Output array of type </span><span class="si">{</span><span class="n">dt</span><span class="si">}</span><span class="s2"> is needed, got </span><span class="si">{</span><span class="n">out</span><span class="o">.</span><span class="n">dtype</span><span class="si">}</span><span class="s2">&quot;</span>
929+
<span class="p">)</span>
930+
<span class="k">if</span> <span class="n">dpctl</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">get_execution_queue</span><span class="p">((</span><span class="n">exec_q</span><span class="p">,</span> <span class="n">out</span><span class="o">.</span><span class="n">sycl_queue</span><span class="p">))</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
931+
<span class="k">raise</span> <span class="n">dpctl</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">ExecutionPlacementError</span><span class="p">(</span>
932+
<span class="s2">&quot;Input and output allocation queues are not compatible&quot;</span>
933+
<span class="p">)</span>
934+
<span class="k">if</span> <span class="n">ti</span><span class="o">.</span><span class="n">_array_overlap</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">out</span><span class="p">):</span>
935+
<span class="n">out</span> <span class="o">=</span> <span class="n">dpt</span><span class="o">.</span><span class="n">empty_like</span><span class="p">(</span><span class="n">out</span><span class="p">)</span>
936+
<span class="k">else</span><span class="p">:</span>
937+
<span class="n">out</span> <span class="o">=</span> <span class="n">dpt</span><span class="o">.</span><span class="n">empty</span><span class="p">(</span>
938+
<span class="n">res_shape</span><span class="p">,</span> <span class="n">dtype</span><span class="o">=</span><span class="n">dt</span><span class="p">,</span> <span class="n">usm_type</span><span class="o">=</span><span class="n">res_usm_type</span><span class="p">,</span> <span class="n">sycl_queue</span><span class="o">=</span><span class="n">exec_q</span>
939+
<span class="p">)</span>
910940

911941
<span class="n">_manager</span> <span class="o">=</span> <span class="n">dpctl</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">SequentialOrderManager</span><span class="p">[</span><span class="n">exec_q</span><span class="p">]</span>
912942
<span class="n">deps_ev</span> <span class="o">=</span> <span class="n">_manager</span><span class="o">.</span><span class="n">submitted_events</span>
913943
<span class="n">hev</span><span class="p">,</span> <span class="n">take_ev</span> <span class="o">=</span> <span class="n">ti</span><span class="o">.</span><span class="n">_take</span><span class="p">(</span>
914-
<span class="n">x</span><span class="p">,</span> <span class="p">(</span><span class="n">indices</span><span class="p">,),</span> <span class="n">res</span><span class="p">,</span> <span class="n">axis</span><span class="p">,</span> <span class="n">mode</span><span class="p">,</span> <span class="n">sycl_queue</span><span class="o">=</span><span class="n">exec_q</span><span class="p">,</span> <span class="n">depends</span><span class="o">=</span><span class="n">deps_ev</span>
944+
<span class="n">x</span><span class="p">,</span> <span class="p">(</span><span class="n">indices</span><span class="p">,),</span> <span class="n">out</span><span class="p">,</span> <span class="n">axis</span><span class="p">,</span> <span class="n">mode</span><span class="p">,</span> <span class="n">sycl_queue</span><span class="o">=</span><span class="n">exec_q</span><span class="p">,</span> <span class="n">depends</span><span class="o">=</span><span class="n">deps_ev</span>
915945
<span class="p">)</span>
916946
<span class="n">_manager</span><span class="o">.</span><span class="n">add_event_pair</span><span class="p">(</span><span class="n">hev</span><span class="p">,</span> <span class="n">take_ev</span><span class="p">)</span>
917947

918-
<span class="k">return</span> <span class="n">res</span></div>
948+
<span class="k">if</span> <span class="ow">not</span> <span class="p">(</span><span class="n">orig_out</span> <span class="ow">is</span> <span class="kc">None</span> <span class="ow">or</span> <span class="n">out</span> <span class="ow">is</span> <span class="n">orig_out</span><span class="p">):</span>
949+
<span class="c1"># Copy the out data from temporary buffer to original memory</span>
950+
<span class="n">ht_e_cpy</span><span class="p">,</span> <span class="n">cpy_ev</span> <span class="o">=</span> <span class="n">ti</span><span class="o">.</span><span class="n">_copy_usm_ndarray_into_usm_ndarray</span><span class="p">(</span>
951+
<span class="n">src</span><span class="o">=</span><span class="n">out</span><span class="p">,</span> <span class="n">dst</span><span class="o">=</span><span class="n">orig_out</span><span class="p">,</span> <span class="n">sycl_queue</span><span class="o">=</span><span class="n">exec_q</span><span class="p">,</span> <span class="n">depends</span><span class="o">=</span><span class="p">[</span><span class="n">take_ev</span><span class="p">]</span>
952+
<span class="p">)</span>
953+
<span class="n">_manager</span><span class="o">.</span><span class="n">add_event_pair</span><span class="p">(</span><span class="n">ht_e_cpy</span><span class="p">,</span> <span class="n">cpy_ev</span><span class="p">)</span>
954+
<span class="n">out</span> <span class="o">=</span> <span class="n">orig_out</span>
955+
956+
<span class="k">return</span> <span class="n">out</span></div>
919957

920958

921959
<div class="viewcode-block" id="put"><a class="viewcode-back" href="../../../api_reference/dpctl/generated/dpctl.tensor.put.html#dpctl.tensor.put">[docs]</a><span class="k">def</span><span class="w"> </span><span class="nf">put</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">indices</span><span class="p">,</span> <span class="n">vals</span><span class="p">,</span> <span class="o">/</span><span class="p">,</span> <span class="o">*</span><span class="p">,</span> <span class="n">axis</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">mode</span><span class="o">=</span><span class="s2">&quot;wrap&quot;</span><span class="p">):</span>

master/api_reference/dpctl/generated/dpctl.tensor.take.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -791,7 +791,7 @@
791791
<h1>dpctl.tensor.take<a class="headerlink" href="#dpctl-tensor-take" title="Permalink to this heading"></a></h1>
792792
<dl class="py function">
793793
<dt class="sig sig-object py" id="dpctl.tensor.take">
794-
<span class="sig-prename descclassname"><span class="pre">dpctl.tensor.</span></span><span class="sig-name descname"><span class="pre">take</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">x</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">indices</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">axis</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mode</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'wrap'</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../_modules/dpctl/tensor/_indexing_functions.html#take"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#dpctl.tensor.take" title="Permalink to this definition"></a></dt>
794+
<span class="sig-prename descclassname"><span class="pre">dpctl.tensor.</span></span><span class="sig-name descname"><span class="pre">take</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">x</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">indices</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">axis</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">out</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mode</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'wrap'</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../_modules/dpctl/tensor/_indexing_functions.html#take"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#dpctl.tensor.take" title="Permalink to this definition"></a></dt>
795795
<dd><p>Takes elements from an array along a given axis at given indices.</p>
796796
<dl class="field-list simple">
797797
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
@@ -801,6 +801,8 @@ <h1>dpctl.tensor.take<a class="headerlink" href="#dpctl-tensor-take" title="Perm
801801
<li><p><strong>axis</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.13)"><em>int</em></a><em>, </em><em>optional</em>) – The axis along which the values will be selected.
802802
If <code class="docutils literal notranslate"><span class="pre">x</span></code> is one-dimensional, this argument is optional.
803803
Default: <code class="docutils literal notranslate"><span class="pre">None</span></code>.</p></li>
804+
<li><p><strong>out</strong> (<em>Optional</em><em>[</em><a class="reference internal" href="dpctl.tensor.usm_ndarray.html#dpctl.tensor.usm_ndarray" title="dpctl.tensor.usm_ndarray"><em>usm_ndarray</em></a><em>]</em>) – Output array to populate. Array must have the correct
805+
shape and the expected data type.</p></li>
804806
<li><p><strong>mode</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.13)"><em>str</em></a><em>, </em><em>optional</em>) – <p>How out-of-bounds indices will be handled. Possible values
805807
are:</p>
806808
<ul>

master/api_reference/dpctl/tensor.indexing_functions.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -806,7 +806,7 @@
806806
<tr class="row-even"><td><p><a class="reference internal" href="generated/dpctl.tensor.put_along_axis.html#dpctl.tensor.put_along_axis" title="dpctl.tensor.put_along_axis"><code class="xref py py-obj docutils literal notranslate"><span class="pre">put_along_axis</span></code></a>(x, indices, vals, /, *[, ...])</p></td>
807807
<td><p>Puts elements into an array at the one-dimensional indices specified by <code class="docutils literal notranslate"><span class="pre">indices</span></code> along a provided <code class="docutils literal notranslate"><span class="pre">axis</span></code>.</p></td>
808808
</tr>
809-
<tr class="row-odd"><td><p><a class="reference internal" href="generated/dpctl.tensor.take.html#dpctl.tensor.take" title="dpctl.tensor.take"><code class="xref py py-obj docutils literal notranslate"><span class="pre">take</span></code></a>(x, indices[, axis, mode])</p></td>
809+
<tr class="row-odd"><td><p><a class="reference internal" href="generated/dpctl.tensor.take.html#dpctl.tensor.take" title="dpctl.tensor.take"><code class="xref py py-obj docutils literal notranslate"><span class="pre">take</span></code></a>(x, indices[, axis, out, mode])</p></td>
810810
<td><p>Takes elements from an array along a given axis at given indices.</p></td>
811811
</tr>
812812
<tr class="row-even"><td><p><a class="reference internal" href="generated/dpctl.tensor.take_along_axis.html#dpctl.tensor.take_along_axis" title="dpctl.tensor.take_along_axis"><code class="xref py py-obj docutils literal notranslate"><span class="pre">take_along_axis</span></code></a>(x, indices, /, *[, axis, mode])</p></td>

master/objects.inv

0 Bytes
Binary file not shown.

master/searchindex.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)