neqo icon indicating copy to clipboard operation
neqo copied to clipboard

Why is there a large throughtput difference between upload and download tests?

Open larseggert opened this issue 8 months ago • 4 comments

For example, in https://github.com/mozilla/neqo/actions/runs/14130968402/attempts/1#summary-39591639225:

1-conn/1-100mb-resp/mtu-1504 (aka. Download)/client
                        time:   [445.07 ms 449.70 ms 454.30 ms]
                        thrpt:  [220.12 MiB/s 222.37 MiB/s 224.69 MiB/s]

vs.

1-conn/1-100mb-resp/mtu-1504 (aka. Upload)/client
                        time:   [1.6145 s 1.6388 s 1.6636 s]
                        thrpt:  [60.110 MiB/s 61.022 MiB/s 61.938 MiB/s]

larseggert avatar Mar 28 '25 16:03 larseggert

Why is the latter called "100mb-resp" and not "100mb-req" ?

martinthomson avatar Mar 31 '25 01:03 martinthomson

My guess is copy&paste error - @mxinden?

larseggert avatar Mar 31 '25 05:03 larseggert

For what it is worth, here is a Flamegraph of a local Upload benchmark run. I have not had any luck identifying any bottleneck thus far.

Image

mxinden avatar Mar 31 '25 19:03 mxinden

How does that flamegraph compare to a download one?

Also, have you looked at the flamegraphs generated on the bencher?

larseggert avatar Apr 01 '25 04:04 larseggert

I think this got fixed.

larseggert avatar Sep 03 '25 06:09 larseggert

Yes, https://github.com/mozilla/neqo/pull/2734 was the missing piece.

mxinden avatar Sep 03 '25 06:09 mxinden