diff --git a/.dockerignore b/.dockerignore index 562fb6f..5fafd44 100644 --- a/.dockerignore +++ b/.dockerignore @@ -2,5 +2,9 @@ tests dist build env* +venv* *.egg-info models_eynollah* +reloaded +*.h5 +config_files* diff --git a/src/eynollah/model_zoo/model_zoo.py b/src/eynollah/model_zoo/model_zoo.py index a0e6052..1d15ee2 100644 --- a/src/eynollah/model_zoo/model_zoo.py +++ b/src/eynollah/model_zoo/model_zoo.py @@ -328,6 +328,11 @@ class EynollahModelZoo: gpu = int(device[3:] or "0") else: gpu = 0 # try first allowable + # make runtime-configurable + if override_providers := os.environ.get('EYNOLLAH_ONNX_EP', ''): + override_providers = override_providers.split(',') + providers = [provider for provider in providers + if provider[:-17] in override_providers] # configure and prioritise if 'CUDAExecutionProvider' in providers: providers.remove('CUDAExecutionProvider') diff --git a/src/eynollah/predictor.py b/src/eynollah/predictor.py index 9121ffe..2d892c7 100644 --- a/src/eynollah/predictor.py +++ b/src/eynollah/predictor.py @@ -208,9 +208,9 @@ class Predictor(mp.context.SpawnProcess): else: multi_output = False results = np.split(make_shareable(result), len(jobs)) - #self.logger.debug("sharing result array for '%d'", jobid) with ExitStack() as stack: for jobid, result in zip(jobs, results): + #self.logger.debug("sharing result array for '%d'", jobid) # we don't know when the result will be received, # but don't want to wait either, so track closing # context per job, and wait for closable signal