InvokeAI/invokeai/app/util
psychedelicious 4602efd598
feat: add profiler util (#5601)
* feat(config): add profiling config settings

- `profile_graphs` enables graph profiling with cProfile
- `profiles_dir` sets the output for profiles

* feat(nodes): add Profiler util

Simple wrapper around cProfile.

* feat(nodes): use Profiler in invocation processor

* scripts: add generate_profile_graphs.sh script

Helper to generate graphs for profiles.

* pkg: add snakeviz and gprof2dot to dev deps

These are useful for profiling.

* tests: add tests for profiler util

* fix(profiler): handle previous profile not stopped cleanly

* feat(profiler): add profile_prefix config setting

The prefix is used when writing profile output files. Useful to organise profiles into sessions.

* tidy(profiler): add `_` to private API

* feat(profiler): simplify API

* feat(profiler): use child logger for profiler logs

* chore(profiler): update docstrings

* feat(profiler): stop() returns output path

* chore(profiler): fix docstring

* tests(profiler): update tests

* chore: ruff
2024-01-31 10:51:57 +00:00
..
__init__.py feat(nodes): add list_images endpoint 2023-04-09 13:48:44 +10:00
controlnet_utils.py chore: ruff check - fix flake8-bugbear 2023-11-11 10:55:28 +11:00
metadata.py chore: ruff check - fix pycodestyle 2023-11-11 10:55:33 +11:00
metaenum.py feat(nodes): address feedback 2023-05-24 11:30:47 -04:00
misc.py feat(api): chore: pydantic & fastapi upgrade 2023-10-17 14:59:25 +11:00
model_exclude_null.py feat(api): chore: pydantic & fastapi upgrade 2023-10-17 14:59:25 +11:00
profiler.py feat: add profiler util (#5601) 2024-01-31 10:51:57 +00:00
step_callback.py feat: refactor services folder/module structure 2023-10-12 12:15:06 -04:00
thumbnails.py isort wip 2023-09-12 13:01:58 -04:00
ti_utils.py Ti trigger from prompt util (#5294) 2023-12-22 03:04:44 +00:00