Load Test Comparison Report

April 15, 2026 ยท View on GitHub

VM: Intel Xeon Platinum 8370C, 8 cores, 16 GB RAM, Ubuntu 22.04
Config: proto_version=4, streaming=parallel, warmup=10s, measure=30s

1. DML Throughput (events/sec)

ScenarioPG16 proto4+parallelPG18 +binary+directTLSPG18 +binary+directTLS +COPY
Baseline148,533168,205209,193
Batch-10022,270141,597199,780
Batch-5000132,623151,820190,687
4-Writers135,036159,233193,354
Wide-20col18,917172,772173,283
Payload-2KB14,017114,884134,323
Mixed-DML42,198176,580186,019
Stress-16w125,657130,625185,044
Stress-32w111,970133,880184,718
Stress-48w101,180129,667181,012
Stress-64w103,937125,082182,349
Stress-96w96,000119,140177,576
Stress-128w87,352109,594160,293
Stress-192w71,31698,482171,585

2. Data Throughput (MB/s)

ScenarioPG16 proto4+parallelPG18 +binary+directTLSPG18 +binary+directTLS +COPY
Baseline30.431.138.7
Batch-1004.626.237.0
Batch-500027.228.135.3
4-Writers27.729.535.8
Wide-20col21.350.751.5
Payload-2KB28.343.957.1
Mixed-DML7.932.133.8
Stress-16w25.724.234.2
Stress-32w22.924.834.2
Stress-48w20.724.033.5
Stress-64w21.323.133.7
Stress-96w19.622.032.9
Stress-128w17.920.329.7
Stress-192w14.618.231.7

3. Process Memory RSS (MB)

ScenarioPG16 AvgPG16 PeakPG18 AvgPG18 PeakPG18+COPY AvgPG18+COPY Peak
Baseline15.615.615.415.415.315.3
Batch-10016.816.816.116.116.216.2
Batch-500016.916.916.216.216.516.5
4-Writers17.017.016.616.616.716.7
Wide-20col17.017.016.616.616.716.7
Payload-2KB17.117.116.716.716.816.8
Mixed-DML17.217.216.716.716.916.9
Stress-16w17.017.016.716.716.816.8
Stress-32w17.417.416.816.816.816.8
Stress-48w17.417.416.816.816.816.8
Stress-64w17.617.616.816.816.816.8
Stress-96w17.417.417.017.016.816.8
Stress-128w17.417.417.017.016.816.8
Stress-192w17.717.717.017.016.816.8

4. CPU Efficiency (DML events/sec per 1% CPU)

ScenarioPG16 proto4+parallelPG18 +binary+directTLSPG18 +binary+directTLS +COPY
Baseline5,6895,6375,920
Batch-1003,9665,5725,693
Batch-50005,3795,7335,440
4-Writers5,0005,6475,571
Wide-20col2,3695,0595,517
Payload-2KB2,7675,1925,018
Mixed-DML4,4085,4955,254
Stress-16w4,9685,0715,507
Stress-32w4,8865,1885,411
Stress-48w4,6885,0405,281
Stress-64w4,6564,8465,289
Stress-96w4,4805,1685,220
Stress-128w4,6815,0845,232
Stress-192w4,8074,9825,406

5. Stress Ramp: Throughput Scaling

WritersPG16 proto4+parallelPG18 +binary+directTLSPG18 +binary+directTLS +COPY
16125,657130,625185,044
32111,970133,880184,718
48101,180129,667181,012
64103,937125,082182,349
9696,000119,140177,576
12887,352109,594160,293
19271,31698,482171,585

6. Test Configuration

SettingPG16 proto4+parallelPG18 +binary+directTLSPG18 +binary+directTLS+COPY
PostgreSQL1618.318.3
proto_version444
streamingparallelparallelparallel
binaryoffonon
sslnegotiationpostgresdirectdirect
GeneratorINSERTINSERTCOPY
Backendrustls-tlsrustls-tlsrustls-tls