def _train_and_save(algo, file, ratings, kwargs): "Worker for subprocess model training" _log.info('training %s on %d ratings', algo, len(ratings)) timer = Stopwatch() algo.fit(ratings, **kwargs) _log.info('trained %s in %s', algo, timer) if file is None: return persist_binpickle(algo).transfer() else: return persist_binpickle(algo, file=file).transfer()
def test_persist_bpk(): matrix = np.random.randn(1000, 100) share = lks.persist_binpickle(matrix) try: assert share.path.exists() m2 = share.get() assert m2 is not matrix assert np.all(m2 == matrix) del m2 finally: share.close()
def _sp_matmul_p(a1, a2, *, fail=False): _log.info('in worker process') return persist_binpickle(a1 @ a2).transfer()