Skip to content
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

Switch SCS timings to seconds #1880

Merged
merged 1 commit into from Aug 29, 2022
Merged

Switch SCS timings to seconds #1880

merged 1 commit into from Aug 29, 2022

Conversation

SteveDiamond
Copy link
Collaborator

Description

Switches SCS timings from milliseconds to seconds.
Issue link (if applicable): #1878

Type of change

  • New feature (backwards compatible)
  • New feature (breaking API changes)
  • Bug fix
  • Other (Documentation, CI, ...)

Contribution checklist

  • Add our license to new files.
  • Check that your code adheres to our coding style.
  • Write unittests.
  • Run the unittests and check that they’re passing.
  • Run the benchmarks to make sure your change doesn’t introduce a regression.

@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.


Steven Diamond seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

@github-actions
Copy link

github-actions bot commented Aug 29, 2022

Benchmarks that have stayed the same:

   before           after         ratio
 [129ea157]       [45d4f612]
      32.4±0s          33.3±0s     1.03  cvar_benchmark.CVaRBenchmark.time_compile_problem
      1.98±0s          2.02±0s     1.02  simple_LP_benchmarks.SimpleScalarParametrizedLPBenchmark.time_compile_problem
      10.2±0s          10.3±0s     1.01  semidefinite_programming.SemidefiniteProgramming.time_compile_problem
      48.6±0s          48.7±0s     1.00  sdp_segfault_1132_benchmark.SDPSegfault1132Benchmark.time_compile_problem
      9.92±0s          9.95±0s     1.00  optimal_advertising.OptimalAdvertising.time_compile_problem
      4.36±0s          4.35±0s     1.00  simple_LP_benchmarks.SimpleFullyParametrizedLPBenchmark.time_compile_problem
      26.4±0s          26.2±0s     0.99  qp_1611_benchmark.QP1611Benchmark.time_compile_problem
      26.3±0s          26.0±0s     0.99  simple_LP_benchmarks.SimpleLPBenchmark.time_compile_problem
      12.4±0s          12.3±0s     0.99  svm_l1_regularization.SVMWithL1Regularization.time_compile_problem
      10.7±0s          10.1±0s     0.95  huber_regression.HuberRegression.time_compile_problem

@SteveDiamond
Copy link
Collaborator Author

Fixes #1878. Failures unrelated and known mosek tests.

@phschiele
Copy link
Collaborator

phschiele commented Aug 29, 2022

Confirming that SCS 2.x and 3.x are affected:
2.x:

63.798962 583.526313

3.x:

92.963834 2936.187088

Side note: Interesting to see that 2.x was much faster on this problem instance (I fixed eps=1e-4 in both cases).

