-
Notifications
You must be signed in to change notification settings - Fork 46
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
Launching several of nodes at the same time causes 100% CPU load and hangup #408
Comments
The network interface scan has been significantly improved by eclipse-zenoh/zenoh#1704. |
eclipse-zenoh/zenoh#1717 will also significantly redeuce CPU usage at launch time. |
It seems like there has been significant improvement with Zenoh. 🎉 However, when running the following command: ros2 launch turtlebot4_gz_bringup turtlebot4_gz.launch.py slam:=true nav2:=true rviz:=true the following errors are still appearing:
Do you know anything about this? |
@Tacha-S could you provide more details. Specifically,
|
sudo apt install ros-jazzy-turtlebot4-simulator ros-jazzy-irobot-create-nodes
ros2 launch turtlebot4_gz_bringup turtlebot4_gz.launch.py slam:=true nav2:=true rviz:=true
export RMW_IMPLEMENTATION=rmw_zenoh_cpp
export ZENOH_ROUTER_CONFIG_URI=$HOME/zenoh_router_config.json5
export ZENOH_SESSION_CONFIG_URI=$HOME/zenoh_session_config.json5
export ROS_DOMAIN_ID=67 configs |
We are having the same issues on a risc-v board. Is this related to starting processes independent of each other ? |
We had a similar issue seeing many |
#446 should fix these issues. Could you compiling from source against that branch and try again? |
@Tacha-S I just tried your example with the latest I'll close this ticket now but let me know if this is still an issue and we can re-open it. |
It's not resolved. 😢 [static_transform_publisher-6] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/get_parameters not found in topic_map. Report this.
[static_transform_publisher-6] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/get_parameters not found in topic_map. Report this.
[static_transform_publisher-6] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/get_parameter_types not found in topic_map. Report this.
[static_transform_publisher-6] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/get_parameter_types not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /controller_manager/configure_controller not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: qos :2:,10:,:,:,, not found in for topic type controller_manager_msgs::srv::dds_::ConfigureController_. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /controller_manager/switch_controller not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: qos :2:,10:,:,:,, not found in for topic type controller_manager_msgs::srv::dds_::SwitchController_. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/describe_parameters not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/describe_parameters not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/get_parameters not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/get_parameters not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/get_parameter_types not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/get_parameter_types not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/get_parameter_types not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/get_parameter_types not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /controller_manager/configure_controller not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: qos :2:,10:,:,:,, not found in for topic type controller_manager_msgs::srv::dds_::ConfigureController_. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /controller_manager/switch_controller not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: qos :2:,10:,:,:,, not found in for topic type controller_manager_msgs::srv::dds_::SwitchController_. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/describe_parameters not found in topic_map. Report this.
[parameter_bridge-18] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/describe_parameters not found in topic_map. Report this.
[collision_monitor-54] [ERROR][rmw_zenoh_cpp]: topic name /controller_manager/configure_controller not found in topic_map. Report this.
[collision_monitor-54] [ERROR][rmw_zenoh_cpp]: qos :2:,10:,:,:,, not found in for topic type controller_manager_msgs::srv::dds_::ConfigureController_. Report this.
[collision_monitor-54] [ERROR][rmw_zenoh_cpp]: topic name /controller_manager/switch_controller not found in topic_map. Report this.
[collision_monitor-54] [ERROR][rmw_zenoh_cpp]: qos :2:,10:,:,:,, not found in for topic type controller_manager_msgs::srv::dds_::SwitchController_. Report this.
[static_transform_publisher-6] [ERROR][rmw_zenoh_cpp]: topic name /spawner_diffdrive_controller/list_parameters not found in topic_map. Report this. |
@boxanm I am using 12th Gen Intel(R) Core(TM) i7-12700, did you solve it using a more powerful CPU? |
@Tacha-S apart from those error messages, is the application working? From a recent discussion with Zettascale we learnt that Zenoh does not guarantee ordering of liveliness tokens so it is possible for the deletion token to be received before the one for its creation. This is especially possible for short-lived nodes like the controller spawner whose job is to load a controller into the controller manager (iirc). Hence, i've also opened #454 to update the behavior to not print this error any longer. |
I see, that makes sense. |
@Tacha-S glad to know that the system might have been functioning correctly. Keep us posted if you see any issues otherwise. |
#455 sometimes occurs, but not always. [create-3] thread '<unnamed>' panicked at /home/gisen/.cargo/git/checkouts/zenoh-cc237f2570fab813/e4ea6f0/commons/zenoh-runtime/src/lib.rs:154:21:
[create-3] The Thread Local Storage inside Tokio is destroyed. This might happen when Zenoh API is called at process exit, e.g. in the atexit handler. Calling the Zenoh API at process exit is not supported and should be avoided.
[create-3] note: run with RUST_BACKTRACE=1 environment variable to display a backtrace |
It has been reported that starting many nodes at the same time in separate processes (order of hundreds), can lead to a spike in CPU usage and hangups.
Zettascale has identified the cause of the issue to related to re-scanning the list of network interfaces on the host machine for each node and short timeouts while doing do. A fix is underway.
The text was updated successfully, but these errors were encountered: