-
Notifications
You must be signed in to change notification settings - Fork 392
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
Extended HI followup: fix speed issue #10733
base: develop
Are you sure you want to change the base?
Conversation
|
|
|
|
Even with the latest commit, 4f4809f, it's still causing a 10% increase in instruction count in just our performance test files. We can figure out a solution for this, but it doesn't look like it's going in this release. I'm marking this for next release and we'll deal with this later. If this method is trimmed as far down as possible but still this much slower, I would suggest adding a switch to calculate heat index using the old way by default and then enabling the new method as an alternative. This would be a user-facing input option, so definitely not in this current release. |
Thanks, @Myoldmopar . It seems that changing the solver type had the biggest impact. Then I tried adding some result caching but those doesn't save as much (like improved 1-2 percentage point). I also tried to limit the domain of its application (in the old PR there was a plot of how results differ between the old and the new methods. I restricted it to only apply on the bottom right region where the two methods differ a lot). That doesn't help much either. Potentially the new method just requires a lot of computation. (modify): I might have had the equation part wrong for restraining the domain where extended HI is applied (the white region in the following figures. I modified it and tried locally, roughly it improved it by about 6-7%. Might still not be good enough. |
|
|
|
|
@Myoldmopar I added an idd object to switch heat index calculation method. Would you mind taking a look? Thanks :) |
|
@yujiex @Myoldmopar it has been 28 days since this pull request was last updated. |
Pull request overview
A couple of different approaches were tried out to improve the performance
Bisection
toBisectionThenRegulaFalsi
: this had the biggest impact, bringing the damage from 70% to about 12%The new extend HI method might just requires a lot of computation. So The following object is added to provide a switch from the simplified to the extended HI method.
NOTE: ENHANCEMENTS MUST FOLLOW A SUBMISSION PROCESS INCLUDING A FEATURE PROPOSAL AND DESIGN DOCUMENT PRIOR TO SUBMITTING CODE
Pull Request Author
Add to this list or remove from it as applicable. This is a simple templated set of guidelines.
Reviewer
This will not be exhaustively relevant to every PR.