code: def allclose(input, other, rtol=1e-05, atol=1e-08, equal_nan=False):
      input, other = torch_frontend.promote_types_of_torch_inputs(
          input, other
      )
      finite_input = ivy.isfinite(input)
      finite_other = ivy.isfinite(other)
      if ivy.all(finite_input) and ivy.all(finite_other):
          ret = _compute_allclose_with_tol(input, other, rtol, atol)
          return ivy.all_equal(True, ret)
      else:
          finites = ivy.bitwise_and(finite_input, finite_other)
          ret = ivy.zeros_like(finites)
          ret_ = ret.astype(int)
          input = input * ivy.ones_like(ret_)
          other = other * ivy.ones_like(ret_)
          ret[finites] = _compute_allclose_with_tol(
              input[finites], other[finites], rtol, atol
          )
          nans = ivy.bitwise_invert(finites)
          ret[nans] = ivy.equal(input[nans], other[nans])
          if equal_nan:
              both_nan = ivy.bitwise_and(
                  ivy.isnan(input), ivy.isnan(other)
              )
              ret[both_nan] = both_nan[both_nan]
          return ivy.all(ret)
  
imports: import ivy
  import ivy.functional.frontends.torch
  from ivy.func_wrapper import with_unsupported_dtypes
  from ivy.functional.frontends.torch.func_wrapper import to_ivy_arrays_and_back
  from collections import namedtuple
label_desc: Use image node_id 3 for calling a global function with example usage: allclose(input, other, rtol, atol, equal_nan) and returns: ivy, ivy