Closed marius311 closed 3 years ago
@kimmywu I'm ready to merge this but can you check it doesn't break any of your marginal MAP stuff first and approve it when done?
Fyi, on NERSC, I'm now running with module load cuda/11.3.0
and export JULIA_CUDA_MEMORY_POOL=binned
I double checked with https://github.com/marius311/marginal_MAP_example/blob/master/marginal_MAP_example.ipynb and it runs fine (and MAP_marg is almost ~2x faster). I also updated the MAP_marg code to only depend on lnP
, so if thats changed the MAP_marg code will be self-consistent, as well as combining the old δlnP_δϕ
into MAP_marg
for simplicity.
Awesome, thank you for checking quickly. Will merge shortly.
Aggregate of a bunch of things:
Drop OptimKit and LBFGS entirely. The LBFGS just wasn't significantly better, sometimes worse actually. Additionally, https://github.com/Jutho/OptimKit.jl/issues/11 was just proving to be too annoying. Instead, MAP_joint now does some simple isotropized diagonal-only updates to the Hessian after a pre-determined burnin, which in practice I find works much better than LBFGS ever did.
Adds a new function
get_max_lensing_step
that prevents trying to take a ϕ step so large that the subsequent magnification matrix is singular which would then cause LenseFlow to error.Rewrites
MAP_marg
to only depend onlnP
, so if that's changed, its self-consistently refelected in theMAP_marg
result .Adds CUDA 3 support, drops CUDA 2 support.
Drops julia 1.5 support.