saucelabs / forwarder

Forwarder is a production-ready, fast MITM proxy with PAC support. It's suitable for debugging, intercepting and manipulating HTTP traffic. It's used as a core component of Sauce Labs Sauce Connect Proxy.
https://forwarder-proxy.io
Mozilla Public License 2.0
200 stars 13 forks source link

WIP io parallel copy #834

Closed mmatczuk closed 3 weeks ago

mmatczuk commented 4 weeks ago
mmatczuk commented 3 weeks ago

I tested this patch with Forwarder and sc build, both locally and with dedicated Linux box 4 CPU Intel in local network. I see no stable improvement that would justify the change. In the test against gnet hello world, leading to this work, the new implementation (both local and over sc tunnel) does not change anything. In the test I'm able to get 20MiB/s throughput from a single core running gnet while forwarder and sc peak at 8,5MiB.

Testing against httpbin does not really work due to high variation in latencies stddev ranging to 70-100% both with wrk and vegeta. In vegeta this can be flattened out by using HDR but one can note how stable gnet latencies are.