217 lines
7.8 KiB
JSON
217 lines
7.8 KiB
JSON
{
|
|
"kind": "HYPOTHETICAL_AMDAHL_SENSITIVITY_NOT_A_BENCHMARK",
|
|
"comparison": "Existing 0.33.8 measurements (5 runs, cache off) vs measured nginx",
|
|
"not_measured": "0.34.0 server performance and sendfile syscall/runtime correctness",
|
|
"conditions": [
|
|
"Identical CPU and network assumptions to supplied 0.33.8 baseline",
|
|
"WWW zero-copy is limited to Linux, cleartext HTTP/1.1, GET >=64KiB, no cache, range, transform, compression or TLS",
|
|
"WWW low/middle/high: file-copy contributes 20%/40%/60% of total request time; modeled sendfile eliminates 50% of that component",
|
|
"Reverse proxy low/middle/high: removing response-frame mutex saves a hypothetical 1%/3%/5% of total service time",
|
|
"These fractions are chosen sensitivity parameters; not measured or inferred from profiling",
|
|
"No change is assumed for WWW 1040B or out-of-scope protocol paths",
|
|
"No network saturation, TLS record processing, queueing, origin latency, filesystem cache misses, CPU contention or concurrency effects modeled",
|
|
"No additional speedup due to cache-retention changes is assumed"
|
|
],
|
|
"formula": "RPS_sim = RPS_0.33.8 / (1 - fraction_of_total_service_time_eliminated)",
|
|
"entries": [
|
|
{
|
|
"kind": "reverse_proxy",
|
|
"bytes": 1040,
|
|
"baseline_version": "0.33.8",
|
|
"baseline_rust_rps": 29334.12,
|
|
"baseline_nginx_rps": 170610.16,
|
|
"baseline_of_nginx_pct": 17.19,
|
|
"factor_to_match_nginx": 5.82,
|
|
"sendfile_eligible_only_if_plain_linux_http1_1_no_cache_no_compression": false,
|
|
"scenarios": {
|
|
"low": {
|
|
"modeled_total_time_saved_pct": 1.0,
|
|
"simulated_rps": 29630,
|
|
"simulated_rps_gain_pct": 1.01,
|
|
"simulated_of_nginx_pct": 17.37,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 82.63
|
|
},
|
|
"middle": {
|
|
"modeled_total_time_saved_pct": 3.0,
|
|
"simulated_rps": 30241,
|
|
"simulated_rps_gain_pct": 3.09,
|
|
"simulated_of_nginx_pct": 17.73,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 82.27
|
|
},
|
|
"high": {
|
|
"modeled_total_time_saved_pct": 5.0,
|
|
"simulated_rps": 30878,
|
|
"simulated_rps_gain_pct": 5.26,
|
|
"simulated_of_nginx_pct": 18.1,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 81.9
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"kind": "reverse_proxy",
|
|
"bytes": 65536,
|
|
"baseline_version": "0.33.8",
|
|
"baseline_rust_rps": 20735.07,
|
|
"baseline_nginx_rps": 35393.29,
|
|
"baseline_of_nginx_pct": 58.58,
|
|
"factor_to_match_nginx": 1.71,
|
|
"sendfile_eligible_only_if_plain_linux_http1_1_no_cache_no_compression": false,
|
|
"scenarios": {
|
|
"low": {
|
|
"modeled_total_time_saved_pct": 1.0,
|
|
"simulated_rps": 20945,
|
|
"simulated_rps_gain_pct": 1.01,
|
|
"simulated_of_nginx_pct": 59.18,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 40.82
|
|
},
|
|
"middle": {
|
|
"modeled_total_time_saved_pct": 3.0,
|
|
"simulated_rps": 21376,
|
|
"simulated_rps_gain_pct": 3.09,
|
|
"simulated_of_nginx_pct": 60.4,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 39.6
|
|
},
|
|
"high": {
|
|
"modeled_total_time_saved_pct": 5.0,
|
|
"simulated_rps": 21826,
|
|
"simulated_rps_gain_pct": 5.26,
|
|
"simulated_of_nginx_pct": 61.67,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 38.33
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"kind": "reverse_proxy",
|
|
"bytes": 1048576,
|
|
"baseline_version": "0.33.8",
|
|
"baseline_rust_rps": 4461.19,
|
|
"baseline_nginx_rps": 2730.23,
|
|
"baseline_of_nginx_pct": 163.4,
|
|
"factor_to_match_nginx": 0.61,
|
|
"sendfile_eligible_only_if_plain_linux_http1_1_no_cache_no_compression": false,
|
|
"scenarios": {
|
|
"low": {
|
|
"modeled_total_time_saved_pct": 1.0,
|
|
"simulated_rps": 4506,
|
|
"simulated_rps_gain_pct": 1.01,
|
|
"simulated_of_nginx_pct": 165.05,
|
|
"simulated_remaining_gap_to_nginx_pct_points": -65.05
|
|
},
|
|
"middle": {
|
|
"modeled_total_time_saved_pct": 3.0,
|
|
"simulated_rps": 4599,
|
|
"simulated_rps_gain_pct": 3.09,
|
|
"simulated_of_nginx_pct": 168.45,
|
|
"simulated_remaining_gap_to_nginx_pct_points": -68.45
|
|
},
|
|
"high": {
|
|
"modeled_total_time_saved_pct": 5.0,
|
|
"simulated_rps": 4696,
|
|
"simulated_rps_gain_pct": 5.26,
|
|
"simulated_of_nginx_pct": 172.0,
|
|
"simulated_remaining_gap_to_nginx_pct_points": -72.0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"kind": "www",
|
|
"bytes": 1040,
|
|
"baseline_version": "0.33.8",
|
|
"baseline_rust_rps": 24906.2,
|
|
"baseline_nginx_rps": 351605.13,
|
|
"baseline_of_nginx_pct": 7.08,
|
|
"factor_to_match_nginx": 14.12,
|
|
"sendfile_eligible_only_if_plain_linux_http1_1_no_cache_no_compression": false,
|
|
"scenarios": {
|
|
"low": {
|
|
"modeled_total_time_saved_pct": 0.0,
|
|
"simulated_rps": 24906,
|
|
"simulated_rps_gain_pct": 0.0,
|
|
"simulated_of_nginx_pct": 7.08,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 92.92
|
|
},
|
|
"middle": {
|
|
"modeled_total_time_saved_pct": 0.0,
|
|
"simulated_rps": 24906,
|
|
"simulated_rps_gain_pct": 0.0,
|
|
"simulated_of_nginx_pct": 7.08,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 92.92
|
|
},
|
|
"high": {
|
|
"modeled_total_time_saved_pct": 0.0,
|
|
"simulated_rps": 24906,
|
|
"simulated_rps_gain_pct": 0.0,
|
|
"simulated_of_nginx_pct": 7.08,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 92.92
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"kind": "www",
|
|
"bytes": 65536,
|
|
"baseline_version": "0.33.8",
|
|
"baseline_rust_rps": 20856.67,
|
|
"baseline_nginx_rps": 203709.91,
|
|
"baseline_of_nginx_pct": 10.24,
|
|
"factor_to_match_nginx": 9.77,
|
|
"sendfile_eligible_only_if_plain_linux_http1_1_no_cache_no_compression": true,
|
|
"scenarios": {
|
|
"low": {
|
|
"modeled_total_time_saved_pct": 10.0,
|
|
"simulated_rps": 23174,
|
|
"simulated_rps_gain_pct": 11.11,
|
|
"simulated_of_nginx_pct": 11.38,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 88.62
|
|
},
|
|
"middle": {
|
|
"modeled_total_time_saved_pct": 20.0,
|
|
"simulated_rps": 26071,
|
|
"simulated_rps_gain_pct": 25.0,
|
|
"simulated_of_nginx_pct": 12.8,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 87.2
|
|
},
|
|
"high": {
|
|
"modeled_total_time_saved_pct": 30.0,
|
|
"simulated_rps": 29795,
|
|
"simulated_rps_gain_pct": 42.86,
|
|
"simulated_of_nginx_pct": 14.63,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 85.37
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"kind": "www",
|
|
"bytes": 1048576,
|
|
"baseline_version": "0.33.8",
|
|
"baseline_rust_rps": 2833.71,
|
|
"baseline_nginx_rps": 12611.49,
|
|
"baseline_of_nginx_pct": 22.47,
|
|
"factor_to_match_nginx": 4.45,
|
|
"sendfile_eligible_only_if_plain_linux_http1_1_no_cache_no_compression": true,
|
|
"scenarios": {
|
|
"low": {
|
|
"modeled_total_time_saved_pct": 10.0,
|
|
"simulated_rps": 3149,
|
|
"simulated_rps_gain_pct": 11.11,
|
|
"simulated_of_nginx_pct": 24.97,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 75.03
|
|
},
|
|
"middle": {
|
|
"modeled_total_time_saved_pct": 20.0,
|
|
"simulated_rps": 3542,
|
|
"simulated_rps_gain_pct": 25.0,
|
|
"simulated_of_nginx_pct": 28.09,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 71.91
|
|
},
|
|
"high": {
|
|
"modeled_total_time_saved_pct": 30.0,
|
|
"simulated_rps": 4048,
|
|
"simulated_rps_gain_pct": 42.86,
|
|
"simulated_of_nginx_pct": 32.1,
|
|
"simulated_remaining_gap_to_nginx_pct_points": 67.9
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|