-
Notifications
You must be signed in to change notification settings - Fork 41
Out of place optimizations #107
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
Conversation
src/jacobians.jl
Outdated
| dx = (vecfx1-vecfx)/epsilon | ||
| J = J + _make_Ji(J, eltype(x), dx, color_i, nrows, ncols) | ||
| if jac_prototype isa Nothing | ||
| J = hcat(J, dx) |
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.
doing a mapreduce would likely perform the hcat in a smarter way IIRC. This won't allocate as much as before, but it will still allocate quite a bit.
|
I think central differencing is broken? |
|
No it wasn't broken, I used wrong argument. How does this look like now @ChrisRackauckas ? |
|
Can you test this locally with OrdinaryDiffEq.jl before we tag and merge? Last time it seems like we hit something that was missing from the FiniteDiff tests |
|
Yes, I have started one |
| end | ||
|
|
||
| if jac_prototype isa Nothing | ||
| if jac_prototype isa Nothing && sparsity isa Nothing |
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.
is there a specific file in OrdinaryDiffEq.jl that we should include as a downstream test here?
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.
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.
yes that's a good one. Can you setup an environment which does a downstream test to that? That should hopefully catch any outrageous issues.
|
I will merge but let's not tag until we have a bit of downstream testing. |
Let's see how test turns out, and move to sparse ones next