-
Notifications
You must be signed in to change notification settings - Fork 34
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
Performance benchmarking the k4a publiser #283
Comments
Attempting to push the limits of loopback (default QoS, rclpy subscriber and publisher):
So we're definitely not hitting the limits of the loopback network at 30 Hz |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Summary
This issue to serve as a discussion thread for investigating slowdowns and other benchmarking performance of ros2 when tested using the k4a camera publisher.
I've created a repo here : performance-testing which uses a fake k4a camera publisher, and a subscriber that reads the messages and measures the throughput. Detailed instructions are in the README file . It also shows a topic wise breakdown of the bandwidth used. By default the publisher runs at 30 Hz.
To summarize, I was reading data at 287 MB/s from all the topics, and a percentage wise split of that is as follows :
Mininet can only simulate connections upto 1000 Mbit/s, so it is not possible to simulate the 25 Gbit/s switch using that.
Aim
The ultimate aim here to make the messages reach smoother on the other end.
Solutions
Possible tradeoffs and constraints
What are the parameters here that we're willing to compromise on ? Can we add more compute, latency, or change QoS policies ? Adding an intermediate compression node might add some latency and need extra compute, but will make the messages much smaller in size.
The poincloud messages are the largest, so we could try setting the Reliability on that to "best effort" or changing durability to "volatile". This also depends on how lossy the network is, and do we care about time deadlines for message delivery.
Things to investigate
I'm open to ideas so feel free to brainstorm on this thread cc @IanTheEngineer @calderpg-tri @sloretz
The text was updated successfully, but these errors were encountered: