我在dask分布式,tensorflow,keras设置上优化ML模型。 工作进程在内存中不断增长。
Tensorflow使用25个节点的CPU。每个节点都有大约3个工作进程。
每项任务大约需要20秒。
我不希望每次内存已满时重新启动,因为这会使操作停止一段时间,从而导致延迟。
我在.gather()之后使用client.cancel()但没有效果。我在任务中执行gc.collect()但也没有效果。
唯一的解决方案是重新启动工作进程。
任何人都有其他解决方案吗?
Dask分发版:1.21.1 Python:3.6.3 Tensorflow:1.7 Keras:2.1.5
答案 0 :(得分:0)
需要清除Keras(Tensorflow)。
from keras import backend as K
K.clear_session()