Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Connect up parameter description class #869

Merged
merged 9 commits into from
May 6, 2024

Conversation

nv-braf
Copy link
Contributor

@nv-braf nv-braf commented May 3, 2024

The objective is to capture all user search requirements into a class (called ConfigParameters) to standardize this before going to whatever search algorithm we end up implementing.

Incorporates the new ConfigParameters class into the CLI.
The the unit testing for the new mehtods is done in test_config as it's easier to test there, than to bring all the code into a new testbench to handle paring CLI/YAML config files.

RENAMED class to SearchParameters

@nv-braf nv-braf requested a review from dyastremsky May 3, 2024 15:21
Copy link
Contributor

@dyastremsky dyastremsky left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fantastic work on this, Brian! I appreciate your explanations, comments, and cleanup of past code. Some great code quality here.

model_analyzer/config/generate/config_parameters.py Outdated Show resolved Hide resolved
model_analyzer/config/generate/config_parameters.py Outdated Show resolved Hide resolved
model_analyzer/config/generate/config_parameters.py Outdated Show resolved Hide resolved
model_analyzer/config/generate/config_parameters.py Outdated Show resolved Hide resolved
model_analyzer/config/generate/config_parameters.py Outdated Show resolved Hide resolved
tests/test_config.py Outdated Show resolved Hide resolved
tests/test_config.py Outdated Show resolved Hide resolved
tests/test_config.py Outdated Show resolved Hide resolved
tests/test_config.py Outdated Show resolved Hide resolved
@nv-braf nv-braf requested a review from dyastremsky May 3, 2024 18:01
model_analyzer/config/generate/config_parameters.py Outdated Show resolved Hide resolved
model_analyzer/config/generate/config_parameters.py Outdated Show resolved Hide resolved
tests/test_config.py Outdated Show resolved Hide resolved
tests/test_config.py Fixed Show fixed Hide fixed
tests/test_config.py Fixed Show fixed Hide fixed
tests/test_config.py Fixed Show fixed Hide fixed
tests/test_config.py Fixed Show fixed Hide fixed
@nv-braf nv-braf requested a review from dyastremsky May 4, 2024 02:37
Copy link
Contributor

@dyastremsky dyastremsky left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for addressing the changes so well! The code looks fantastic. Great work!

@nv-braf nv-braf merged commit 946143a into optuna-search-mode May 6, 2024
3 checks passed
nv-braf added a commit that referenced this pull request May 7, 2024
* Added hooks for creating search parameters with some basic unit testing

* Adding more unit testing

* Cleaning up codeql

* Adding story ref for TODO

* Changes based on review comments

* Refactored ConfigParameters

* Renaming to SearchParameter(s)

* Moving unit testing into SearchParameters test class

* Fix codeql issues
nv-braf added a commit that referenced this pull request Jun 6, 2024
* Added hooks for creating search parameters with some basic unit testing

* Adding more unit testing

* Cleaning up codeql

* Adding story ref for TODO

* Changes based on review comments

* Refactored ConfigParameters

* Renaming to SearchParameter(s)

* Moving unit testing into SearchParameters test class

* Fix codeql issues
nv-braf added a commit that referenced this pull request Jun 7, 2024
* Adding cli option for optuna search (#867)

* Adding cli option for optuna search

* Changed RCS description

* Class to hold info about parameters (#868)

* Initial code for ConfigParameters class

* Fixing codeql issue

* Fixes based on review

* Connect up parameter description class (#869)

* Added hooks for creating search parameters with some basic unit testing

* Adding more unit testing

* Cleaning up codeql

* Adding story ref for TODO

* Changes based on review comments

* Refactored ConfigParameters

* Renaming to SearchParameter(s)

* Moving unit testing into SearchParameters test class

* Fix codeql issues

* Creating Optuna RCG factory (#878)

* Creating optuna RCG factory

* fixing codeql issues

* Removing metrics manager

* Fixing mypy failure

* Optuna Search Class (#877)

* Base Optuna class plus unit testing

* codeql fixes

* more codeql fixes

* Removing metrics manager

* Removing metrics manager from Optuna RCG unit test

* Removing client from quick/optuna RCGs

* Changing gpus to gpu_count in quick/optuna RCGs

* Removing magic number

* Fixing codeql issue

* Fixing optuna version

* Adding todo comment about client batch size support

* Using SearchParameters in OptunaRCG (#881)

* Using SearchParameters in OptunaRCG

* Fixing search parameter unit tests

* Removing debug line

* Changes based on PR

* Adding call for default parameters

* Added todo for dynamic batching

* Add Percentage Search Space to Optuna (#882)

* Added method for calculating total possible configurations

* Added min/max percentage of search space to CLI

* Connected up in optuna RCG

* Added in support to cap optuna search based on a strict number of trials (#884)

* Adding support for concurrency formula as an option in Optuna search (#885)

* Fixing merge confilct

* Adding --use-concurrency-formula to unit testing

* Add Debug info to Optuna (#889)

* Adding debug info + bug fixes

* Fixes based on PR

* Optuna Early Exit (#890)

* Add logic to enable early exit along with CLI hooks.

* Changes based on PR

* Check that model supports dynamic batching when creating param_combo (#891)

* Adding option to disable concurrency sweeping (#893)

* Adding support for client batch size (#892)

* Adding support for client batch size

* Fixes based on PR

* Removing redundant keys()

* Fixing codeQL issue

* Attempt to fix unittest issue

* Removing 3.8 testing
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants