class_docstr: Array represents an abstracted array allocation. It can be instantiated by
  itself or can be instantiated by ``__cuda_array_interface__`` or
  ``__array_interface__`` compliant arrays, in which case it'll keep a
  reference to that data underneath. Also can be created from a pointer,
  specifying the characteristics of the array, in that case the owner of the
  data referred to by the pointer should be specified explicitly.
  
  Parameters
  ----------
  
  data : rmm.DeviceBuffer, cudf.Buffer, array_like, int, bytes, bytearray or           memoryview
      An array-like object or integer representing a
      device or host pointer to pre-allocated memory.
  owner : object, optional
      Python object to which the lifetime of the memory
      allocation is tied. If provided, a reference to this
      object is kept in this Buffer.
  dtype : data-type, optional
      Any object that can be interpreted as a numpy or cupy data type.
  shape : int or tuple of ints, optional
      Shape of created array.
  order: string, optional
      Whether to create a F-major or C-major array.
  mem_type: {'host', 'device'}, optional
      Whether data are on host or device.
  validate: bool, default=None
      Whether or not to check final array attributes against input options.
      If None, validation will occur only for CumlArray input and input that
      does not implement the array interface protocol and for which
      additional options were explicitly specified.
  
  Attributes
  ----------
  
  ptr : int
      Pointer to the data
  size : int
      Size of the array data in bytes
  _owner : Python Object
      Object that owns the data of the array
  shape : tuple of ints
      Shape of the array
  order : {'F', 'C'}
      'F' or 'C' to indicate Fortran-major or C-major order of the array
  strides : tuple of ints
      Strides of the data
  mem_type : MemoryType
      Memory type for how data are stored
  __array_interface__ : dictionary
      ``__array_interface__`` to interop with other libraries. This
      attribute is only present if data are host-accessible.
  __cuda_array_interface__ : dictionary
      ``__cuda_array_interface__`` to interop with other libraries. This
      attribute is only present if data are device-accessible.
  
  Notes
  -----
  
  cuml Array is not meant as an end-user array library. It is meant for
  cuML/RAPIDS developer consumption. Therefore it contains the minimum
  functionality. Its functionality is hidden by base.pyx to provide
  automatic output format conversion so that the users see the important
  attributes in whatever format they prefer.
  
  Todo: support cuda streams in the constructor. See:
  https://github.com/rapidsai/cuml/issues/1712
  https://github.com/rapidsai/cuml/pull/1396
class_docstr_tok: ["Array","represents","an","abstracted","array","allocation",".","It","can","be","instantiated","by","itself","or","can","be","instantiated","by","``","__cuda_array_interface__","``","or","``","__array_interface__","``","compliant","arrays",",","in","which","case","it","'ll","keep","a","reference","to","that","data","underneath",".","Also","can","be","created","from","a","pointer",",","specifying","the","characteristics","of","the","array",",","in","that","case","the","owner","of","the","data","referred","to","by","the","pointer","should","be","specified","explicitly",".","Parameters","--","--","--","--","--","data",":","rmm.DeviceBuffer",",","cudf.Buffer",",","array_like",",","int",",","bytes",",","bytearray","or","memoryview","An","array-like","object","or","integer","representing","a","device","or","host","pointer","to","pre-allocated","memory",".","owner",":","object",",","optional","Python","object","to","which","the","lifetime","of","the","memory","allocation","is","tied",".","If","provided",",","a","reference","to","this","object","is","kept","in","this","Buffer",".","dtype",":","data-type",",","optional","Any","object","that","can","be","interpreted","as","a","numpy","or","cupy","data","type",".","shape",":","int","or","tuple","of","ints",",","optional","Shape","of","created","array",".","order",":","string",",","optional","Whether","to","create","a","F-major","or","C-major","array",".","mem_type",":","{","'host","'",",","'device","'","}",",","optional","Whether","data","are","on","host","or","device",".","validate",":","bool",",","default=None","Whether","or","not","to","check","final","array","attributes","against","input","options",".","If","None",",","validation","will","occur","only","for","CumlArray","input","and","input","that","does","not","implement","the","array","interface","protocol","and","for","which","additional","options","were","explicitly","specified",".","Attributes","--","--","--","--","--","ptr",":","int","Pointer","to","the","data","size",":","int","Size","of","the","array","data","in","bytes","_owner",":","Python","Object","Object","that","owns","the","data","of","the","array","shape",":","tuple","of","ints","Shape","of","the","array","order",":","{","'","F","'",",","'","C","'","}","'","F","'","or","'","C","'","to","indicate","Fortran-major","or","C-major","order","of","the","array","strides",":","tuple","of","ints","Strides","of","the","data","mem_type",":","MemoryType","Memory","type","for","how","data","are","stored","__array_interface__",":","dictionary","``","__array_interface__","``","to","interop","with","other","libraries",".","This","attribute","is","only","present","if","data","are","host-accessible",".","__cuda_array_interface__",":","dictionary","``","__cuda_array_interface__","``","to","interop","with","other","libraries",".","This","attribute","is","only","present","if","data","are","device-accessible",".","Notes","--","--","-","cuml","Array","is","not","meant","as","an","end-user","array","library",".","It","is","meant","for","cuML\/RAPIDS","developer","consumption",".","Therefore","it","contains","the","minimum","functionality",".","Its","functionality","is","hidden","by","base.pyx","to","provide","automatic","output","format","conversion","so","that","the","users","see","the","important","attributes","in","whatever","format","they","prefer",".","Todo",":","support","cuda","streams","in","the","constructor",".","See",":","https",":","\/\/github.com\/rapidsai\/cuml\/issues\/1712","https",":","\/\/github.com\/rapidsai\/cuml\/pull\/1396"]
docstr: Create an Array with an allocated DeviceBuffer initialized to zeros.
  
  Parameters
  ----------
  dtype : data-type, optional
      Any object that can be interpreted as a numpy or cupy data type.
  shape : int or tuple of ints, optional
      Shape of created array.
  order: string, optional
      Whether to create a F-major or C-major array.
code: def zeros(
      cls, shape, dtype="float32", order="F", index=None, mem_type=None
  ):
      """
      Create an Array with an allocated DeviceBuffer initialized to zeros.
  
      Parameters
      ----------
      dtype : data-type, optional
          Any object that can be interpreted as a numpy or cupy data type.
      shape : int or tuple of ints, optional
          Shape of created array.
      order: string, optional
          Whether to create a F-major or C-major array.
      """
      return CumlArray.full(
          value=0,
          shape=shape,
          dtype=dtype,
          order=order,
          index=index,
          mem_type=mem_type,
      )
  
imports: import copy
  import operator
  import pickle
  from cuml.internals.global_settings import GlobalSettings
  from cuml.internals.logger import debug
  from cuml.internals.mem_type import MemoryType, MemoryTypeError
  from cuml.internals.memory_utils import class_with_cupy_rmm, with_cupy_rmm
  from cuml.internals.safe_imports import cpu_only_import, cpu_only_import_from, gpu_only_import, gpu_only_import_from, null_decorator, return_false, safe_import, safe_import_from
  from typing import Tuple
label_desc: Use image node_id 46 for calling the CumlArray obj's underlying member method code with example usage: obj.zeros(cls, shape, dtype, order, index, mem_type) and returns: CumlArray