code: def _as_float_array(x, check_finite=False):
      """Convert the input into a C contiguous float array.
      NB: Upcasts half- and single-precision floats to double precision.
      """
      x = cupy.ascontiguousarray(x)
      dtyp = _get_dtype(x.dtype)
      x = x.astype(dtyp, copy=False)
      if check_finite and not cupy.isfinite(x).all():
          raise ValueError("Array must not contain infs or nans.")
      return x
  
imports: import operator
  import cupy
  from cupy._core import internal
  from cupy._core._scalar import get_typename
  from cupyx.scipy.sparse import csr_matrix
  import numpy
label_desc: Use image node_id 3 for calling a global function with example usage: _as_float_array(x, check_finite) and returns: x