diff --git a/.changeset/petite-islands-follow.md b/.changeset/petite-islands-follow.md new file mode 100644 index 000000000000..f39a1a66ce3e --- /dev/null +++ b/.changeset/petite-islands-follow.md @@ -0,0 +1,5 @@ +--- +"gradio": patch +--- + +fix:Reduce CPU usage of dev mode diff --git a/gradio/cli/commands/reload.py b/gradio/cli/commands/reload.py index 5edf6f557734..cc75bbbba090 100644 --- a/gradio/cli/commands/reload.py +++ b/gradio/cli/commands/reload.py @@ -10,6 +10,7 @@ import inspect import os import re +import site import subprocess import sys import threading @@ -63,9 +64,14 @@ def _setup_config( watching_dirs = [] if str(gradio_folder).strip(): - watching_dirs.append(gradio_folder) - message += f" '{gradio_folder}'" - message_change_count += 1 + package_install = any( + utils.is_in_or_equal(gradio_folder, d) for d in site.getsitepackages() + ) + if not package_install: + # This is a source install + watching_dirs.append(gradio_folder) + message += f" '{gradio_folder}'" + message_change_count += 1 abs_parent = abs_original_path.parent if str(abs_parent).strip(): diff --git a/gradio/utils.py b/gradio/utils.py index 3c1d3bcd0fd4..a9b2ab52fe0a 100644 --- a/gradio/utils.py +++ b/gradio/utils.py @@ -14,6 +14,7 @@ import pkgutil import re import threading +import time import traceback import typing import urllib.parse @@ -223,6 +224,7 @@ def iter_py_files() -> Iterator[Path]: else: reloader.swap_blocks(demo) mtimes = {} + time.sleep(0.05) def colab_check() -> bool: