Lorenzo Stella
Lorenzo Stella
Yes sorry, it’s already in this PR, I was probably checking in master by mistake. I’m open to changing the default, let’s maybe look into a more extensive comparison for...
You mention that in CholmodSolve2 there is no support for complex right-hand side vectors: is that a limitation of SuiteSparse?
Hi @kose-y, I’m not familiar with CuArrays, but from what I understand the type of arrays it provides is compatible with AbstractArray, and that should be sufficient for many operators...
Well in that specific case I think it makes sense to just remove that loop and instead rely on broadcasting. Other cases may be just as simple. Thanks for pointing...
That would be nice, thanks. You can add the list as items to this issue, by editing the original post, so that progress towards solving this is tracked.
@kose-y I’ve edited your post adding a list of proxes that could be improved. I’m not sure 100% on all of them, but I guess they’re worth a try. I...
That's a good idea, even before any multi-threading is introduced: after a quick benchmark, I observed an increase in time of ~10% for NormL2 and ~270% (!!!) for IndBox, when...
@mfalt I used exactly the line you mentioned, and vectors lb/ub. I tried with size 10k and 100k, and observed a slowdown similar to yours. In the 100k case -...
My takeaway so far: for serial computation, looping through the data just once wins, and should be preferred over broadcasting. For `IndBox` with Array bounds (size = 100k), I'm getting...
@Shuvomoy this could actually be done by implementing `prox!` for the [`Sum` type](https://github.com/kul-forbes/ProximalOperators.jl/blob/master/src/calculus/sum.jl), at least for simple cases: for "smooth + easily proximable" this can be done very efficiently I...