Is it possible to run the RTI Perftest on other DDS platforms?

3 posts / 0 new
Last post
Offline
Last seen: 4 years 9 months ago
Joined: 03/08/2019
Posts: 2
Is it possible to run the RTI Perftest on other DDS platforms?

I would like to benchmark RTI against other platforms such as opensplice using a common test. If possible, how much would have to be changed to get the RTI perftests to run on other platforms?

Fernando Garcia's picture
Offline
Last seen: 5 months 5 days ago
Joined: 05/18/2011
Posts: 199

Hi Nat,

You can do it, but you will need to abstract out and take into account a number of things.

Firstly, I would recommend you use the Modern C++ API (srcCpp03). If the DDS implementation you want to compare to RTI's support that API, you will be able to reuse most of the APIs, because all classes in the dds namespace are declared in a set of standard header files.

Secondly, you will need to abstract out OS API functions (e.g., clocks, semaphores, etc.), which are based on RTI APIs. In this branch of the RTI Perftest repository, which supports both RTI Connext DDS and RTI Connext DDS Micro, all those functions are abstracted, so you could plug in a third option for your vendor of choice. As far as I know, the merge of that functionality into the master branch is planned, but not scheduled yet. 

Lastly, you will need to modify the build system to build against the other implementation of DDS, and use that implementation's code generator.

In summary, it can be done, but would require a quite a bit of work.

Best regards,
Fernando.

Offline
Last seen: 3 weeks 1 day ago
Joined: 02/15/2019
Posts: 44

Hi Nat,

I am currently looking to achieve the same thing and have come across this post a year late. Just wondering how did you get along with this? Did you manage to modify PerfTest to work with other implementations?

Thanks,

Kaleem