-
Notifications
You must be signed in to change notification settings - Fork 243
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
Find Mode TrustVerify #3604
base: develop
Are you sure you want to change the base?
Find Mode TrustVerify #3604
Conversation
include/miopen/miopen.h
Outdated
miopenConvolutionFindModeTrustVerify = | ||
6, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Needs docs like the others.
The PR description is probably pretty close to what is needed!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
added doc
The performance of find mode TrustVerify is between the performance of find mode DynamicHybrid and find enforce SearchDbUpdate.
First run with TrustVerify is generally slower than DynamicHybrid. |
@@ -29,7 +29,6 @@ Enable this feature using these commands: | |||
|
|||
.. code:: bash | |||
|
|||
export MIOPEN_FIND_MODE=3 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Found that setting find enforce disables find mode inputs. So removing these unnecessary lines.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. I've made a couple of minor editorial suggestions.
Co-authored-by: Jeffrey Novotny <[email protected]>
Additional MIOPEN_FIND_MODE = 6 (TrustVerify)
This mode extends DynamicHybrid
Running with TrustVerify will first attempt to load tuning results from system resources
If no solution is returned tuning will be triggered
If a solution is retuned the user find db will be checked for the solution
If solution is from the user find db it will be used
If a solution is from the system (db or model), the solution will be evaluated and the new time will be compared to the time reported by the solution
If the evaluated / reported time is less than the tolerance threshold then the system result is added to the user db and the solution is returned
If the evaluated / reported time exceeds the tolerance, then tuning will be triggered
This find mode will ensure that all configurations are tuned for the deployment system. Solutions from system resources are verified once and tuned if markedly different from expectation. Results from user dbs are considered reliable and used without further verification.