Send Latency

Common Test Environment

  • Intel Core i7-4960X 3.6 GHz/6core/1.5+15Mb
  • MB ASUS P9X79 WS 2хGbLAN
  • DDR-III DIMM 16Gb KIT 2*8Gb <PC3-15000>
  • SSD 256 Gb SATA 6Gb / s Samsung 840 PRO Series <MZ-7PD256>
  • 2 Tb SATA-III Seagate Barracuda <ST2000DM001> 7200 rpm 64Mb
  • Windows 7 Enterprise x64
  • Java 1.8.0_05 (Java HotSpot™ 64-bit Server VM)

This benchmark measures the time required for processing outgoing message inside engine. The starting point of measure is a point before calling to FIXSession.sendMessage() (t1) and the end point is just before the sending packet with serialized message to socket(t2).

Perfomance Lab. Send Latency. FIX Antenna Java

File-based Mode
(Persistent Session)
Test Results Latency Distribution
(Persistent Session)
  • Validation: off
  • Storage Factory Type: file
  • Message Queue type: file
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): true
  • Min latency (µs): 4.8
  • Max latency (µs): 8471.7
  • Average latency (µs): 6.1
  • Median (µs): 5.7
  • Standard deviation(µs): 9.8
  • Values distribution:
    • [4.8 µs; 15.9 µs] : 99.58%
    • [4.8 µs; 25.6 µs] : 99.60%
    • [4.8 µs; 35.4 µs] : 99.68%
FIXAJ_2.12_SendFile
Memory-based Mode (Transient Session) Test Results Latency Distribution
(Transient Session)
  • Validation: off
  • Storage Factory Type: memory
  • Message Queue type: memory
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): true
  • Min latency (µs): 0.3
  • Max latency (µs): 61.7
  • Average latency (µs): 0.6
  • Median (µs): 0.6
  • Standard deviation(µs): 0.2
  • Values distribution:
    • [0.3 µs; 0.8 µs] : 73.33%
    • [0.3 µs; 1.0 µs] : 99.34%
    • [0.3 µs; 1.1 µs] : 99.92%
FIXAJ_2.12_SendMemory
Memory-mapped File-based Mode (Persistent Session) Test Results Latency Distribution
(Transient Session)
  • Validation: off
  • Storage Factory Type: memory mapped file
  • Message Queue type: memory mapped file
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): true
  • Min latency (µs): 0.9
  • Max latency (µs): 5960.3
  • Average latency (µs): 1.2
  • Median (µs): 1.1
  • Standard deviation(µs): 8.5
  • Values distribution:
    • [0.9 µs; 9.7 µs] : 99.29%
    • [0.9 µs; 18.2 µs] : 99.99%
    • [0.9 µs; 26.7 µs] : 99.99%
FIXAJ_2.12_SendMMF

Receive Latency

Common Test Environment

  • Intel Core i7-4960X 3.6 GHz/6core/1.5+15Mb
  • MB ASUS P9X79 WS 2хGbLAN
  • DDR-III DIMM 16Gb KIT 2*8Gb <PC3-15000>
  • SSD 256 Gb SATA 6Gb / s Samsung 840 PRO Series <MZ-7PD256>
  • 2 Tb SATA-III Seagate Barracuda <ST2000DM001> 7200 rpm 64Mb
  • Windows 7 Enterprise x64
  • Java 1.8.0_05 (Java HotSpot™ 64-bit Server VM)

This benchmark measures the time required for processing of the received packet and providing FIX message to user. The starting point of measure is a point right after receiving data from socket (t3) and the end point is inside user callback (t4).

Perfomance Lab. Receive Latency. FIX Antenna Java

File-based Mode
(Persistent Session)
Test Results Latency Distribution
(Persistent Session)
  • Validation: off
  • Storage Factory Type: file
  • Message Queue type: file
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): true
  • Min latency (µs): 1.1
  • Max latency (µs): 22.2
  • Average latency (µs): 1.9
  • Median (µs): 2,0
  • Standard deviation(µs): 0.3
  • Values distribution:
    • [1.6 µs; 2.3 µs] : 68.86%
    • [1.3 µs; 2.6 µs] : 94.17%
    • [1.1 µs; 2.9 µs] : 99.92%
