Skip to content

Commit 7052c71

Browse files
Update broadcast_arrays to return a tuple instead of a list (#2944)
This PR updates `dpnp.broadcast_arrays()` and `dpnp.tensor.broadcast_arrays()` to return a tuple instead of a list aligning their behavior with the Python Array API 2025.12 and NumPy 01c5a42
1 parent d71adb1 commit 7052c71

4 files changed

Lines changed: 12 additions & 12 deletions

File tree

_modules/dpnp/dpnp_iface_manipulation.html

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2122,8 +2122,8 @@ <h1>Source code for dpnp.dpnp_iface_manipulation</h1><div class="highlight"><pre
21222122

21232123
<span class="sd"> Returns</span>
21242124
<span class="sd"> -------</span>
2125-
<span class="sd"> out : list of dpnp.ndarray</span>
2126-
<span class="sd"> A list of arrays which are views on the original arrays from `args`.</span>
2125+
<span class="sd"> out : tuple of dpnp.ndarray</span>
2126+
<span class="sd"> A tuple of arrays which are views on the original arrays from `args`.</span>
21272127

21282128
<span class="sd"> Limitations</span>
21292129
<span class="sd"> -----------</span>
@@ -2140,20 +2140,20 @@ <h1>Source code for dpnp.dpnp_iface_manipulation</h1><div class="highlight"><pre
21402140
<span class="sd"> &gt;&gt;&gt; x = np.array([[1, 2, 3]])</span>
21412141
<span class="sd"> &gt;&gt;&gt; y = np.array([[4], [5]])</span>
21422142
<span class="sd"> &gt;&gt;&gt; np.broadcast_arrays(x, y)</span>
2143-
<span class="sd"> [array([[1, 2, 3],</span>
2143+
<span class="sd"> (array([[1, 2, 3],</span>
21442144
<span class="sd"> [1, 2, 3]]), array([[4, 4, 4],</span>
2145-
<span class="sd"> [5, 5, 5]])]</span>
2145+
<span class="sd"> [5, 5, 5]]))</span>
21462146

21472147
<span class="sd"> &quot;&quot;&quot;</span>
21482148

21492149
<span class="k">if</span> <span class="n">subok</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">False</span><span class="p">:</span>
21502150
<span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;subok=</span><span class="si">{</span><span class="n">subok</span><span class="si">}</span><span class="s2"> is currently not supported&quot;</span><span class="p">)</span>
21512151

21522152
<span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">args</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
2153-
<span class="k">return</span> <span class="p">[]</span>
2153+
<span class="k">return</span> <span class="p">()</span>
21542154

21552155
<span class="n">usm_arrays</span> <span class="o">=</span> <span class="n">dpt</span><span class="o">.</span><span class="n">broadcast_arrays</span><span class="p">(</span><span class="o">*</span><span class="p">[</span><span class="n">dpnp</span><span class="o">.</span><span class="n">get_usm_ndarray</span><span class="p">(</span><span class="n">a</span><span class="p">)</span> <span class="k">for</span> <span class="n">a</span> <span class="ow">in</span> <span class="n">args</span><span class="p">])</span>
2156-
<span class="k">return</span> <span class="p">[</span><span class="n">dpnp_array</span><span class="o">.</span><span class="n">_create_from_usm_ndarray</span><span class="p">(</span><span class="n">a</span><span class="p">)</span> <span class="k">for</span> <span class="n">a</span> <span class="ow">in</span> <span class="n">usm_arrays</span><span class="p">]</span></div>
2156+
<span class="k">return</span> <span class="nb">tuple</span><span class="p">(</span><span class="n">dpnp_array</span><span class="o">.</span><span class="n">_create_from_usm_ndarray</span><span class="p">(</span><span class="n">a</span><span class="p">)</span> <span class="k">for</span> <span class="n">a</span> <span class="ow">in</span> <span class="n">usm_arrays</span><span class="p">)</span></div>
21572157

21582158

21592159

reference/comparison.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1047,7 +1047,7 @@
10471047
<h1>Comparison Table NumPy/ DPNP/ CuPy<a class="headerlink" href="#comparison-table-numpy-dpnp-cupy" title="Link to this heading">¶</a></h1>
10481048
<p>Here is a list of NumPy and CuPy APIs and its corresponding DPNP implementations.</p>
10491049
<p><code class="docutils literal notranslate"><span class="pre">-</span></code> in DPNP column means that DPNP implementation is not provided yet.</p>
1050-
<p><strong>NumPy(v2.5.1) / DPNP(v0.21.0dev3+18.g24e3ac1e2e2) / CuPy(v14.1.1) APIs</strong></p>
1050+
<p><strong>NumPy(v2.5.1) / DPNP(v0.21.0dev3+19.g01c5a420319) / CuPy(v14.1.1) APIs</strong></p>
10511051
<section id="summary">
10521052
<h2>Summary<a class="headerlink" href="#summary" title="Link to this heading">¶</a></h2>
10531053
<div class="table-wrapper docutils container">

reference/generated/dpnp.broadcast_arrays.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1055,10 +1055,10 @@ <h1>dpnp.broadcast_arrays<a class="headerlink" href="#dpnp-broadcast-arrays" tit
10551055
<dd class="field-odd"><p><strong>args</strong> (<em>{dpnp.ndarray</em><em>, </em><em>usm_ndarray}</em>) -- A list of arrays to broadcast.</p>
10561056
</dd>
10571057
<dt class="field-even">Returns<span class="colon">:</span></dt>
1058-
<dd class="field-even"><p><strong>out</strong> -- A list of arrays which are views on the original arrays from <cite>args</cite>.</p>
1058+
<dd class="field-even"><p><strong>out</strong> -- A tuple of arrays which are views on the original arrays from <cite>args</cite>.</p>
10591059
</dd>
10601060
<dt class="field-odd">Return type<span class="colon">:</span></dt>
1061-
<dd class="field-odd"><p><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#list" title="(in Python v3.14)">list</a> of <a class="reference internal" href="dpnp.ndarray.html#dpnp.ndarray" title="dpnp.ndarray">dpnp.ndarray</a></p>
1061+
<dd class="field-odd"><p><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#tuple" title="(in Python v3.14)">tuple</a> of <a class="reference internal" href="dpnp.ndarray.html#dpnp.ndarray" title="dpnp.ndarray">dpnp.ndarray</a></p>
10621062
</dd>
10631063
</dl>
10641064
<p class="rubric">Limitations</p>
@@ -1076,9 +1076,9 @@ <h1>dpnp.broadcast_arrays<a class="headerlink" href="#dpnp-broadcast-arrays" tit
10761076
<span class="gp">&gt;&gt;&gt; </span><span class="n">x</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="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">]])</span>
10771077
<span class="gp">&gt;&gt;&gt; </span><span class="n">y</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="mi">4</span><span class="p">],</span> <span class="p">[</span><span class="mi">5</span><span class="p">]])</span>
10781078
<span class="gp">&gt;&gt;&gt; </span><span class="n">np</span><span class="o">.</span><span class="n">broadcast_arrays</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">)</span>
1079-
<span class="go">[array([[1, 2, 3],</span>
1079+
<span class="go">(array([[1, 2, 3],</span>
10801080
<span class="go"> [1, 2, 3]]), array([[4, 4, 4],</span>
1081-
<span class="go"> [5, 5, 5]])]</span>
1081+
<span class="go"> [5, 5, 5]]))</span>
10821082
</pre></div>
10831083
</div>
10841084
</dd></dl>

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)