code: def test_speed_of_dumps_loads_return(self):
      data1 = {
          i: {
              100 * str(j): [set(range(100)) for _ in range(10)]
              for j in range(100)
          }
          for i in range(100)
      }
  
      data2 = [np.random.RandomState(0).randn(100, 300)] * 5
  
      data3 = [np.random.RandomState(0).randn(400, 100, 3000)]
  
      for i, data in enumerate([data1, data2, data3]):
          start = time.time()
          for _ in range(5):
              serialize_bytes = dumps_return(data)
              deserialize_result = loads_return(serialize_bytes)
          print(
              "Case {}, Average dump and load return time:".format(i),
              (time.time() - start) / 5,
          )
  
file_path: PARL/parl/remote/tests/communication_test.py
imports: import numpy
  import time
  import threading
  import unittest
  from parl.remote.communication import dumps_return, loads_return, dumps_argument, loads_argument
label_desc: Use image node_id 1 for calling the TestCommunication obj's underlying member method code with example usage: obj.test_speed_of_dumps_loads_return() without return types