-
Notifications
You must be signed in to change notification settings - Fork 212
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
Reduce rviz_default_plugins memory usage #532
Conversation
Signed-off-by: Shane Loretz <sloretz@osrfoundation.org>
Another option proposed by @clalancette is to build |
Differences in repos used by Packaging 1841 and 1842 https://ci.ros2.org/view/packaging/job/packaging_linux/1841/ micro-ROS/ros_tracing/ros2_tracing:
type: git
url: https://gitlab.com/micro-ROS/ros_tracing/ros2_tracing.git
version: c3ea84b4b98a99d0a7ba3ed94846e1aaec8a8d13
ros2/rclcpp:
type: git
url: https://github.com/ros2/rclcpp.git
version: 04f3c33de5f35b6aec38da71777bf39f47e7c7a0
ros2/rmw:
type: git
url: https://github.com/ros2/rmw.git
version: 2d020b993a983849748ededec95a5a5d45905898
ros2/system_tests:
type: git
url: https://github.com/ros2/system_tests.git
version: f9dd335393b32ee9985037cd37cd80cb084bf79a https://ci.ros2.org/view/packaging/job/packaging_linux/1842/ micro-ROS/ros_tracing/ros2_tracing:
type: git
url: https://gitlab.com/micro-ROS/ros_tracing/ros2_tracing.git
version: 17573951dd5976e365fb93311507752746364d10
ros2/rclcpp:
type: git
url: https://github.com/ros2/rclcpp.git
version: e0bf4a9c206753cfee067d265c12f47c4eb471fc
ros2/rmw:
type: git
url: https://github.com/ros2/rmw.git
version: 8ecc9531226d23b3bd24652306887256e26394d6
ros2/system_tests:
type: git
url: https://github.com/ros2/system_tests.git
version: 2f86e4239cb07c2be5b166fc781bec7a35e727d3 Of that, only |
Looking at the changes from those repos I only see one PR that might have increased memory usage. Candidate PRs
Unlikely PRs
|
This package has to build a ton of object files, so it's running a lot of It looks like the last two failures occurred on the same host. Is there possibly something happening with the host? https://ci.ros2.org/computer/linux-d98d367e/ The PR you linked to (ros2/rclcpp#1095) just adds a header that doesn't depend on any new headers. |
Did not fix issue. Closing and continuing discussion in #539 |
Opening issue because I need to ask for help. The ros2 linux packaging job is failing to build
rviz_defaullt_plugins
with an error that looks a bit like the agent ran out of memory.This PR tried compiling separate object libraries and then linking them into the big
rviz_default_plugins
library would reduce the peak memory usage. It didn't.Here's a script I wrote to watch the CPU and memory usage. It outputs csv to stdout that can be graphed.
I used it to watch the cumulative CPU and memory usage of all
ld
orcc1plus
processes on my machine while doing a clean buildrviz_default_plugins
.Here's the memory usage of building just
rviz_default_plugins
on theros2
branch. (vertical axis % of system memory used, horizontal axis seconds)Here's the memory usage using this branch
It does not appear to have reduced the peak. The only other idea I have is to break up the
rviz_default_plugins
library into smaller shared libraries.