Wrench distribution QP computation times #30
Replies: 6 comments
-
There is a short walking phase ( The difference between DSP and SSP problem solving times is quite clear. |
Beta Was this translation helpful? Give feedback.
-
@aescande Computation times are the same with and without custom QR decomposition for QuadProg: At the last DSP of this example, the "no QR" (i.e. |
Beta Was this translation helpful? Give feedback.
-
In the comparison QuadProgQR vs QuadProdNoQR, are you measuring the time spent to form Q for the NoQR case ? How come that the earlier timing you did between the controllers based on LSSOL and QuadProgNoQR were very close ? |
Beta Was this translation helpful? Give feedback.
-
Yes, you can check the instructions between
I didn't commit this intermediate version so I can't tell you for sure. In the commit history timings start after we switched to the QR decomposition. |
Beta Was this translation helpful? Give feedback.
-
Removing this bias the NoQR version is actually faster: |
Beta Was this translation helpful? Give feedback.
-
We investigated the performance of LSSOL deeper with @aescande, using settings from Tasks to improve its solve times, notably: lssol_.warm(true);
lssol_.persistence(true);
lssol_.forceMinSize(false); This brought the number of iterations from 10-40 to 1-4, so that the average solve time drops from 200-400 µs to 50 µs. Incidentally, these are roughly the same solve times than Tasks' IK. Still, much slower than QuadProg: Roughly, QuadProg is 6x faster than LSSOL on the double-support QP and 20x faster on the single-support QP. |
Beta Was this translation helpful? Give feedback.
-
We've been comparing the performance of LSSOL with QuadProg in the
topic/NoLSSOL
branch for the wrench distribution quadratic program (WDQP) of the stabilizer. Currently QuadProg solves it much faster:On average QuadProg runs around 0.02 ms, vers 025 ms for LSSOL.
Beta Was this translation helpful? Give feedback.
All reactions