Handle host frames in serialization#5309
Conversation
As some serialization strategies may rely on some or all frames on host, add logic to `Serializable` to track which frames are on host or device and ensure they are handled appropriately.
|
FWIW the |
|
Thanks! Yeah was looking at that as well. It looks like you were able to drop |
|
After looking more closely at the test failures here, I think this is the same issue we ran into yesterday. IOW the pickle test is assuming approximate equality of the size of the pickled data to the size of the Python object. However pickling will always tack in more information for the unpickling process. So we should just be checking that the pickled data is at least as big as the original data (though most likely bigger). Submitted PR ( #5334 ), which grabs your change from PR ( #5025 ). Hopefully once that is in we will clear the failure here. |
|
Merged in |
Depends on PR ( #5308 )
As some serialization strategies may rely on some or all frames on host, add logic to
Serializableto track which frames are on host or device and ensure they are handled appropriately. This should help cases like pack/unpack ( #5025 ) and allowSerializableto be used by other objects using host frames like those in FIL ( rapidsai/cuml#2263 ).Note: Adding this as a draft for now, though am not aware of anything missing from it (unless reviewers spot something ;)
cc @shwina @hcho3