Latency Benchmarks ================== Latency measurements are provided for two different environments: - `Xeon`_ -- End-to-End latency measured on high-performance Xeon machines in a dedicated network using the |rti_rtiperftest|_ tool. - `Raspberry Pi`_ -- Round-trip latencies measured on stock Raspberry Pi's in a dedicated network using the |rti_rtiperftest|_ tool. The latency is measured by sending one PING sample and wait for the Echoer to return the PONG sample. The sender records the time it took to receive the PONG sample and divides the result by 2. The test is repeated a number of times for each size. Note that the *end-to-end* latency is measured. Interpretation of the measurements (all numbers are reported in micro-seconds): - Length - The size of the DDS sample payload (UDP overhead is _not_ included) in bytes. - Ave - Average latency - Std - Standard deviation - Min - The minimum latency - Max - The maximum latency - 50% - The 50th percentile latency - 90% - The 90th percentile latency - 99% - The 99th percentile latency - 99.99% - The 99.99th percentile latency Xeon ---- The end-to-end latency is measured between two identical machines using the test configuration below and running the |rti_rtiperftest|_ tool. The test environment consists of: - x86_64 CentOS Linux release 7.1.1503 - RTI Perftest 3.0 - Switch Configuration: D-Link DXS-3350 SR: - 176Gbps Switching Capacity - Dual 10-Gig stacking ports and optional 10-Gig uplinks - Stacks up to 8 units per stack - 4MB (Packet Buffer Size) - 48 x 10/100/1000BASE-T ports - Machine: - Intel I350 Gigabit NIC - Intel Core i7 CPU: - 12MB cache - 6 Cores (12 threads) - 3.33 GHz CPU speed - 12GB memory C++ Best Effort Keyed 1 Gbps ```````````````````````````` +----------+----------+------+----------+----------+-----+-----+-----+--------+ | Length | Ave (us) | Std | Min (us) | Max (us) | 50% | 90% | 99% | 99.99% | +==========+==========+======+==========+==========+=====+=====+=====+========+ | 32 |25 |0.6 | 23 | 83 | 25 |25 |26 |28 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 64 |25 |0.5 | 24 | 295 | 25 |25 |26 |28 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 128 |26 |0.5 | 25 | 80 | 26 |27 |28 |30 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 256 |30 |0.7 | 28 | 316 | 29 |30 |31 |33 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 1024 |44 |0.6 | 43 | 334 | 44 |44 |46 |49 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 4096 |76 |1.0 | 75 | 360 | 77 |77 |78 |81 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 8192 |114 |0.8 | 112 | 363 | 114 |114 |115 |118 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 63000 |605 |1.1 | 603 | 659 | 605 |606 |608 |623 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ C++ Best Effort Unkeyed 1 Gbps `````````````````````````````` +----------+----------+------+----------+----------+-----+-----+-----+--------+ | Length | Ave (us) | Std | Min (us) | Max (us) | 50% | 90% | 99% | 99.99% | +==========+==========+======+==========+==========+=====+=====+=====+========+ | 32 |24 |0.5 | 23 | 299 | 24 |24 |25 |27 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 64 |25 |0.6 | 23 | 308 | 25 |25 |26 |28 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 128 |26 |0.6 | 24 | 276 | 26 |26 |27 |29 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 256 |28 |0.6 | 27 | 316 | 28 |28 |30 |32 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 1024 |43 |0.5 | 42 | 312 | 43 |43 |44 |47 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 4096 |76 |0.8 | 74 | 434 | 77 |77 |78 |81 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 8192 |113 |0.7 | 112 | 360 | 113 |114 |115 |118 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 63000 |604 |1.3 | 603 | 790 | 604 |606 |607 |624 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ C++ Reliable Keyed 1 Gbps ````````````````````````` +----------+----------+------+----------+----------+-----+-----+-----+--------+ | Length | Ave (us) | Std | Min (us) | Max (us) | 50% | 90% | 99% | 99.99% | +==========+==========+======+==========+==========+=====+=====+=====+========+ | 32 |27 |1.4 | 25 | 309 | 27 |30 |31 |33 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 64 |28 |1.9 | 26 | 590 | 27 |31 |33 |35 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 128 |30 |1.3 | 27 | 312 | 29 |32 |33 |35 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 256 |33 |1.3 | 29 | 313 | 32 |35 |36 |39 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 1024 |47 |1.3 | 45 | 527 | 47 |49 |50 |54 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 4096 |80 |1.8 | 78 | 594 | 80 |80 |82 |86 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 8192 |117 |1.8 | 115 | 605 | 117 |119 |120 |123 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 63000 |610 |1.3 | 605 | 667 | 610 |612 |613 |628 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ C++ Reliable Unkeyed 1 Gbps ``````````````````````````` +----------+----------+------+----------+----------+-----+-----+-----+--------+ | Length | Ave (us) | Std | Min (us) | Max (us) | 50% | 90% | 99% | 99.99% | +==========+==========+======+==========+==========+=====+=====+=====+========+ | 32 |27 |1.4 | 25 | 559 | 26 |29 |30 |33 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 64 |28 |1.5 | 25 | 322 | 26 |31 |32 |34 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 128 |29 |1.5 | 25 | 317 | 29 |31 |32 |35 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 256 |32 |1.3 | 30 | 581 | 32 |34 |35 |37 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 1024 |47 |1.2 | 45 | 342 | 46 |49 |50 |52 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 4096 |80 |1.3 | 78 | 356 | 79 |81 |83 |85 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 8192 |117 |1.5 | 115 | 546 | 116 |119 |120 |123 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 63000 |609 |1.2 | 607 | 662 | 609 |611 |613 |625 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ Raspberry Pi ------------ The end-to-end latency is measured between two identical machines using the test configuration below and running the |rti_rtiperftest|_ tool. The test environment consists of: - 2 x Raspberry Pi 4 Model B - 1 Gbps network C++ Best Effort Keyed 1 Gbps ```````````````````````````` +----------+----------+------+----------+----------+-----+-----+-----+--------+ | Length | Ave (us) | Std | Min (us) | Max (us) | 50% | 90% | 99% | 99.99% | +==========+==========+======+==========+==========+=====+=====+=====+========+ | 32 |67 | 5.6 | 62 | 274 | 65 | 78 | 80 | 160 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 64 |68 | 5.7 | 63 | 223 | 66 | 79 | 81 | 162 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 128 |69 | 5.5 | 64 | 225 | 67 | 80 | 82 | 160 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 256 |71 | 5.5 | 67 | 232 | 70 | 83 | 85 | 158 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 512 |77 | 5.7 | 72 | 245 | 75 | 88 | 90 | 165 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 1024 |89 | 7.2 | 83 | 236 | 86 | 100 | 103 | 178 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 8192 |182 | 8.6 | 176 | 635 | 181 | 183 | 205 | 405 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 63000 |865 | 42.6 | 849 | 2138 | 860 | 872 | 894 | 2039 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ C++ Best Effort Unkeyed 1 Gbps `````````````````````````````` +----------+----------+------+----------+----------+-----+-----+-----+--------+ | Length | Ave (us) | Std | Min (us) | Max (us) | 50% | 90% | 99% | 99.99% | +==========+==========+======+==========+==========+=====+=====+=====+========+ | 32 |64 | 4.5 | 61 | 220 | 64 | 65 | 78 | 159 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 64 |67 | 5.3 | 61 | 214 | 65 | 77 | 80 | 151 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 128 |68 | 7.1 | 63 | 2093 | 66 | 79 | 82 | 155 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 256 |71 | 5.9 | 65 | 262 | 69 | 81 | 84 | 172 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 512 |76 | 5.6 | 71 | 221 | 74 | 87 | 91 | 162 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 1024 |88 | 7.3 | 81 | 256 | 85 | 99 | 106 | 176 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 8192 |181 | 11.5 | 175 | 1395 | 180 | 182 | 210 | 412 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 63000 |864 | 43.0 | 848 | 2698 | 860 | 871 | 893 | 2149 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ C++ Reliable Keyed 1 Gbps ``````````````````````````` +----------+----------+------+----------+----------+-----+-----+-----+--------+ | Length | Ave (us) | Std | Min (us) | Max (us) | 50% | 90% | 99% | 99.99% | +==========+==========+======+==========+==========+=====+=====+=====+========+ | 32 |87 | 5.5 | 79 | 290 | 86 | 92 | 101 | 215 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 64 |88 | 5.1 | 81 | 259 | 86 | 92 | 105 | 196 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 128 |89 | 4.9 | 81 | 242 | 88 | 93 | 105 | 188 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 256 |91 | 5.0 | 84 | 274 | 90 | 96 | 109 | 211 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 512 |96 | 5.2 | 89 | 316 | 95 | 101 | 113 | 223 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 1024 |109 | 7.4 | 101 | 279 | 106 | 120 | 131 | 228 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 8192 |183 | 9.8 | 176 | 518 | 181 | 189 | 211 | 432 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 63000 |870 | 45.2 | 849 | 2494 | 865 | 881 | 904 | 2363 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ C++ Reliable Unkeyed 1 Gbps ``````````````````````````` +----------+----------+------+----------+----------+-----+-----+-----+--------+ | Length | Ave (us) | Std | Min (us) | Max (us) | 50% | 90% | 99% | 99.99% | +==========+==========+======+==========+==========+=====+=====+=====+========+ | 32 |85 | 5.6 | 78 | 276 | 83 | 91 | 102 | 200 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 64 |87 | 5.3 | 79 | 267 | 86 | 92 | 103 | 185 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 128 |88 | 5.1 | 81 | 270 | 87 | 93 | 103 | 215 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 256 |90 | 7.3 | 82 | 2149 | 89 | 95 | 107 | 218 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 512 |96 | 6.2 | 88 | 1713 | 94 | 100 | 114 | 180 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 1024 |108 | 9.8 | 101 | 2157 | 105 | 118 | 131 | 229 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 8192 |184 | 11.0 | 176 | 478 | 181 | 190 | 222 | 420 | +----------+----------+------+----------+----------+-----+-----+-----+--------+ | 63000 |868 | 43.5 | 849 | 2234 | 863 | 880 | 905 | 2040 | +----------+----------+------+----------+----------+-----+-----+-----+--------+