From 5eaf3eb500c8e255b1aaa9f8dfcc4b66df09cefe Mon Sep 17 00:00:00 2001 From: iperov Date: Sun, 28 Apr 2019 23:40:26 +0400 Subject: [PATCH] fix 3rd pass extractor hang on AMD 8+ core processors --- joblib/SubprocessorBase.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/joblib/SubprocessorBase.py b/joblib/SubprocessorBase.py index 4d9cf62..dd48424 100644 --- a/joblib/SubprocessorBase.py +++ b/joblib/SubprocessorBase.py @@ -157,6 +157,23 @@ class Subprocessor(object): self.clis.append (cli) + while True: + while not cli.c2s.empty(): + obj = cli.c2s.get() + op = obj.get('op','') + if op == 'init_ok': + cli.state = 0 + elif op == 'log_info': + io.log_info(obj['msg']) + elif op == 'log_err': + io.log_err(obj['msg']) + elif op == 'error': + cli.kill() + self.clis.remove(cli) + break + if cli.state == 0: + break + io.process_messages(0.005) except: raise Exception ("Unable to start subprocess %s" % (name))