You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Change VRDirectCB to the default when demonstrated as more efficient.
Make sure everything is type stable with regards to the VRJs and rate/affect evaluation in the no FunctionWrapper case.
Reuse last cur_rates evaluation from the condition in the affect if it is at the correct time (i.e. if the quadrature uses the endpoints).
See if additional @inbounds decorators improves performance
use preallocated u_tau instead of out-of-place evaluation.
Think about what order / type of quad rule to use. Why are we using the 4-point Gauss-Legendre quadrature currently? (For example, we could use a rule that includes endpoints to avoid recalculating the cumulative rate sum at the final point.)
The text was updated successfully, but these errors were encountered:
A secondary optimization that may be important to actually get better performance than the old approach we used is to play with the quadrature order. The higher it is the more times we need to evaluate all the rates each call to the condition vs. the less accurate the integral evaluation is for lower orders, so there may be a sweet spot that optimizes performance.
Uh oh!
There was an error while loading. Please reload this page.
VRDirectCB needs some code optimizations. Clear things to do:
cur_rates
evaluation from the condition in the affect if it is at the correct time (i.e. if the quadrature uses the endpoints).@inbounds
decorators improves performanceu_tau
instead of out-of-place evaluation.The text was updated successfully, but these errors were encountered: