RTI Perftest是一个命令行应用程序,用于测量使用RTI Connext DDS中间件发送消息的非常可配置方案的延迟和吞吐量。
RTI’s Network Performance Benchmarking Tool
Explore the documentation »
Binaries
·
Download
·
Compile
·
Execution
·
Examples
RTI Perftest is a command line tool intended to measure the minimum latency,
maximum throughput and loaded latency in a very configurable set of scenarios.
It can help you answer questions such as:
The publishing side of the test writes data as fast as it can. Every few samples (configured through the command line), it sends a special sample requesting an echo from the subscribing side. It uses this ping -> pong exchange to measure the round-trip time latency (RTT) and then the one-way latency.
The publisher prints the latency test results while the subscriber prints the throughput results.
RTI Perftest allows 2 operational modes: Throughput Test and Latency Test
Learn more here »
RTI Perftest features include:
This is an example of how you may give instructions on setting up your project locally.
To get a local copy up and running follow these simple example steps.
RTI Perftest bundle is provided in 3 different ways:
Clone and compile from the official Github repository:
git clone https://github.com/rticommunity/rtiperftest.git
Download and compile from: github.com/rticommunity/rtiperftest.
Download the executables for popular platforms from: https://github.com/rticommunity/rtiperftest/releases in the “Binaries” section of the RTI Perftest release page.
To learn more about the supported platforms and installation, please refer to the
Documentation.
If you need to compile RTI Perftest these are the 2 main requisites. This is not
needed if you downloaded the executables already compiled, you can skip this section.
$NDDSHOME
environment variable should be set correctly. Alternatively,$NDDSHOME
can be passed directly to the build.sh
script by using the --nddshome <PATH>
command-line option.Learn more here »
For Linux, MacOS, QNX, VxWorks, Lynx, and Android, RTI Perftest makes use of a script in the top level directory named build.sh
. In order to build using build.sh
you just need to invoke the script with the command-line parameters desired.
For example, for a given architecture (x64Darwin15clang7.0) for C++ (traditional and modern) and Java the command would be
./build.sh --platform x64Darwin15clang7.0
Learn more about compilation for other platforms and examples here »
The following are examples of how to run the performance test for two use cases:
-noprint
argument from the command line.Publisher:
bin/<arch>/release/perftest_cpp -pub -noPrint -nic <ipaddr> -dataLen <length> -latencyTest -executionTime 100
Subscriber:
bin/<arch>/release/perftest_cpp -sub -noPrint -nic <ipaddr> -domain <ID> -multicast
Modify -dataLen <bytes>
to see latencies for different data sizes. Set -executionTime <seconds>
to be >=100 for statistically better results.
Publisher:
bin/<arch>/release/perftest_cpp -pub -noPrint -nic <ipaddr> -dataLen <length> -batchSize <bytes> -multicast -executionTime 100
Subscriber:
bin/<arch>/release/perftest_cpp -sub -noprint -nic <ipaddr> -multicast
To achieve maximum throughput, start by setting See -batchSize <bytes>
to 8192, then increase the size to see if you get better throughput.
Note: Batching will not be enabled if the data length is larger than 1/2 the batch size.
See more examples here »
See how to configure RTI Perftest here »
Distributed under the EPL License. See the license file for more information.