ray/python/benchmarks/benchmark_get.py
2018-07-28 09:09:21 -07:00

108 lines
1.9 KiB
Python

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)))