-
Notifications
You must be signed in to change notification settings - Fork 196
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
Should we make Conjugate Gradient
+ FFTBased-preconditioner
the default for HydrostaticFreeSurfaceModel
?
#2635
Comments
Sounds good! we have to leave it only for |
I wonder about CPU execution though... because the |
These benchmarks: show a factor of 2 speed up on the CPU. In principle, the FFT is faster than a matrix multiply which may explain it? Or, perhaps the benchmarks test the wrong thing so we should re-run them. As explained on that PR, some performance is left on the table, because the fastest combination would use an FFT-based preconditioner with a matrix multiply to compute the LHS. |
Yeah, but the but anyways, maybe it's not faster, it was just I was wondering how it would compare |
Hmm, well I guess we should add that combination to https://github.com/CliMA/Oceananigans.jl/blob/main/benchmark/benchmark_hydrostatic_model.jl and re-run the benchmarks. |
I think we can close this as we have the |
Seems that #2412 suggests that this is the fastest way for grids that don't have regular horizontal spacing or have an immersed boundary.
Yet, the free surface solver constructor falls back to the
MatrixBasedSolver
in those cases.Oceananigans.jl/src/Models/HydrostaticFreeSurfaceModels/implicit_free_surface.jl
Line 101 in 95206ae
Should we change that?
The text was updated successfully, but these errors were encountered: