You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jan 12, 2026. It is now read-only.
Repository navigation
Commit 209daf2
Browse filesBrowse the repository at this point in the historyBrowse files
<divclass="code-block-caption"><spanclass="caption-text">Your first NumPy code running on GPU</span><aclass="headerlink" href="#examples-01-hello-dpnp" title="Permalink to this code">¶</a></div>
82
+
<divclass="code-block-caption"><spanclass="caption-text"><strong>EXAMPLE 01:</strong>Your first NumPy code running on GPU</span><aclass="headerlink" href="#examples-01-hello-dpnp" title="Permalink to this code">¶</a></div>
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"Array x allocated on the device:"</span><spanclass="p">,</span><spanclass="n">x</span><spanclass="o">.</span><spanclass="n">device</span><spanclass="p">)</span>
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="n">y</span><spanclass="o">.</span><spanclass="n">shape</span><spanclass="p">)</span><spanclass="c1"># Must be 0-dimensional array</span>
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"Result y is located on the device:"</span><spanclass="p">,</span><spanclass="n">y</span><spanclass="o">.</span><spanclass="n">device</span><spanclass="p">)</span><spanclass="c1"># The same device as x</span>
91
+
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"Shape of y is:"</span><spanclass="p">,</span><spanclass="n">y</span><spanclass="o">.</span><spanclass="n">shape</span><spanclass="p">)</span><spanclass="c1"># 0-dimensional array</span>
<divclass="code-block-caption"><spanclass="caption-text">Select device type while creating array</span><aclass="headerlink" href="#examples-02-dpnp-device" title="Permalink to this code">¶</a></div>
97
+
<divclass="code-block-caption"><spanclass="caption-text"><strong>EXAMPLE 02:</strong>Select device type while creating array</span><aclass="headerlink" href="#examples-02-dpnp-device" title="Permalink to this code">¶</a></div>
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"GPU device is not available"</span><spanclass="p">)</span>
102
105
106
+
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"Array x allocated on the device:"</span><spanclass="p">,</span><spanclass="n">x</span><spanclass="o">.</span><spanclass="n">device</span><spanclass="p">)</span>
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"Result y is located on the device:"</span><spanclass="p">,</span><spanclass="n">y</span><spanclass="o">.</span><spanclass="n">device</span><spanclass="p">)</span><spanclass="c1"># The same device as x</span>
111
+
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"Shape of y is:"</span><spanclass="p">,</span><spanclass="n">y</span><spanclass="o">.</span><spanclass="n">shape</span><spanclass="p">)</span><spanclass="c1"># 0-dimensional array</span>
<divclass="code-block-caption"><spanclass="caption-text">Compile dpnp code with numba-dpex</span><aclass="headerlink" href="#examples-03-dpnp2numba-dpex" title="Permalink to this code">¶</a></div>
117
+
<divclass="code-block-caption"><spanclass="caption-text"><strong>EXAMPLE 03:</strong>Compile dpnp code with numba-dpex</span><aclass="headerlink" href="#examples-03-dpnp2numba-dpex" title="Permalink to this code">¶</a></div>
<spanclass="k">def</span><spanclass="nf">sum_it</span><spanclass="p">(</span><spanclass="n">x</span><spanclass="p">):</span><spanclass="c1"># Device queue is inferred from x. The kernel is submitted to that queue</span>
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"Array x allocated on the device:"</span><spanclass="p">,</span><spanclass="n">x</span><spanclass="o">.</span><spanclass="n">device</span><spanclass="p">)</span>
125
132
126
-
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="n">y</span><spanclass="o">.</span><spanclass="n">shape</span><spanclass="p">)</span><spanclass="c1"># Must be 0-dimensional array</span>
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"Result y is located on the device:"</span><spanclass="p">,</span><spanclass="n">y</span><spanclass="o">.</span><spanclass="n">device</span><spanclass="p">)</span><spanclass="c1"># The same device as x</span>
136
+
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"Shape of y is:"</span><spanclass="p">,</span><spanclass="n">y</span><spanclass="o">.</span><spanclass="n">shape</span><spanclass="p">)</span><spanclass="c1"># 0-dimensional array</span>
<divclass="code-block-caption"><spanclass="caption-text"><strong>EXAMPLE 04:</strong> Get information about devices</span><aclass="headerlink" href="#examples-04-dpctl-device-query" title="Permalink to this code">¶</a></div>
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"GPU devices:"</span><spanclass="p">,</span><spanclass="n">dpctl</span><spanclass="o">.</span><spanclass="n">get_devices</span><spanclass="p">(</span><spanclass="n">device_type</span><spanclass="o">=</span><spanclass="s2">"gpu"</span><spanclass="p">))</span><spanclass="c1"># Get the list of all GPU devices</span>
147
+
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"Number of GPU devices"</span><spanclass="p">,</span><spanclass="n">dpctl</span><spanclass="o">.</span><spanclass="n">get_num_devices</span><spanclass="p">(</span><spanclass="n">device_type</span><spanclass="o">=</span><spanclass="s2">"gpu"</span><spanclass="p">))</span><spanclass="c1"># Get the number of GPU devices</span>
148
+
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"Has CPU devices?"</span><spanclass="p">,</span><spanclass="n">dpctl</span><spanclass="o">.</span><spanclass="n">has_cpu_devices</span><spanclass="p">())</span><spanclass="c1"># Check if there are CPU devices</span>
149
+
<spanclass="nb">print</span><spanclass="p">(</span><spanclass="s2">"Has host device?"</span><spanclass="p">,</span><spanclass="n">dpctl</span><spanclass="o">.</span><spanclass="n">has_host_device</span><spanclass="p">())</span><spanclass="c1"># Check if there is the host device</span>
<h2>3. Data Parallel Extensions for Python<aclass="headerlink" href="#data-parallel-extensions-for-python" title="Permalink to this heading">¶</a></h2>
104
-
<p>You can skip this step if you already installed Intel® Distribution for Python or Intel® AI Analytics Toolkit.
105
-
The easiest way to install Data Parallel Extensions for Python is to install numba-dpex:</p>
<p>The above commands will install <codeclass="docutils literal notranslate"><spanclass="pre">numba-dpex</span></code> along with its dependencies, including <codeclass="docutils literal notranslate"><spanclass="pre">dpnp</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">dpctl</span></code>,
109
109
and required compiler runtimes and drivers.</p>
110
+
<divclass="admonition warning">
111
+
<pclass="admonition-title">Warning</p>
112
+
<p>Before installing with conda or pip it is strongly advised to update <codeclass="docutils literal notranslate"><spanclass="pre">conda</span></code> and <codeclass="docutils literal notranslate"><spanclass="pre">pip</span></code> to latest versions</p>
0 commit comments