Parameter performance, could named Constants be supported? #2322
-
Hi all, I have a question that I would typically ask Steven but given that he is on paternity leave I figured I'll ask here instead. I've recently vectorized one of our problems (not enormous but ~1000's of constraints pre-vectorization) and in an attempt to make the new version of the problem clean and readable (i.e. easier to debug) I used a Parameter for each of the matrices. The issue now is that even simple unit tests cause our continuous integration pods to crash because solving takes so long. The solution is obviously to set Thanks! Philippe |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 5 replies
-
Hi Philippe! Could you try timing the optimization with the CPP and SciPy different backends? Could you format the results with the info: Named constants would be reasonable but if the SciPy backend is fast enough it might make sense to add logic to trigger it automatically when there are enough parameters. It was designed to be much faster with parameters than the CPP backend. @phschiele what do you think? |
Beta Was this translation helpful? Give feedback.
-
My 2 cents: I support the idea of named Constants.
…On Sat, Jan 13, 2024 at 11:54 AM Steven Diamond ***@***.***> wrote:
Hi Philippe! Could you try timing the optimization with the CPP and SciPy
different backends?
https://www.cvxpy.org/tutorial/advanced/index.html#canonicalization-backends
Could you format the results with the info:
Number of parameters | compilation time with CPP backend | compilation
time with SciPy backend
Named constants would be reasonable but if the SciPy backend is fast
enough it might make sense to add logic to trigger it automatically when
there are enough parameters. It was designed to be much faster with
parameters than the CPP backend. @phschiele <https://github.com/phschiele>
what do you think?
—
Reply to this email directly, view it on GitHub
<#2322 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACRLIFBL5XM7FPFY33OSIR3YOK34RAVCNFSM6AAAAABBZCWIIKVHI2DSMVQWIX3LMV43SRDJONRXK43TNFXW4Q3PNVWWK3TUHM4DCMJZGA4TS>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
Hi Philippe! Could you try timing the optimization with the CPP and SciPy different backends?
https://www.cvxpy.org/tutorial/advanced/index.html#canonicalization-backends
Could you format the results with the info:
Number of parameters | compilation time with CPP backend | compilation time with SciPy backend | compilation time with CPP backend and ignore_dpp=True
Named constants would be reasonable but if the SciPy backend is fast enough it might make sense to add logic to trigger it automatically when there are enough parameters. It was designed to be much faster with parameters than the CPP backend. @phschiele what do you think?