You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It is possible to speedup simulation by pre-compiling computationally intensive loops. For C++ core, the main bottlenecks are related to the contact solver, namely the decomposition of the mass matrix and the projected gauss seidel algorithm. Precompilation is not going to help much in this cases. However, it could be very helpful to speed-up reinforcement learning pipeline where many basic operators and pinocchio functions are chained together. It would not only totally remove the overhead of intermediary function calls, but also speed-up computation by taking advantage of the given model's kinematic tree. What is still unclear is in what extend it casadi symbolics can be mixed with the robot model exposed by the simulator. The trivial implementation would consists in compiling standalone algorithms that requires proving the current state of the simulator systematically. It is unlikely to increase much the computational cost as only forward kinematics in going to be involved, which is fairly cheap to evaluate, in particular if the computation graph is simplified at compile time to remove irrelevant branches. This feature is only available with pinocchio>=2.9.0, which may require some refactoring of Jiminy to support it.
Here is an example of what can be done using casadi in python.
The text was updated successfully, but these errors were encountered:
It is possible to speedup simulation by pre-compiling computationally intensive loops. For C++ core, the main bottlenecks are related to the contact solver, namely the decomposition of the mass matrix and the projected gauss seidel algorithm. Precompilation is not going to help much in this cases. However, it could be very helpful to speed-up reinforcement learning pipeline where many basic operators and pinocchio functions are chained together. It would not only totally remove the overhead of intermediary function calls, but also speed-up computation by taking advantage of the given model's kinematic tree. What is still unclear is in what extend it casadi symbolics can be mixed with the robot model exposed by the simulator. The trivial implementation would consists in compiling standalone algorithms that requires proving the current state of the simulator systematically. It is unlikely to increase much the computational cost as only forward kinematics in going to be involved, which is fairly cheap to evaluate, in particular if the computation graph is simplified at compile time to remove irrelevant branches. This feature is only available with pinocchio>=2.9.0, which may require some refactoring of Jiminy to support it.
Here is an example of what can be done using casadi in python.
The text was updated successfully, but these errors were encountered: