How to implement paralell threads on plugin
Hi,
I am currently working with a velodyne plugin on Gazebo. The plugins works fine, however it seems that, when the simulation starts calculating points (E.g.: I subscribe to the Pointcloud) the real time factor drops from 1.00 to 0.50 slowing deeply the whole simulation and thus affecting other services that I am testing.
Is there a way to improve this performance?
One of the ways I want to do this is by adding working threads to the plugin, but I was not able to find any documentation on this possibility. If anyone knows any info, paper or implementation about this topic it would be nice if you share it here.
Thanks in advance.
Are you using a
gpu_ray
sensor?@chapulina - I'm trying to do this with a PR2, running Gazebo 9, by changing the hokuyo lidar from
ray
togpu_ray
as suggested. I'm not seeing any significant improvement (maybe 0.05 RTF). Is there any special dependency here on OpenGL or other libraries that may be needed?Is there any way to verify that
gpu_ray
is being run by Gazebo?Also, is there any other documentation on how to maximize Gazebo performance? I haven't found any on the wikis or docs.
If you're using
gpu_ray
Gazebo will only try to load that sensor, so it's safe to assume you're using the correct one. I don't know of any documents explaining how to improve sensor performance. The general tip I can give you is to reduce resolution to the minimum that covers your needs :)Is there any way to introspect what plugins are currently running in Gazebo? I look in the list in the GUI and don't see one for the ray sensor, even though I am getting laser scan data published to ROS.