Skip to content

Conversation

oscardssmith
Copy link
Member

Attempt to drastically reduce the amount of aliasing between different caches to reduce the possibility of getting them out of sync (e.g. in reinit!). Things aren't totally deduplicated yet, but the goal is to only have u, J, fu, and du in a single place each.

@ChrisRackauckas
Copy link
Member

The test failures in wrappers looks real

@oscardssmith
Copy link
Member Author

agreed.

@oscardssmith
Copy link
Member Author

@avik-pal

@avik-pal
Copy link
Member

avik-pal commented Sep 5, 2025

Just FYI I will review this. I am trying to get the CI green (in #695) without this patch just so that if know if this actually breaks anything

@avik-pal
Copy link
Member

avik-pal commented Sep 6, 2025

The test failures here are real. After the latest patch we only expect the mac pre tests to intermittently fail

@oscardssmith
Copy link
Member Author

I think I might have just fixed the extension issues. Lets see if CI agrees.

@oscardssmith
Copy link
Member Author

CI seems happy (other than downgrade). @avik-pal this look ready to you? The release strategy here is to release a breaking NonlinearSolveBase change and minor changes for the rest of the libraries. Should this PR include those bumps?

@oscardssmith
Copy link
Member Author

@ChrisRackauckas review addressed. I think this is now good to go.

@ChrisRackauckas
Copy link
Member

      [2] (::NonlinearSolveBase.JacobianCache{Float64, SciMLBase.NonlinearFunction{false, SciMLBase.NoSpecialize, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Nothing, Any, Any, Any}, Float64, Float64, ADTypes.AutoForwardDiff{nothing, Nothing}, DifferentiationInterfaceForwardDiffExt.ForwardDiffOneArgDerivativePrep{Tuple{SciMLBase.NonlinearFunction{false, SciMLBase.NoSpecialize, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Nothing, Any, Any, Any}, ADTypes.AutoForwardDiff{nothing, Nothing}, Float64, Tuple{DifferentiationInterface.Constant{Float64}}}, DifferentiationInterfaceForwardDiffExt.ForwardDiffOneArgPushforwardPrep{Tuple{SciMLBase.NonlinearFunction{false, SciMLBase.NoSpecialize, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Nothing, Any, Any, Any}, ADTypes.AutoForwardDiff{nothing, Nothing}, Float64, Tuple{Float64}, Tuple{DifferentiationInterface.Constant{Float64}}}, ForwardDiff.Tag{SciMLBase.NonlinearFunction{false, SciMLBase.NoSpecialize, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Nothing, Any, Any, Any}, Float64}, ForwardDiff.Dual{ForwardDiff.Tag{SciMLBase.NonlinearFunction{false, SciMLBase.NoSpecialize, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Nothing, Any, Any, Any}, Float64}, Float64, 1}, Tuple{Nothing}}}})(::Nothing)

failure looks related.

@oscardssmith
Copy link
Member Author

@ChrisRackauckas I think this is finally ready! The CI error is gone locally.

@ChrisRackauckas
Copy link
Member

That test failure is now just lts because lts doesn't use sources.

@oscardssmith
Copy link
Member Author

Agreed. Should I include the version bumps pre merge?

@ChrisRackauckas ChrisRackauckas merged commit 3788a3f into SciML:master Oct 1, 2025
77 of 98 checks passed
@oscardssmith oscardssmith deleted the os/remove-aliasing branch October 1, 2025 21:53
@oscardssmith
Copy link
Member Author

I'll take that as a no, and make a followup for the bumps.

@ChrisRackauckas
Copy link
Member

Will these need lower bounds bumps between them?

@oscardssmith
Copy link
Member Author

yes. This is a major bump of NonlinearSolveBase and (I'm pretty sure) a minor bump of everything else (and enforcement of the new NonlinearSolveBase version)

@oscardssmith oscardssmith mentioned this pull request Oct 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants