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

Throughput example fixes #404

Merged

Conversation

reicheratwork
Copy link
Contributor

Made the C++ throughput example program to be more in line with the expected output from the same example in CycloneDDS-C.

@reicheratwork reicheratwork force-pushed the throughput-example-fixes branch from a7dfd29 to b317905 Compare May 3, 2023 15:01
Copy link
Contributor

@eboasson eboasson left a comment

Choose a reason for hiding this comment

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

The transfer rate seems off ...

=== [Subscriber] 1050151917.000 Payload size: 8192 | Total received: 533591 samples, 4371177472 bytes | Out of order: 0 samples Transfer rate: 0.00 samples/s, 0.00 Mbit/s

It has to do with computing deltaTime (it is off by a factor of 10⁹) but I don't know the elegant solution in C++.

Otherwise I am fine with it. I can't in all honesty say "looks good to me" but I just find these "throughput" and "roundtrip" examples horrible on two counts and neither is your doing:

  • They are in a sense abusing DDS and not showing anything interesting, and one runs the risk of people using it to actually do benchmarking ...
  • The code has become so convoluted over the years with different options that is also not a straightforward example anymore

(Rant over 🙂)

I don't see lost samples and the rate is inline with expectations, so if you could have another look at the rate calculation, that'd be great.

reicheratwork and others added 8 commits June 9, 2023 10:21
Fixed the output formatting of the throughput example programs to
match that of the CycloneDDS-C throughput examples

Signed-off-by: Martijn Reicher <[email protected]>
Removed output dots

Signed-off-by: Martijn Reicher <[email protected]>
Set batched writes on throughput example programs

Signed-off-by: Martijn Reicher <[email protected]>
Fixed default parameters on throughput example programs to match
those on CycloneDDS-C

Signed-off-by: Martijn Reicher <[email protected]>
Fixed QoS on throughput example programs

Signed-off-by: Martijn Reicher <[email protected]>
Windows does not like converting from size_t to unsigned long, so
made that conversion explicit

Signed-off-by: Martijn Reicher <[email protected]>
Signed-off-by: Erik Boasson <[email protected]>
@eboasson eboasson force-pushed the throughput-example-fixes branch from 69b969c to e6a4405 Compare June 9, 2023 09:14
@eboasson eboasson merged commit 02abba3 into eclipse-cyclonedds:master Jun 9, 2023
vecenyang added a commit to vecenyang/cyclonedds-cxx that referenced this pull request Jun 14, 2023
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.

2 participants