new_contents: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  
  import numpy as np
  
  import ray
  
  
  def setup():
      if not hasattr(setup, "is_initialized"):
          ray.init(num_workers=4, num_cpus=4)
          setup.is_initialized = True
  
  
  def square(x):
      return x * x
  
  
  class Foo(object):
      def bar(self):
          return 42
  
  
  class GetBase(object):
      def setup(self):
          self.oid = ray.put(None)
  
      def time_get(self):
          ray.get(self.oid)
  
      def peakmem_get(self):
          ray.get(self.oid)
  
  
  class GetBoolSuite(GetBase):
      def setup(self):
          self.oid = ray.put(True)
  
  
  class GetIntSuite(GetBase):
      def setup(self):
          self.oid = ray.put(42)
  
  
  class GetFloatSuite(GetBase):
      def setup(self):
          self.oid = ray.put(4.2)
  
  
  class GetComplexSuite(GetBase):
      def setup(self):
          self.oid = ray.put(4 + 2j)
  
  
  class GetNoneSuite(GetBase):
      def setup(self):
          self.oid = ray.put(None)
  
  
  class GetStringSuite(GetBase):
      def setup(self):
          self.oid = ray.put("forty-two")
  
  
  class GetBytesSuite(GetBase):
      def setup(self):
          self.oid = ray.put(b"forty-two")
  
  
  class GetListSuite(GetBase):
      def setup(self):
          self.oid = ray.put([i for i in range(100)])
  
  
  class GetSetSuite(GetBase):
      def setup(self):
          self.oid = ray.put({i for i in range(100)})
  
  
  class GetTupleSuite(GetBase):
      def setup(self):
          self.oid = ray.put(tuple(range(100)))
  
  
  class GetDictSuite(GetBase):
      def setup(self):
          self.oid = ray.put({i: i for i in range(100)})
  
  
  class GetFunctionSuite(GetBase):
      def setup(self):
          self.oid = ray.put(square)
  
  
  class GetClassSuite(GetBase):
      def setup(self):
          self.oid = ray.put(Foo)
  
  
  class GetClassInstanceSuite(GetBase):
      def setup(self):
          self.oid = ray.put(Foo())
  
  
  class GetArraySuite(GetBase):
      def setup(self):
          self.oid = ray.put(np.random.random((100, 100, 100)))
  
subject: Add benchmark for ray.get (#2499)