-
Notifications
You must be signed in to change notification settings - Fork 16
Conversation
…to large_message_rt
{ | ||
Arguments *new_args = static_cast<Arguments*>(args); | ||
int ret = subscriber_main(new_args); | ||
return static_cast<void*>(&ret); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like you're returning a pointer to a temporary object (ret
). What's trying to be accomplished here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nothing, this return code is never used.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does the signature have to be this way to work with your instrumentation I guess? Either way it should be fine for a test like this if you know it's never being used.
This looks good to me. Can you expand on any QoS settings you elected to change, either programmatically or using the xml file, which affect the real-time behavior of these examples? I ask because presumably we'd need to do the same in ROS 2 to accomplish the same results. |
sure. The only QoS setting I intentionally changed from what was in the existing examples to get better performance results was changing the "reliable" reliability to "best effort" in the Opensplice examples. But I'm not sure this setting is impacting the performance significantly, since I neglected to specify it in this PR (Connext). Actually, I could probably spend more time looking into other QoS settings to get better performance out of the examples (History, ResourceLimits, Durability, Availability). @esteve started looking into QoS profiles in ros2/design#36, but perhaps experimenting with which QoS settings are relevant for real-time performance will inform which QoS settings should be exposed to the user in the API. As a side note, I recall we had a significant discussion about how to expose QoS settings in the ROS 2 API and I don't recall what the conclusion was, perhaps we should start that conversation again online to open it up to the community. |
I think you've definitely done the right thing by setting "best-effort" On Thu, Jul 9, 2015 at 4:23 PM, Jackie Kay [email protected] wrote:
|
|
||
mkdir build | ||
cd build | ||
cmake .. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this be configured with -DCMAKE_BUILD_TYPE=Release
?
lgtm |
LGTM but I haven't built / ran the programs. |
Realtime testing RTI Connext example
Needs ros2/realtime_support#1
This PR introduces three programs instrumented for real-time performance testing: a standalone publisher, a standalone subscriber, and an intra-process comms example. Each one uses the RTI Connext C++ API.