TensorFlow 2.0 Beta is available Learn more

tf.keras.experimental.terminate_keras_multiprocessing_pools

Destroy Keras' multiprocessing pools to prevent deadlocks.

Aliases:

  • tf.compat.v1.keras.experimental.terminate_keras_multiprocessing_pools
  • tf.compat.v2.keras.experimental.terminate_keras_multiprocessing_pools
  • tf.keras.experimental.terminate_keras_multiprocessing_pools
tf.keras.experimental.terminate_keras_multiprocessing_pools(
    grace_period=0.1,
    use_sigkill=False
)
View source on GitHub

In general multiprocessing.Pool can interact quite badly with other, seemingly unrelated, parts of a codebase due to Pool's reliance on fork. This method cleans up all pools which are known to belong to Keras (and thus can be safely terminated).

Args:

  • grace_period: Time (in seconds) to wait for process cleanup to propagate.
  • use_sigkill: Boolean of whether or not to perform a cleanup pass using SIGKILL.

Returns:

A list of human readable strings describing all issues encountered. It is up to the caller to decide whether to treat this as an error condition.