From 1bdfd2eb85498c6e6e8470ad9d2e4867fe85bde4 Mon Sep 17 00:00:00 2001 From: whs Date: Wed, 26 Jun 2019 10:16:55 +0800 Subject: [PATCH] Fix checkpoint of Light-NAS (#18330) Socket can't be pickled. test=develop --- .../paddle/fluid/contrib/slim/nas/light_nas_strategy.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/python/paddle/fluid/contrib/slim/nas/light_nas_strategy.py b/python/paddle/fluid/contrib/slim/nas/light_nas_strategy.py index f5e9ca5ec4..7f44510bd5 100644 --- a/python/paddle/fluid/contrib/slim/nas/light_nas_strategy.py +++ b/python/paddle/fluid/contrib/slim/nas/light_nas_strategy.py @@ -127,6 +127,14 @@ class LightNASStrategy(Strategy): self._search_agent = SearchAgent( self._server_ip, self._server_port, key=self._key) + def __getstate__(self): + """Socket can't be pickled.""" + d = {} + for key in self.__dict__: + if key not in ["_search_agent", "_server"]: + d[key] = self.__dict__[key] + return d + def _constrain_func(self, tokens, context=None): """Check whether the tokens meet constraint.""" _, _, test_prog, _, _, _, _ = context.search_space.create_net(tokens) -- GitLab