FIXAJ_2.12_ReceiveFile
Memory-based Mode (Transient Session) Test Results Latency Distribution
(Transient Session)
  • Validation: off
  • Storage Factory Type: memory
  • Message Queue type: memory
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): true
  • Min latency (µs): 1.1
  • Max latency (µs): 38.1
  • Average latency (µs): 1.8
  • Median (µs): 1.7
  • Standard deviation(µs): 0.3
  • Values distribution:
    • [1.6 µs; 2.1 µs] : 80.66%
    • [1.3 µs; 2.4 µs] : 99.56%
    • [1.1 µs; 2.7 µs] : 99.92%
FIXAJ_2.12_ReceiveMemory
Memory-mapped File-based Mode (Persistent Session) Test Results Latency Distribution
(Transient Session)
  • Validation: off
  • Storage Factory Type: memory mapped file
  • Message Queue type: memory mapped file
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): true
  • Min latency (µs): 1.4
  • Max latency (µs): 29.0
  • Average latency (µs): 2.3
  • Median (µs): 2.3
  • Standard deviation(µs): 0.2
  • Values distribution:
    • [2.0 µs; 2.5 µs] : 79.07%
    • [1.8 µs; 2.7 µs] : 97.33%
    • [1.6 µs; 3.0 µs] : 99.35%
FIXAJ_2.12_ReceiveMMF

Receive and Send Latency

Common Test Environment

  • Intel Core i7-4960X 3.6 GHz/6core/1.5+15Mb
  • MB ASUS P9X79 WS 2хGbLAN
  • DDR-III DIMM 16Gb KIT 2*8Gb <PC3-15000>
  • SSD 256 Gb SATA 6Gb / s Samsung 840 PRO Series <MZ-7PD256>
  • 2 Tb SATA-III Seagate Barracuda <ST2000DM001> 7200 rpm 64Mb
  • Windows 7 Enterprise x64
  • Java 1.8.0_05 (Java HotSpot™ 64-bit Server VM)

This benchmark measures the time required for processing incoming message and sending the answer. The starting point of measure is a point right after receiving data from socket (t3) and the end point is just before sending the packet with answer to counterparty (t2).

Perfomance Lab. Receive and Send Latency. FIX Antenna Java

File-based Mode
(Persistent Session)
Test Results Latency Distribution
(Persistent Session)
  • Validation: off
  • Storage Factory Type: file
  • Message Queue type: file
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): true
  • Min latency (µs): 10.5
  • Max latency (µs): 5451.5
  • Average latency (µs): 11.6
  • Median (µs): 11.4
  • Standard deviation(µs): 6.6
  • Values distribution:
    • [10.5 µs; 18.2 µs] : 99.57%
    • [10.5 µs; 24.8 µs] : 99.65%
    • [10.5 µs; 31.4 µs] : 99.65%
FIXAJ_2.12_Receive-SendFile
Memory-based Mode (Transient Session) Test Results Latency Distribution
(Transient Session)
  • Validation: off
  • Storage Factory Type: memory
  • Message Queue type: memory
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): true
  • Min latency (µs): 4.6
  • Max latency (µs): 72.0
  • Average latency (µs): 4.9
  • Median (µs): 4.8
  • Standard deviation(µs): 0.3
  • Values distribution:
    • [4.6 µs; 5.2 µs] : 97.43%
    • [4.6 µs; 5.5 µs] : 99.25%
    • [4.6 µs; 5.7 µs] : 99.39%
FIXAJ_2.12_Receive-SendMemory
Memory-mapped File-based Mode (Persistent Session) Test Results Latency Distribution
(Transient Session)
  • Validation: off
  • Storage Factory Type: memory mapped file
  • Message Queue type: memory mapped file
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): true
  • Min latency (µs): 5.1
  • Max latency (µs): 5940.9
  • Average latency (µs): 5.6
  • Median (µs): 5.4
  • Standard deviation(µs): 8.4
  • Values distribution:
    • [5.1 µs; 14.0 µs] : 99.31%
    • [5.1 µs; 22.4 µs] : 99.97%
    • [5.1 µs; 30.8 µs] : 99.99%
FIXAJ_2.12_Receive-SendMMF

