code: def test_pickle_to_string(dtype_and_x, on_device, backend_fw):
      ivy.set_backend(backend_fw)
      input_dtype, x = dtype_and_x
      assume("bfloat16" not in input_dtype)
      x = ivy.array(x[0], dtype=input_dtype[0], device=on_device)
  
      # paddle tensors can't be pickled directly as referenced in this issue
      # https://github.com/PaddlePaddle/Paddle/issues/41107
      if ivy.backend == "paddle":
          x = x.to_numpy()
      pickled_arr = pickle.dumps(x)
      unpickled_arr = pickle.loads(pickled_arr)
  
      # check for equality
      assert np.allclose(ivy.to_numpy(x), ivy.to_numpy(unpickled_arr))
      ivy.previous_backend()
  
file_path: ivy/ivy_tests/test_ivy/test_misc/test_pickling.py
imports: import pickle
  import numpy
  import os
  from hypothesis import given, assume
  import ivy
  import ivy_tests.test_ivy.helpers
label_desc: Use image node_id 2 for calling a global function with example usage: test_pickle_to_string(dtype_and_x, on_device, backend_fw) without return types