-
Notifications
You must be signed in to change notification settings - Fork 134
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
[Rebase & FF] 202405: BaseTools/WinRcPath: Improve Performance. #903
Merged
apop5
merged 3 commits into
microsoft:release/202405
from
apop5:personal/apop5/winrcimprovement
Jul 9, 2024
Merged
[Rebase & FF] 202405: BaseTools/WinRcPath: Improve Performance. #903
apop5
merged 3 commits into
microsoft:release/202405
from
apop5:personal/apop5/winrcimprovement
Jul 9, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
apop5
changed the title
BaseTools/WinRcPath: Improve Performance.
[Rebase & FF] 202405: BaseTools/WinRcPath: Improve Performance.
Jun 13, 2024
makubacki
reviewed
Jun 17, 2024
WinRcPath generally takes about 2 seconds to run, due to calling multiple .bat files behind the scenes. This change reduces this time to ~0 seconds due to the following changes: 1. It will attempt to load the path from the cache, which is located a $(WORKSPACE)/Conf/.rc_path. If the loading is a success and the rc_path still exists, it will use it. 2. If the cache did not exist, or the path provided by the cache does not exist, it will find the rc path via the .bat files. If that succeeds, it will write the path to the cache.
apop5
force-pushed
the
personal/apop5/winrcimprovement
branch
from
June 26, 2024 03:48
abbb272
to
dab22b3
Compare
github-actions
bot
added
the
language:python
Pull requests that update Python code
label
Jun 26, 2024
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## release/202405 #903 +/- ##
=================================================
Coverage ? 1.33%
=================================================
Files ? 1433
Lines ? 359398
Branches ? 4581
=================================================
Hits ? 4792
Misses ? 354547
Partials ? 59
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
makubacki
approved these changes
Jun 26, 2024
@apop5 you accidently added a step 3 in your PR description |
Javagedes
approved these changes
Jun 26, 2024
os-d
pushed a commit
to os-d/mu_basecore
that referenced
this pull request
Jul 16, 2024
…osoft#903) ## Description WinRcPath generally takes about 2 seconds to run, due to calling multiple .bat files behind the scenes. This change reduces this time to ~0 seconds due to the following changes: 1. It will attempt to load the path from the cache, which is located a $(WORKSPACE)/Conf/.rc_path. If the loading is a success and the rc_path still exists, it will use it. 2. If the cache did not exist, or the path provided by the cache does not exist, it will find the rc path via the .bat files. If that succeeds, it will write the path to the cache. ## Cherry-Pick and squash the following commits: [fe9fc52](microsoft@fe9fc525d9) - [x] Impacts functionality? - **Functionality** - Does the change ultimately impact how firmware functions? - Examples: Add a new library, publish a new PPI, update an algorithm, ... - [ ] Impacts security? - **Security** - Does the change have a direct security impact on an application, flow, or firmware? - Examples: Crypto algorithm change, buffer overflow fix, parameter validation improvement, ... - [ ] Breaking change? - **Breaking change** - Will anyone consuming this change experience a break in build or boot behavior? - Examples: Add a new library class, move a module to a different repo, call a function in a new library class in a pre-existing module, ... - [ ] Includes tests? - **Tests** - Does the change include any explicit test code? - Examples: Unit tests, integration tests, robot tests, ... - [ ] Includes documentation? - **Documentation** - Does the change contain explicit documentation additions outside direct code modifications (and comments)? - Examples: Update readme file, add feature readme file, link to documentation on an a separate Web page, ... ## How This Was Tested 1. Confirmed the plugin will create a cache file on first run and use itin later runs 2. Confirmed updating the path in the cache to a wrong value will invoke the typical means to find the cache and save the correct path into the cache. ## Integration Instructions N/A Co-authored-by: Joey Vagedes <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
WinRcPath generally takes about 2 seconds to run, due to calling multiple .bat files behind the scenes. This change reduces this time to ~0 seconds due to the following changes:
It will attempt to load the path from the cache, which is located a $(WORKSPACE)/Conf/.rc_path. If the loading is a success and the rc_path still exists, it will use it.
If the cache did not exist, or the path provided by the cache does not exist, it will find the rc path via the .bat files. If that succeeds, it will write the path to the cache.
Cherry-Pick and squash the following commits:
fe9fc525d9
flow, or firmware?
validation improvement, ...
in build or boot behavior?
a function in a new library class in a pre-existing module, ...
outside direct code modifications (and comments)?
on an a separate Web page, ...
How This Was Tested
Integration Instructions
N/A