File tree 2 files changed +25
-1
lines changed
2 files changed +25
-1
lines changed Original file line number Diff line number Diff line change @@ -168,7 +168,10 @@ def get(self, k):
168
168
169
169
def flush (self ):
170
170
for k , v in self .to_flush .items ():
171
- self .references [k ] = ray .put (v )
171
+ if isinstance (v , ray .ObjectRef ):
172
+ self .references [k ] = v
173
+ else :
174
+ self .references [k ] = ray .put (v )
172
175
self .to_flush .clear ()
173
176
174
177
Original file line number Diff line number Diff line change @@ -1256,6 +1256,27 @@ def step(self):
1256
1256
dumped = cp .dumps (trainable )
1257
1257
assert sys .getsizeof (dumped ) < 100 * 1024
1258
1258
1259
+ def testWithParameters3 (self ):
1260
+ class Data :
1261
+ def __init__ (self ):
1262
+ import numpy as np
1263
+ self .data = np .random .rand ((2 * 1024 * 1024 ))
1264
+
1265
+ class TestTrainable (Trainable ):
1266
+ def setup (self , config , data ):
1267
+ self .data = data .data
1268
+
1269
+ def step (self ):
1270
+ return dict (metric = len (self .data ), done = True )
1271
+
1272
+ new_data = Data ()
1273
+ ref = ray .put (new_data )
1274
+ trainable = tune .with_parameters (TestTrainable , data = ref )
1275
+ # ray.cloudpickle will crash for some reason
1276
+ import cloudpickle as cp
1277
+ dumped = cp .dumps (trainable )
1278
+ assert sys .getsizeof (dumped ) < 100 * 1024
1279
+
1259
1280
1260
1281
class SerializabilityTest (unittest .TestCase ):
1261
1282
@classmethod
You can’t perform that action at this time.
0 commit comments