@SteveDiamond SteveDiamond reopened this Aug 29, 2022
@SteveDiamond SteveDiamond merged commit 129ea15 into master Aug 29, 2022
@SteveDiamond SteveDiamond deleted the bugfix/scs-timing branch August 29, 2022 23:04
SteveDiamond added a commit that referenced this pull request Aug 31, 2022
Co-authored-by: Steven Diamond <steven@gridmatic.com>
@SteveDiamond SteveDiamond mentioned this pull request Aug 31, 2022
9 tasks
SteveDiamond added a commit that referenced this pull request Aug 31, 2022
Co-authored-by: Steven Diamond <steven@gridmatic.com>
@SteveDiamond SteveDiamond mentioned this pull request Aug 31, 2022
9 tasks
SteveDiamond added a commit that referenced this pull request Nov 4, 2022
* fix osqp warm start (#1882)

* switch SCS timings to seconds (#1880)

Co-authored-by: Steven Diamond <steven@gridmatic.com>

* merge fix

* merge fix

* Fix SOC residual (#1844)

* fix SOC residual

* dimension test

* Suggestion for how to compute SOC residual (#1853)

Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>

* Fix bug with diff (#1835)

* fix #1834

* test error

Co-authored-by: Steven Diamond <steven@gridmatic.com>

* fix #1828 (#1829)

* fix mosek

* switch pcp opt vals back

* resolved merge conflicts

* removed mi_lp_5 test

* Update __init__.py

Resolve #1910

* allow lists as shape definitions

* fix types

* fix types for 3.6

* fix gradient for multidimensional quad form (#1854)

* fix multidimensional quad form

* autoblack messed up line ordering

* Adding edge case handling for string inputs into norm (#1871)

* Adding edge case handling for string inputs into norm

Signed-off-by: KerimovEmil <emilkerimov93@gmail.com>

* Update cvxpy/atoms/norm.py

Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>

* Adding norm exception tests to ensure that invalid string inputs are caught

Signed-off-by: KerimovEmil <emilkerimov93@gmail.com>
Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>
Co-authored-by: Steven Diamond <steven@gridmatic.com>

Signed-off-by: KerimovEmil <emilkerimov93@gmail.com>
Co-authored-by: Fabian Schramm <55981657+fabinsch@users.noreply.github.com>
Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>
Co-authored-by: Riley Murray <rileyjmurray@users.noreply.github.com>
Co-authored-by: Robert Huisman <74955560+roberthuisman@users.noreply.github.com>
Co-authored-by: KerimovEmil <emilkerimov93@gmail.com>
SteveDiamond added a commit that referenced this pull request Nov 4, 2022
* fix osqp warm start (#1882)

* switch SCS timings to seconds (#1880)

Co-authored-by: Steven Diamond <steven@gridmatic.com>

* merge fix

* fix test

* resolve merge

* Fix SOC residual (#1844)

* fix SOC residual

* dimension test

* Suggestion for how to compute SOC residual (#1853)

Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>

* Fix bug with diff (#1835)

* fix #1834

* test error

Co-authored-by: Steven Diamond <steven@gridmatic.com>

* fix #1828 (#1829)

* cap ortools at 9.3

* fix mosek

* switch pcp opt vals back

* resolve merge conflict

* Update __init__.py

Resolve #1910

* allow list as shape input

* fix gradient for multidimensional quad form (#1854)

* fix multidimensional quad form

* autoblack messed up line ordering

* Adding edge case handling for string inputs into norm (#1871)

* Adding edge case handling for string inputs into norm

Signed-off-by: KerimovEmil <emilkerimov93@gmail.com>

* Update cvxpy/atoms/norm.py

Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>

* Adding norm exception tests to ensure that invalid string inputs are caught

Signed-off-by: KerimovEmil <emilkerimov93@gmail.com>
Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>
Co-authored-by: Steven Diamond <steven@gridmatic.com>

* Fix time_limit_sec for GLOP and PDLP (#1859)

Fixes #1858

Signed-off-by: KerimovEmil <emilkerimov93@gmail.com>
Co-authored-by: Fabian Schramm <55981657+fabinsch@users.noreply.github.com>
Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>
Co-authored-by: Riley Murray <rileyjmurray@users.noreply.github.com>
Co-authored-by: Robert Huisman <74955560+roberthuisman@users.noreply.github.com>
Co-authored-by: KerimovEmil <emilkerimov93@gmail.com>
Co-authored-by: Miles Lubin <miles.lubin@gmail.com>
SteveDiamond added a commit that referenced this pull request Dec 27, 2022
* fix osqp warm start (#1882)

* switch SCS timings to seconds (#1880)

Co-authored-by: Steven Diamond <steven@gridmatic.com>

* merge fix

* merge fix

* Fix SOC residual (#1844)

* fix SOC residual

* dimension test

* Suggestion for how to compute SOC residual (#1853)

Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>

* Fix bug with diff (#1835)

* fix #1834

* test error

Co-authored-by: Steven Diamond <steven@gridmatic.com>

* fix #1828 (#1829)

* fix mosek

* switch pcp opt vals back

* resolved merge conflicts

* removed mi_lp_5 test

* Update __init__.py

Resolve #1910

* allow lists as shape definitions

* fix types

* fix types for 3.6

* fix gradient for multidimensional quad form (#1854)

* fix multidimensional quad form

* autoblack messed up line ordering

* Adding edge case handling for string inputs into norm (#1871)

* Adding edge case handling for string inputs into norm

Signed-off-by: KerimovEmil <emilkerimov93@gmail.com>

* Update cvxpy/atoms/norm.py

Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>

* Adding norm exception tests to ensure that invalid string inputs are caught

Signed-off-by: KerimovEmil <emilkerimov93@gmail.com>
Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>
Co-authored-by: Steven Diamond <steven@gridmatic.com>

* disallow float for diamatrix values (#1931)

* add setup.cfg

* Make log_det robust to numerical issues with complex data (#1866)

* log_det takes Hermitian part of its input, therefore can assume that "sign" from numpys slogdet is real.

* Update test_complex.py

* Update test_complex.py

Make certain failing tests verbose, so we can see why logdet tests fail on a small number of platforms.

* guess for fix

* lower precision of test log det

* Update cvxpy/tests/test_complex.py

Remove verbose

Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>

* Update cvxpy/tests/test_complex.py

Remove verbose from test

Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>

Co-authored-by: Steven Diamond <diamond.po.central@gmail.com>
Co-authored-by: Steven Diamond <steven@gridmatic.com>
Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>

* Adapt to API changes in gurobipy (#1962)

Signed-off-by: KerimovEmil <emilkerimov93@gmail.com>
Co-authored-by: Fabian Schramm <55981657+fabinsch@users.noreply.github.com>
Co-authored-by: phschiele <44360364+phschiele@users.noreply.github.com>
Co-authored-by: Riley Murray <rileyjmurray@users.noreply.github.com>
Co-authored-by: Robert Huisman <74955560+roberthuisman@users.noreply.github.com>
Co-authored-by: KerimovEmil <emilkerimov93@gmail.com>
Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
Co-authored-by: Robert Luce <2168992+rluce@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants