RTI Perftest 3.0 - now available
Written by Javier Morales Castro
September 18, 2019
We are proud to announce the release of the latest version of our performance testing tool: RTI Perftest 3.0 is now released and ready to be used. This popular tool is a command-line application that measures the latency and throughput of user-configurable scenarios of Connext DDS.
This is a major release for us (moving from 2.4 to 3.0), incorporating a lot of new big features and also including major changes to the code to make it easier to maintain and understand. Since the latter is transparent to the user, this blog will focus on the new features:
1) Flat-Data and Zero-Copy support
These were two big features we added to RTI Connext DDS Professional 6.0.0, and now you can test their behavior using Perftest 3.0.
2) Custom types
By default, RTI Perftest uses a simple data type. We recognize that this may not be the type of data that your application is going to use. With Perftest 3.0, you can simply drag your type to RTI Perftest idl folder, make a few changes in the code, and you will be testing with your type. Note that this process is well explained in the documentation.
3) RTI Connext Micro Support
Now you will be able to compare apples with apples, and apply the same tests you run for RTI Connext DDS Professional to RTI Connext DDS Micro.
4) Raw Transport Support
Until now, you may have needed some tools like “iperf” to use in combination with RTI Perftest in order to see how the performance of RTI Connext DDS compares to using plain sockets. Perftest 3.0 allows you to use the “raw” transport option, removing all the RTPS and DDS protocols and just sending data using sockets (or if you are using Shared Memory, directly writing and reading the shared memory segments). Still, the serialization and deserialization will be done the same way it is done in Connext DDS.
5) Thread Priorities Support
Setting the internal RTI Connext DDS thread priorities can be really useful in order to fine tune your performance and achieve more stable latency and throughput results. This is especially important for Real-Time Operating Systems. Now it can be done via a command line parameter in RTI Perftest.
For information on these and other new features, please read the Perftest 3.0 release notes.
We encourage you to try RTI Perftest. You can access the tool in several ways:
- Clone the repository using git
git clone -b release/3.0
- Download a zip file containing the Perftest source files from the Github page: github.com/rticommunity/rtiperftest.
- Download a zip/tar.gz file containing the Perftest executable statically compiled for some of the most common platforms from the Github release page: https://github.com/rticommunity/rtiperftest/releases located in the "Binaries" section. Once the zip file is downloaded, you will need to extract its content. This will create a folder with the binaries for your architecture.
Additional information about RTI’s Official Performance Test Application and all of its capabilities can be found in our documentation. I also invite you to access the new tutorial that highlights how to profile and characterize the performance between two machines in a given environment. I hope you find this valuable in testing the performance of different configurations of your RTI Connext DDS scenarios.
About the author
Javier Morales is a Senior Software Engineer and Performance team leader for RTI. He received his Bachelor’s Degree in Telecommunication Engineering and Master Degree in Multimedia Technologies from the University of Granada.