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

Shared Memory examples #1893

Open
ex-purple opened this issue Nov 30, 2023 · 1 comment
Open

Shared Memory examples #1893

ex-purple opened this issue Nov 30, 2023 · 1 comment

Comments

@ex-purple
Copy link

Thanks for solving documentation issue #1883

But we have another issue about examples:
https://cyclonedds.io/docs/cyclonedds/latest/shared_memory/shared_mem_examples.html

Looks like ShmThroughputPublisher and ShmThroughputSubscriber have been removed here

Will these examples be added again?

@eboasson
Copy link
Contributor

eboasson commented Dec 1, 2023

Will these examples be added again?

I don't think it makes sense to have a separate "throughput" example for shared memory. I suppose there would be some value in having an example of using loans. The regular "throughput" example unfortunately can't do zero-copy because that requires the type to not contain any strings or sequences (or other things involving pointers).

It would in my view make more sense to not have any throughput and latency tests as examples, precisely because such details as the type and whether or not loans get used matter for performance measurements, but also make the examples more complicated (or requires a lot of code duplication) and that's not good for an example.

For measurements, ddsperf will happily do everything but it is somewhat complicated. Something like https://github.com/eboasson/i11eperf might work, though, but integrating that as an example in Cyclone doesn't make sense because it has stuff in there for a variety of open-source DDS implementations.

The examples I believe should show how to do loans, zero-copy, &c. but not suggest anything concerning performance measurements.

But the time it takes to make such improvements to the set of examples never seems to materialize ...

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

No branches or pull requests

2 participants