Skip to content

Latest commit

 

History

History
38 lines (25 loc) · 1.31 KB

index.rst

File metadata and controls

38 lines (25 loc) · 1.31 KB

DPNP -- A NumPy-compatible library for SYCL-based devices

.. module:: dpnp

DPNP is a NumPy-like library accelerated with SYCL on Intel devices. It provides Python interfaces for many NumPy functions, and includes a subset of methods of :class:`dpnp.ndarray`. Under the hood it is based on native C++ and oneMKL based kernels.

Being drop-in replacement for Numpy its usage is very similar to Numpy:

>>> import dpnp as np

The :class:`dpnp.ndarray` class is a compatible alternative of :class:`numpy.ndarray`.

>>> x = np.array([1, 2, 3])

x in the above example is an instance of :class:`dpnp.ndarray` that is created identically to NumPy's one. The key difference of :class:`dpnp.ndarray` from :class:`numpy.ndarray` is that the memory is allocated on Intel GPU when setting up DPNP_QUEUE_GPU=1 in the environment.

Most of the array manipulations are also done in the way similar to NumPy such as:

>>> s = np.sum(x)

Please see the :ref:`API Reference <dpnp_reference>` for the complete list of supported NumPy APIs along with their limitations.

.. toctree::
   :maxdepth: 2

   install
   reference/index
   dpnp_backend_api
   dpctl
   compute_follows_data