3proxy/bench/data/skylake-grace3-better.csv
Vladimir Dubrovin 5a7399450b bench: grace delay and splice() over emulated client links
Results on both machines over per-connection emulated links: seven
grace delay settings with a fifth client CPU; the promising ones over
three link qualities (100 Mbit/s 2 ms 0.1%, 20 Mbit/s 5 ms 0.5%,
5 Mbit/s 25 ms 1%); copying against splice() with and without grace
delay, the CONNECT mix included; and the slow link with waits matched
to its rate (10 and 20 ms).

Grace delay saves 35-46% of 3proxy's CPU per gigabyte on streams at
20 Mbit/s and 21-29% at 5 Mbit/s with a 10 ms wait, does nothing on
fast links, and costs CPU with waits too short for the rate or once
the CPU is exhausted. Over these links splice() and copying cost about
the same in the mix scenarios. A caveat says that every scenario but
the mix ones is synthetic.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 17:06:47 +03:00

56 lines
13 KiB
Plaintext

proxy,scenario,rep,gbit,rate,p50_ms,p90_ms,p99_ms,errors,timeouts,retrans,prx_cpu_s,prx_task_s,cpu_s_per_gb,cpu_us_per_req,peak_mb,cli_util,prx_util,srv_util,cli_thread,srv_thread,bound
nginx-halfclose,relay-stream16,0,1.5272699873015598,nan,nan,nan,nan,0,0,1439,5.34,2.0350610000000002,2.7952635881217835,nan,33.140625,0.10721062618595825,0.489010989010989,0.15216334467671366,0.0351480069155777,0.17465215251137625,none
3proxy-devel,relay-stream16,0,1.5274578859371095,nan,nan,nan,nan,0,0,1348,5.56,2.09425,2.9100249429752347,nan,7.734375,0.10933940774487472,0.5138632162661737,0.1470160116448326,0.03421572540775124,0.1755683792203052,none
"3proxy-devel-g8000,2,2",relay-stream16,0,1.5274537646486277,nan,nan,nan,nan,0,0,1245,5.68,2.182729,2.9728312367085135,nan,5.8203125,0.10281261877613075,0.5244690674053555,0.14244044725328148,0.03420148611565699,0.17088041397268258,none
"3proxy-devel-g6000,2,2",relay-stream16,0,1.5274191922210176,nan,nan,nan,nan,0,0,1206,5.58,2.0930920000000004,2.9206930217052003,nan,6.625,0.10950844562535586,0.5152354570637119,0.14997581035316884,0.034208056742871626,0.1718606391498075,none
"3proxy-devel-g6000,3,2",relay-stream16,0,1.5276769808904456,nan,nan,nan,nan,0,0,1417,5.66,2.220707,2.961753981267147,nan,5.12109375,0.10841086007214733,0.522140221402214,0.15150048402710553,0.034218906900924606,0.17562482634344873,none
"3proxy-devel-g8000,2,3",relay-stream16,0,1.5268680432263801,nan,nan,nan,nan,0,0,973,5.93,2.233705,3.1047426276634984,nan,9.0859375,0.1152458705145244,0.5435380384967919,0.15007285089849443,0.035163276989492294,0.17758999595294842,none
nginx-halfclose,mix-relay-3k,0,1.0909389935999998,2998.3,8.192,20.48,65.536,0,0,0,5.74,1.936991,4.2092179553018045,191.44181702965014,600.75,0.5545202220459953,0.5610948191593352,0.22398414271555997,1.0770589948119913,0.27200475109017647,client
3proxy-devel,mix-relay-3k,0,1.091398572,2998.4,8.192,20.48,86.016,0,0,0,5.87,2.0376130000000003,4.3027360677177064,195.7710779082177,1349.5546875,0.5468379446640316,0.5726829268292682,0.22025565388397247,1.0809782224032196,0.2642589704383141,client
"3proxy-devel-g8000,2,2",mix-relay-3k,0,1.0834075584,2998.2,8.704,21.504,81.92,0,0,0,6.12,2.154135,4.519074988945545,204.12247348409045,1363.4609375,0.538946953263656,0.5953307392996109,0.21410952146028614,1.080952498599143,0.2627104148025422,client
"3proxy-devel-g6000,2,2",mix-relay-3k,0,1.0844622696,2997.6,8.704,21.504,81.92,0,0,0,6.22,2.2081030000000004,4.588449169223176,207.49933279957298,1359.625,0.5407640803465932,0.607421875,0.2166172106824926,1.0681453207154972,0.2697466966329565,client
"3proxy-devel-g6000,3,2",mix-relay-3k,0,1.090547968,2997.9,8.192,20.48,86.016,0,0,0,5.73,1.9945579999999996,4.203391445868065,191.1337936555589,1345.46875,0.5389009257435493,0.5584795321637427,0.21000495294700347,1.0714565910263865,0.2609873301061705,client
"3proxy-devel-g8000,2,3",mix-relay-3k,0,1.0902610335999998,2998.1,8.704,21.504,81.92,0,0,0,5.78,2.0311090000000003,4.241186154045816,192.7887662186051,1362.31640625,0.5470321435614277,0.5672227674190383,0.21523341523341524,1.079988621921506,0.2584240836817118,client
nginx-halfclose,mix-http-3k,0,1.0867478447999999,2998.1,8.192,20.48,65.536,0,0,0,6.52,3.2721789999999995,4.79964144852749,217.4710650078383,133.38671875,0.5211426423604586,0.618595825426945,0.16358463726884778,1.052205920324683,0.23857536482393088,client
3proxy-devel,mix-http-3k,0,1.0881375072000001,2998.2,8.704,20.48,86.016,0,0,0,7.29,3.4208969999999996,5.3596167409089,243.1458875325195,1580.1015625,0.5456154148643335,0.7319277108433735,0.26367668802365696,1.0672352455213456,0.3356462474958193,client
"3proxy-devel-g8000,2,2",mix-http-3k,0,1.0850615808,2999,8.704,21.504,86.016,0,0,0,7.38,3.506689,5.441165832861825,246.08202734244747,1590.48828125,0.5456492116021024,0.7328699106256207,0.26277013752455797,1.0723382007905677,0.3375994712497818,client
"3proxy-devel-g6000,2,2",mix-http-3k,0,1.084448968,2998,8.704,21.504,73.728,0,0,0,7.19,3.388896,5.304076235701669,239.82655103402269,1593.7421875,0.5476190476190477,0.7132936507936508,0.26080550098231825,1.0722754591548869,0.3323666168821829,client
"3proxy-devel-g6000,3,2",mix-http-3k,0,1.0911866775999999,2998.7,8.704,21.504,86.016,0,0,0,7.78,3.652027,5.703881955092521,259.4457598292594,1606.109375,0.546484375,0.7695351137487636,0.25857002938295787,1.0753245995698621,0.3320745349654548,client
"3proxy-devel-g8000,2,3",mix-http-3k,0,1.083723684,2998.1,8.704,21.504,77.824,0,0,0,7.1,3.373685,5.2411883987210155,236.8166505453454,1595.23828125,0.5331151328455911,0.6947162426614482,0.2531400966183575,1.0650560707464236,0.32550210420500625,client
3proxy-devel,relay-stream16,1,1.527452621871312,nan,nan,nan,nan,0,0,1507,5.82,2.19409,3.0463142269398324,nan,6.44921875,0.10393311799353981,0.5369003690036901,0.14888457807953442,0.03325738765582224,0.17375041620569673,none
"3proxy-devel-g8000,2,2",relay-stream16,1,1.527243736405023,nan,nan,nan,nan,0,0,1230,5.65,2.103938,2.9575354443610635,nan,6.25,0.10292442081276111,0.522181146025878,0.1452161243322001,0.033257160872114944,0.17280159407055157,none
"3proxy-devel-g6000,2,2",relay-stream16,1,1.5273871377662478,nan,nan,nan,nan,0,0,1486,5.72,2.2731739999999996,2.993972058092069,nan,7.92578125,0.10845204178537513,0.5262189512419503,0.14244044725328148,0.03421239567022424,0.16997301234491766,none
"3proxy-devel-g6000,3,2",relay-stream16,1,1.5273165390754508,nan,nan,nan,nan,0,0,1300,5.62,2.131259,2.9418317163379073,nan,4.73046875,0.10632238465919878,0.5189289012003694,0.1438988818667963,0.03421250729702444,0.17187143618797507,none
"3proxy-devel-g8000,2,3",relay-stream16,1,1.5272538740136077,nan,nan,nan,nan,0,0,1254,5.57,2.135226,2.915858895228661,nan,9.10546875,0.10258358662613981,0.5157407407407407,0.14424477901894123,0.033264396872435216,0.1728481987510133,none
nginx-halfclose,relay-stream16,1,1.5276584499040766,nan,nan,nan,nan,0,0,1230,5.24,2.031313,2.742165261249057,nan,34.234375,0.10154021677124929,0.48161764705882354,0.1447241045498548,0.032318118717623266,0.1681183279849949,none
3proxy-devel,mix-relay-3k,1,1.0838872112,2998.4,8.192,20.48,81.92,0,0,0,6.2,2.1665509999999997,4.576121896030726,206.7769477054429,1358.03125,0.5474137931034483,0.6001936108422071,0.22233104799216455,1.0802397797644614,0.272257378040282,client
"3proxy-devel-g8000,2,2",mix-relay-3k,1,1.0972775528,2998.9,8.704,21.504,81.92,0,0,0,5.82,2.052212,4.243229060978199,194.07115942512254,1340.60546875,0.5429526243365441,0.5678048780487804,0.22096456692913385,1.0772733797323106,0.27403585491726057,client
"3proxy-devel-g6000,2,2",mix-relay-3k,1,1.0902060728,2998.6,8.704,21.504,90.112,0,0,0,6.61,2.456225,4.85045913055567,220.4362035616621,1321.44140625,0.5346307956496852,0.6307251908396947,0.22185114503816794,1.0782975753441026,0.26855669210231764,client
"3proxy-devel-g6000,3,2",mix-relay-3k,1,1.0900765104,2998.2,8.192,20.48,69.632,0,0,0,6.29,2.2177849999999997,4.61618973713462,209.79254219198185,1355.4765625,0.5510604870384918,0.6178781925343811,0.22233152975897688,1.0832764313336984,0.2687702789522148,client
"3proxy-devel-g8000,2,3",mix-relay-3k,1,1.0901131456,2998.1,8.704,21.504,81.92,0,0,0,6.31,2.24206,4.630711977353115,210.4666288649478,1344.1640625,0.548443579766537,0.6114341085271318,0.21875,1.086430521610196,0.26371059371519656,client
nginx-halfclose,mix-relay-3k,1,1.0901086175999999,2997.9,8.192,20.48,65.536,0,0,0,5.81,1.967014,4.263795299805178,193.8023282964742,608.25,0.5478671122469039,0.5668292682926829,0.2272055199605717,1.0692975844193753,0.27676244036635694,client
3proxy-devel,mix-http-3k,1,1.0902483272,2998.4,8.704,21.504,114.688,0,0,0,7.24,3.4160109999999997,5.3125511459165855,241.46211312700106,1586.33984375,0.5573254670599803,0.7254509018036072,0.2706172839506173,1.0820163954572797,0.3436118049082646,client
"3proxy-devel-g8000,2,2",mix-http-3k,1,1.0902901992,2998.1,8.704,21.504,81.92,0,0,0,7.33,3.4465319999999995,5.378384584492007,244.48817584470166,1614.84765625,0.5589502546024285,0.7308075772681955,0.2685459940652819,1.0853927052898822,0.3421481367393951,client
"3proxy-devel-g6000,2,2",mix-http-3k,1,1.091068428,2999.3,8.704,21.504,86.016,0,0,0,7.6,3.5910139999999995,5.572519416719847,253.39245824025605,1586.67578125,0.5481066460587326,0.7443682664054848,0.26474890297415893,1.0802646448316702,0.3416639838654668,client
"3proxy-devel-g6000,3,2",mix-http-3k,1,1.0846830712,2998.1,8.704,21.504,81.92,0,0,0,7.25,3.424788,5.347184033750411,241.8198192188386,1591.1875,0.5475910693301997,0.7257257257257257,0.26396440929312903,1.0709812674759234,0.3440238429387031,client
"3proxy-devel-g8000,2,3",mix-http-3k,1,1.0845793335999998,2997.7,8.704,21.504,102.4,0,0,0,7.34,3.430049,5.414080665274443,244.85438836441273,1596.46875,0.5493067760203085,0.7245804540967423,0.2594409024031388,1.0711259973540823,0.3286951913041726,client
nginx-halfclose,mix-http-3k,1,1.0860832,2993.9,8.192,20.48,63.488,0,0,0,6.52,3.2268979999999994,4.802578660640363,217.77614482781655,133.875,0.5209468344918279,0.6150943396226415,0.166903073286052,1.0486660826031973,0.236870325271736,client
"3proxy-devel-g8000,2,2",relay-stream16,2,1.5269597464262492,nan,nan,nan,nan,0,0,1786,5.65,2.140478,2.95814432483959,nan,5.4921875,0.10657294832826748,0.5188246097337006,0.14590402326708676,0.03230812955818058,0.1690186134021893,none
"3proxy-devel-g6000,2,2",relay-stream16,2,1.527426519142445,nan,nan,nan,nan,0,0,1522,5.52,2.060835,2.889287720396542,nan,5.15234375,0.099867097019176,0.5082872928176796,0.14119359534206696,0.032311456639521265,0.1670515981180268,none
"3proxy-devel-g6000,3,2",relay-stream16,2,1.5273192172961114,nan,nan,nan,nan,0,0,1820,5.57,2.110553,2.915458804820424,nan,5.6953125,0.10155656795747912,0.5138376383763837,0.14139444173573867,0.033264277025504094,0.17188748056309575,none
"3proxy-devel-g8000,2,3",relay-stream16,2,1.5269050080618518,nan,nan,nan,nan,0,0,1298,5.76,2.202673,3.0159434836318715,nan,6.01953125,0.11054131054131054,0.5313653136531366,0.14791464597478177,0.03325508907114773,0.17279347378808269,none
nginx-halfclose,relay-stream16,2,1.5271454180734634,nan,nan,nan,nan,0,0,1181,5.46,2.0843830000000003,2.8584707431980374,nan,35.64453125,0.10813887307911212,0.5,0.1485769416304872,0.033257111145868316,0.17090007185739783,none
3proxy-devel,relay-stream16,2,1.5271615376198,nan,nan,nan,nan,0,0,1443,5.59,2.0542309999999997,2.926328765588548,nan,5.92578125,0.10446343779677113,0.5133149678604224,0.14832767813863307,0.03230146135420782,0.17183292323675636,none
"3proxy-devel-g8000,2,2",mix-relay-3k,2,1.0901348592,2998.1,8.704,21.504,81.92,0,0,0,6.07,2.137849,4.454494743488523,202.46155898735867,1348.3671875,0.537767314106337,0.5881782945736435,0.22336769759450173,1.0726774661205227,0.2790758530889891,client
"3proxy-devel-g6000,2,2",mix-relay-3k,2,1.0864086095999999,2998.4,8.704,20.48,77.824,0,0,0,5.94,2.095792,4.374044864896292,198.10565635005335,1352.12109375,0.546865788956573,0.580078125,0.22156862745098038,1.0843738673327565,0.27250558394042446,client
"3proxy-devel-g6000,3,2",mix-relay-3k,2,1.0982566856,2998.3,8.192,20.48,98.304,0,0,0,5.9,2.0874119999999996,4.297720252366475,196.7781742987693,1354.0078125,0.5389457120377655,0.5739299610894941,0.21596474045053868,1.0748447260656113,0.2636999079389553,client
"3proxy-devel-g8000,2,3",mix-relay-3k,2,1.0899811095999998,2998.2,8.704,21.504,81.92,0,0,0,5.96,2.120841,4.374387737554236,198.78593822960443,1356.53125,0.5358748778103617,0.5769603097773476,0.20422189494354442,1.068776575829968,0.2521163026044495,client
nginx-halfclose,mix-relay-3k,2,1.089887056,2997.7,8.192,20.48,65.536,0,0,0,5.7,1.9227900000000002,4.183919769389389,190.14577843012975,611.4765625,0.5469121140142518,0.56047197640118,0.22776679841897232,1.0692715461057194,0.28402279568397176,client
3proxy-devel,mix-relay-3k,2,1.0842282528,2997.9,8.192,20.48,81.92,0,0,0,6.3,2.200633,4.648467688408128,210.14710297208046,1372.86328125,0.5588810641627543,0.6122448979591837,0.2309197651663405,1.0969033508648351,0.27972272234793494,client
"3proxy-devel-g8000,2,2",mix-http-3k,2,1.090178072,2998.3,8.704,21.504,77.824,0,0,0,7.15,3.345727,5.2468492505140025,238.4684654637628,1605.453125,0.548456850796147,0.7142857142857143,0.25681705503222607,1.0761706681221697,0.33227764599730897,client
"3proxy-devel-g6000,2,2",mix-http-3k,2,1.1164834912000001,3057.4,9.216,31.744,311.296,0,0,0,7.41,3.551996,5.309527679292926,242.36279191469876,1596.71484375,0.5479822359528866,0.7286135693215339,0.2692307692307692,1.0791164171215561,0.3456215017704915,client
"3proxy-devel-g6000,3,2",mix-http-3k,2,1.091835756,2999,8.704,21.504,98.304,0,0,0,7.28,3.417718,5.3341356225010825,242.74758252750917,1583.55859375,0.5522154987312122,0.7243781094527363,0.26271604938271603,1.067182054572125,0.338131051610527,client
"3proxy-devel-g8000,2,3",mix-http-3k,2,1.0910639104000002,2999,8.704,21.504,81.92,0,0,0,7.6,3.645858,5.572542489991244,253.41780593531178,1599.28125,0.5385628291948834,0.7293666026871402,0.2670481640438722,1.0697451390116737,14.606741532679534,origin
nginx-halfclose,mix-http-3k,2,1.093231416,2997.8,8.192,20.48,63.488,0,0,0,6.68,3.309217,4.888260547389904,222.83007538861833,133.2890625,0.5251595944423583,0.6295947219604147,0.17125237191650855,1.0514611962127725,0.24811691467003313,client
3proxy-devel,mix-http-3k,2,1.0845816952,2998.6,8.704,21.504,77.824,0,0,0,7.62,3.6393719999999994,5.62060011429188,254.11858867471486,1600.9453125,0.5407577497129736,0.7434146341463415,0.2660861151427189,1.074393801908739,0.3440759512482678,client