1.3.2. RTI Recording Service

The following tests have been performed by executing the RTI Perftest C++98 benchmark application between two nodes and RTI Recording Service in a third node, all of them connected to a switch via Ethernet. The communication has been restricted to a single interface, and the transport has been set to UDPv4 multicast for the three applications.

In this test, we take advantage of multicast and the reliable RELIABILITY QoS to measure the maximum throughput at which Recording Service is able to store samples. The scenario consists of an RTI Perftest Publisher and Subscriber performing a Maximum Throughput test via UDPv4 multicast. Then, a Recording Service instance records the Throughput topic. The principles on which we base this test are the following:

  • Since the communication is multicast, samples are only being sent once to the two Subscribers by the Publisher side.

  • Since the protocol uses strict reliability, all the samples need to be acknowledged by the Recording Service Subscriber as well as by the RTI Perftest Subscriber to be able to continue the communication.

  • Since Recording Service needs to store the data, it will always be slower than the RTI Perftest Subscriber.

Based on these principles, we can conclude that the received throughput seen by the Subscriber application will be the maximum throughput at which the Recording Service application is able to process and store the data. Therefore, the measures obtained by the Subscriber can be labeled as the Recording Service received Maximum Throughput.

Find the results for these tests below.

1.3.2.1. UDPv4

The graph below shows the expected throughput behavior when performing a throughput test between an RTI Perftest Publisher and Subscriber, with Recording Service recording the Throughput topic.

Note

By default, RTI Perftest enables batching when performing a Maximum Throughput test. The batching feature allows sending more than one data sample per RTPS packet, improving network performance for small data sizes. See the RTI Connext Core Libraries User’s Manual for more information on batching.

The batch maximum size is set by RTI Perftest to be 8192 bytes; after 8192 bytes, batching is not enabled.

Detailed Statistics

This table contains the raw numbers presented by RTI Perftest. These numbers are the exact output with no further processing.

Sample Size (Bytes)

Total Samples

Avg Samples/s

Avg Mbps

Lost Samples

Lost Samples (%)

CPU (%)

32

100000000

4272710

1393.8

0

0.00

64

27575049

551493

1282.4

0

0.00

128

21234625

424579

1434.8

0

0.00

512

18238800

364775

1494.1

0

0.00

1024

14925792

298515

2445.4

0

0.00

4096

8903634

178072

5835.1

0

0.00

8192

5892609

117851

7723.5

0

0.00

16384

3357501

67149

8801.4

0

0.00

32768

1694672

33893

8884.9

0

0.00

63000

966614

19331

9743.3

0

0.00


Test Hardware

The following hardware was used to perform these tests:

Linux Nodes

Dell R340 Servers (13 Units)
Processor: Intel Xeon E-2278G (3.4-5GHz, 8c/16t, 16MB cache, 2 memory channels @2666MHz)
RAM: 4x 16GB 2666MHz DIMM (64GB RAM)
HD: 480GB SATA SSD
NIC 1: Intel 710 dual port 10Gbps SFP
OS: Ubuntu 20.04 -- gcc 9.3.0

Switch

Dell 2048 -- 10Gbps switch (10Gbps and 1Gbps interfaces)