Send and Receive Latency

Common Test Environment

  • Intel Core i7-4960X 3.6 GHz/6core/1.5+15Mb
  • MB ASUS P9X79 WS 2хGbLAN
  • DDR-III DIMM 16Gb KIT 2*8Gb <PC3-15000>
  • SSD 256 Gb SATA 6Gb / s Samsung 840 PRO Series <MZ-7PD256>
  • 2 Tb SATA-III Seagate Barracuda <ST2000DM001> 7200 rpm 64Mb
  • Windows 7 Enterprise x64
  • Java 1.8.0_05 (Java HotSpot™ 64-bit Server VM)

This benchmark measures a delay between sending message from one side and receiving it by another. Also this time includes the system delay for passing data through localhost loop. The starting point of measure is a point before calling to FIXSession.sendMessage() by sender (t1) and the end point is inside the user callback on the acceptor side (t4).

Perfomance Lab. Send and Receive Latency. FIX Antenna Java

File-based Mode
(Persistent Session)
Test Results Latency Distribution
(Persistent Session)
  • Validation: off
  • Storage Factory Type: file
  • Message Queue type: file
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): true
  • Min latency (µs): 13.7
  • Max latency (µs): 24414.7
  • Average latency (µs): 15.7
  • Median (µs): 15.1
  • Standard deviation(µs): 24.9
  • Values distribution:
    • [13.7 µs; 40.6 µs] : 99.32%
    • [13.7 µs; 65.6 µs] : 99.65%
    • [13.7 µs; 90.5 µs] : 99.92%
FIXAJ_2.12_Send-ReceiveFile
Memory-based Mode (Transient Session) Test Results Latency Distribution
(Transient Session)
  • Validation: off
  • Storage Factory Type: memory
  • Message Queue type: memory
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): true
  • Min latency (µs): 7.1
  • Max latency (µs): 311.5
  • Average latency (µs): 8.4
  • Median (µs): 8.2
  • Standard deviation(µs): 1.5
  • Values distribution:
    • [7.1 µs; 9.9 µs] : 98.07%
    • [7.1 µs; 11.4 µs] : 99.86%
    • [7.1 µs; 12.8 µs] : 99.36%
FIXAJ_2.12_Send-Receive_Memory
Memory-mapped File-based Mode (Persistent Session) Test Results Latency Distribution
(Transient Session)
  • Validation: off
  • Storage Factory Type: memory mapped file
  • Message Queue type: memory mapped file
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): true
  • Min latency (µs): 6.5
  • Max latency (µs): 5930.1
  • Average latency (µs): 9.7
  • Median (µs): 9.4
  • Standard deviation(µs): 10.8
  • Values distribution:
    • [6.5 µs; 20.5 µs] : 99.20%
    • [6.5 µs; 31.3 µs] : 99.92%
    • [6.5 µs; 42.1 µs] : 99.93%
FIXAJ_2.12_Send-ReceiveMMF

Throughput

Common Test Environment

  • Intel Core i7-4960X 3.6 GHz/6core/1.5+15Mb
  • MB ASUS P9X79 WS 2хGbLAN
  • DDR-III DIMM 16Gb KIT 2*8Gb <PC3-15000>
  • SSD 256 Gb SATA 6Gb / s Samsung 840 PRO Series <MZ-7PD256>
  • 2 Tb SATA-III Seagate Barracuda <ST2000DM001> 7200 rpm 64Mb
  • Windows 7 Enterprise x64
  • Java 1.8.0_05 (Java HotSpot™ 64-bit Server VM)

Perfomance Lab. Throughput. FIX Antenna Java

Mode Settings Test Results

File-based (Persistent Session)

  • Validation: off
  • Stogate Factory Type: file
  • Message Queue type: file
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): false
  • Throughput (msgs/sec): 68135
Memory-based (Transient Session)
  • Validation: off
  • Stogate Factory Type: memory
  • Message Queue type: memory
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): false
  • Throughput (msg/sec): 293789
MMF-based (Persistent Session)
  • Validation: off
  • Stogate Factory Type: memory
  • Message Queue type: memory
  • Message Queue Size: unlimited
  • Nagle's algorithm (TCP_NODELAY): false
  • Throughput (msg/sec): 68078