code: def asarray(a, dtype=None, order=None, *, blocking=False):
      """Converts an object to array.
  
      This is equivalent to ``array(a, dtype, copy=False, order=order)``.
  
      Args:
          a: The source object.
          dtype: Data type specifier. It is inferred from the input by default.
          order ({'C', 'F', 'A', 'K'}):
              Whether to use row-major (C-style) or column-major (Fortran-style)
              memory representation. Defaults to ``'K'``. ``order`` is ignored
              for objects that are not :class:`cupy.ndarray`, but have the
              ``__cuda_array_interface__`` attribute.
          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 source ``a`` without proper ordering while copying would
              result in a race condition. If set to ``True``, the copy is
              synchronous (with respect to the host).
  
      Returns:
          cupy.ndarray: An array on the current device. If ``a`` is already on
          the device, no copy is performed.
  
      .. note::
         If ``a`` 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.
  
      .. seealso:: :func:`numpy.asarray`
  
      """
      return _core.array(a, dtype, False, order, blocking=blocking)
  
file_path: cupy/cupy/_creation/from_data.py
imports: import numpy
  from cupy import _core
  from cupy._core import fusion
label_desc: Use image node_id 2 for calling a global function with example usage: asarray(a, dtype, order) and returns: _core