cupy.array — CuPy 13.4.1 documentation (original) (raw)
cupy.array(obj, dtype=None, copy=True, order='K', subok=False, ndmin=0, *, blocking=False)[source]#
Creates an array on the current device.
This function currently does not support the subok
option.
Parameters:
- obj – cupy.ndarray object or any other object that can be passed to numpy.array().
- dtype – Data type specifier.
- copy (bool) – If
False
, this function returnsobj
if possible. Otherwise this function always returns a new array. - order ({'C' , 'F' , 'A' , 'K'}) – Row-major (C-style) or column-major (Fortran-style) order. When
order
is'A'
, it uses'F'
ifa
is column-major and uses'C'
otherwise. And whenorder
is'K'
, it keeps strides as closely as possible. Ifobj
is numpy.ndarray, the function returns'C'
or'F'
order array. - subok (bool) – If
True
, then sub-classes will be passed-through, otherwise the returned array will be forced to be a base-class array (default). - ndmin (int) – Minimum number of dimensions. Ones are inserted to the head of the shape if needed.
- blocking (bool) – Default is
False
, meaning if a H2D copy is needed it would run asynchronously on the current stream, and users are responsible for ensuring the stream order. For example, writing to the sourceobj
without proper ordering while copying would result in a race condition. If set toTrue
, the copy is synchronous (with respect to the host).
Returns:
An array on the current device.
Return type:
Note
This method currently does not support subok
argument.
Note
If obj
is an numpy.ndarray instance that contains big-endian data, this function automatically swaps its byte order to little-endian, which is the NVIDIA and AMD GPU architecture’s native use.