-
Notifications
You must be signed in to change notification settings - Fork 81
Description
Hi,
I just want to report that using ros2_web_bridge saturates one CPU thread on my machine.
The likely issue is that processing power is never yielded as it should and some routines are constantly nagging to check for some event.
Here is a perf report, I produced this with very few topics; actions and services running.
31.44% node libpthread-2.23.so [.] pthread_mutex_lock
27.91% node rclnodejs.node [.] _ZN9rclnodejs8Executor3RunEPv
20.04% node libpthread-2.23.so [.] pthread_mutex_unlock
4.46% node node [.] uv_mutex_unlock
4.33% node node [.] uv_mutex_lock
3.72% node rclnodejs.node [.] uv_mutex_unlock@plt
3.30% node rclnodejs.node [.] uv_mutex_lock@plt
2.31% node node [.] 0x00000000004b5b90
2.24% node node [.] 0x00000000004b5be0
One question, is rclnodejs a wrapper on rclcpp or was is built from scratch. Wouldn't using swig or the like provide a suitable enough wrapper and easy to maintain?