The N-dimensional array (ndarray
)#
cupy.ndarray
is the CuPy counterpart of NumPy numpy.ndarray
.
It provides an intuitive interface for a fixed-size multidimensional array which resides
in a CUDA device.
For the basic concept of ndarray
s, please refer to the NumPy documentation.
|
Multi-dimensional array on a CUDA device. |
Conversion to/from NumPy arrays#
cupy.ndarray
and numpy.ndarray
are not implicitly convertible to each other.
That means, NumPy functions cannot take cupy.ndarray
s as inputs, and vice versa.
To convert
numpy.ndarray
tocupy.ndarray
, usecupy.array()
orcupy.asarray()
.To convert
cupy.ndarray
tonumpy.ndarray
, usecupy.asnumpy()
orcupy.ndarray.get()
.
Note that converting between cupy.ndarray
and numpy.ndarray
incurs data transfer between
the host (CPU) device and the GPU device, which is costly in terms of performance.
|
Creates an array on the current device. |
|
Converts an object to array. |
|
Returns an array on the host memory from an arbitrary source array. |
Code compatibility features#
cupy.ndarray
is designed to be interchangeable with numpy.ndarray
in terms of code compatibility as much as possible.
But occasionally, you will need to know whether the arrays you’re handling are cupy.ndarray
or numpy.ndarray
.
One example is when invoking module-level functions such as cupy.sum()
or numpy.sum()
.
In such situations, cupy.get_array_module()
can be used.
|
Returns the array module for arguments. |
|
Returns the array module for arguments. |