Closed ahendrix closed 11 years ago
[gjones] Are you setting the service calls to be persistent? In python in the ServiceProxy this means setting the third argument, currently defaulted to false, to true. I'm almost positive that a name lookup shouldn't happen if using a persistent service - I'm less sure whether or not a latched topic would represent a performance improvement.
[sachinc] I changed the service calls from the collision free controller to persistent service calls. This should fix the problem. Reopen this ticket if you still see issues.
I'm running the collision free arm code in the burn in room, and we discovered the code is making dozens of service calls every second. I'm commanding trajectories at about 1Hz, using the collision free arm planner.
We noticed a problem where we had 200 name lookups/second on the firewall, and that each service call corresponded to a name lookup.
The
planning_environment/environment_server
node has 7 service calls. Can these be changed to latched topics? For persistent use, this should cause less hits to the master and the network.For the burn in room, we could see lots of service calls quickly.
{{{ get_trajectory_validityservice = privatehandle.advertiseService("get_trajectory_validity", &E\ nvironmentServer::getTrajectoryValidity, this); get_env_safetyservice = privatehandle.advertiseService("get_environment_safety", &Environment\ Server::getEnvironmentSafety, this); get_execution_safetyservice = privatehandle.advertiseService("get_execution_safety", &Environ\ mentServer::getTrajectoryValidity, this); set_constraintsservice = privatehandle.advertiseService("set_constraints", &EnvironmentServer\ ::setConstraints, this); get_joints_in_groupservice = privatehandle.advertiseService("get_joints_in_group", &Environme\ ntServer::getJointsInGroup, this);
::getRobotState, this); get_state_validityservice = privatehandle.advertiseService("get_state_validity", &Environment\ Server::getStateValidity, this); allowed_contact_regionspublisher = privatehandle.advertise("\
allowed_contact_regions_array", 128);
}}}
trac data: