8000 Roslaunch performance improvement by dirk-thomas · Pull Request #682 · ros/ros_comm · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Roslaunch performance improvement #682

Merged
merged 2 commits into from
Oct 13, 2015

Conversation

dirk-thomas
Copy link
Member

This reverts #676 and implements a different approach.

@wjwwood
Copy link
Member
wjwwood commented Oct 12, 2015

+1

@ros-pull-request-builder
Copy link
Member

Test passed.
Refer to this link for build results: http://jenkins.ros.org/job/_pull_request-indigo-ros_comm/406/

@@ -90,7 +89,7 @@ def resolve_launch_arguments(args):
# try to resolve launch file in package first
if len(args) >= 2:
try:
resolved = roslaunch.resource_cache.find_resource(args[0], args[1])
resolved = roslib.packages.find_resource(args[0], args[1])
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we use cached resource for find_resource? (not only find_node at https://github.com/ros/ros_comm/pull/682/files#diff-67998749e41c63572aa0901b6715e9a0R251)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This function seems to be only called once. What is your use case where caching data here would improve anything?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually I don't fully understand about rospack instance. I just wonder we can pass rospack instance to find_resource function which has cached source _path_to_package as previous implementation.

8000

@wkentaro
Copy link
Contributor

The finding paths is really fast. It's even faster than the implementation before in #676.

@ros-pull-request-builder
Copy link
Member

Test passed.
Refer to this link for build results: http://jenkins.ros.org/job/_pull_request-indigo-ros_comm/409/

@dirk-thomas dirk-thomas force-pushed the roslaunch_performance_improvement branch from fa79ca8 to f2a5838 Compare October 13, 2015 00:48
dirk-thomas added a commit that referenced this pull request Oct 13, 2015
@dirk-thomas dirk-thomas merged commit ec86fc0 into indigo-devel Oct 13, 2015
@dirk-thomas dirk-thomas deleted the roslaunch_performance_improvement branch October 13, 2015 00:49
@ros-pull-request-builder
Copy link
Member

Test passed.
Refer to this link for build results: http://jenkins.ros.org/job/_pull_request-indigo-ros_comm/410/

@ros-pull-request-builder
Copy link
Member

Test passed.
Refer to this link for build results: http://jenkins.ros.org/job/_pull_request-indigo-ros_comm/413/

@guihomework
Copy link

@dirk-thomas , thanks a lot on solving this caching problem.

However, we encountered a similar problem also in gazebo_ros_pkgs (ros-simulation/gazebo_ros_pkgs#362) when resolving URDF resources (package://)
Indeed, the ros::package::getPath() is used there and is not caching anything either. We cached locally now which makes the resource resolution 6 times faster, but it might make sense to cache in the ros::package implementation. That caching at low level would probably also accelerate rviz loading models, and probably resolving URDF resources the same way.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants
0