jsk-ros-pkg / jsk_control

jsk control ros packages
http://github.com/jsk-ros-pkg/jsk_control
14 stars 51 forks source link

[eus_qp] add option to select whether to generate drawing object for constraint #558

Closed mmurooka closed 8 years ago

mmurooka commented 8 years ago

QPを解くところよりもcontact-constraintのインスタンスを作るところの方が時間がかかっています. :gen-drawing-objectを呼ばなくすると,摩擦やCOPの制約のmake-prismが呼ばれなくなり default-contact-constraintの生成時間が半分程度になります.

34.irteusgl$ (bench
 (dotimes (i 1000)
   (instance default-contact-constraint
             :init
             :mu-trans 0.5 :mu-rot 0.5
             :l-min-x 0 :l-max-x 0
             :l-min-y 0 :l-max-y 0)))
;; time -> 0.645636[s]
nil
35.irteusgl$ (bench
 (dotimes (i 1000)
   (instance default-contact-constraint
             :init
             :mu-trans 0.5 :mu-rot 0.5
             :l-min-x 0 :l-max-x 0
             :l-min-y 0 :l-max-y 0 :gen-drawing? nil)))
;; time -> 0.285636[s]
nil
snozawa commented 8 years ago

https://github.com/jsk-ros-pkg/jsk_control/pull/561 で対応しました。 drawする摩擦錐情報を後々とりだしたいことがあったきがしてprismにしてますが、 もっとはやくしたい場合はglで描画するのをかけばよさそうです。

mmurooka commented 8 years ago

ありがとうございます.