Open fsaad opened 7 years ago
Further investigation reveals that the Venturecxx ripl is not picklable. The issue is that parallel_map
will attempt to pickle objects when communicating between master-slave processes.
This issue does not arise with sklearn-based cgpms such RandomForest and LinearRegression since those predictor objects from sklearn are pickleable.
One possibility is to explicitly convert the hooked cgpm to its JSON metadata format and have the worker press deserialize the cgpm, except the performance hit of explicit deserialization and repopulating the trace could be significant. Consider profiling this approach.
Alternative is to patch the venture.ripl.ripl.Ripl class to be pickleable.
engine.compose_cgpm([vscgpm], multiprocess=True)
fails with