Closed mmurooka closed 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
https://github.com/jsk-ros-pkg/jsk_control/pull/561 で対応しました。 drawする摩擦錐情報を後々とりだしたいことがあったきがしてprismにしてますが、 もっとはやくしたい場合はglで描画するのをかけばよさそうです。
ありがとうございます.
QPを解くところよりもcontact-constraintのインスタンスを作るところの方が時間がかかっています. :gen-drawing-objectを呼ばなくすると,摩擦やCOPの制約のmake-prismが呼ばれなくなり default-contact-constraintの生成時間が半分程度になります.