Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: Build Firefox with current neqo #1834

Merged
merged 63 commits into from
May 6, 2024
Merged

Conversation

larseggert
Copy link
Collaborator

No description provided.

Copy link

codecov bot commented Apr 16, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 93.24%. Comparing base (dcc88e3) to head (9ce0043).
Report is 9 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1834      +/-   ##
==========================================
- Coverage   93.25%   93.24%   -0.02%     
==========================================
  Files         110      110              
  Lines       35793    35810      +17     
==========================================
+ Hits        33380    33390      +10     
- Misses       2413     2420       +7     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@larseggert
Copy link
Collaborator Author

So it's building (yay!) but given the time it takes to do so, not sure it's productive to enable this for each PR push.

Copy link

github-actions bot commented Apr 16, 2024

Benchmark results

Performance differences relative to ed19eb2.

  • drain a timer quickly time: [308.94 ns 317.59 ns 325.55 ns]
    change: [-2.1602% -0.0800% +2.3222%] (p = 0.94 > 0.05)
    No change in performance detected.

  • coalesce_acked_from_zero 1+1 entries
    time: [197.36 ns 197.74 ns 198.15 ns]
    change: [-1.3154% -1.0002% -0.6823%] (p = 0.00 < 0.05)
    Change within noise threshold.

  • coalesce_acked_from_zero 3+1 entries
    time: [241.03 ns 241.70 ns 242.39 ns]
    change: [-0.0419% +0.2714% +0.5815%] (p = 0.09 > 0.05)
    No change in performance detected.

  • coalesce_acked_from_zero 10+1 entries
    time: [239.89 ns 240.70 ns 241.64 ns]
    change: [-0.9279% -0.4535% -0.0126%] (p = 0.06 > 0.05)
    No change in performance detected.

  • coalesce_acked_from_zero 1000+1 entries
    time: [218.45 ns 218.63 ns 218.84 ns]
    change: [+0.5619% +1.0983% +1.6782%] (p = 0.00 < 0.05)
    Change within noise threshold.

  • RxStreamOrderer::inbound_frame()
    time: [118.22 ms 118.33 ms 118.43 ms]
    change: [-0.7297% -0.6270% -0.5282%] (p = 0.00 < 0.05)
    Change within noise threshold.

  • transfer/Run multiple transfers with varying seeds
    time: [117.87 ms 118.10 ms 118.33 ms]
    thrpt: [33.803 MiB/s 33.870 MiB/s 33.937 MiB/s]
    change:
    time: [-2.1355% -1.8451% -1.5361%] (p = 0.00 < 0.05)
    thrpt: [+1.5601% +1.8798% +2.1821%]
    Change within noise threshold.

  • transfer/Run multiple transfers with the same seed
    time: [118.37 ms 118.57 ms 118.78 ms]
    thrpt: [33.676 MiB/s 33.734 MiB/s 33.793 MiB/s]
    change:
    time: [-2.0188% -1.7741% -1.5139%] (p = 0.00 < 0.05)
    thrpt: [+1.5372% +1.8061% +2.0604%]
    Change within noise threshold.

  • 1-conn/1-100mb-resp (aka. Download)/client
    time: [1.1445 s 1.1496 s 1.1549 s]
    thrpt: [86.590 MiB/s 86.990 MiB/s 87.374 MiB/s]
    change:
    time: [+4.2308% +4.9359% +5.6574%] (p = 0.00 < 0.05)
    thrpt: [-5.3545% -4.7037% -4.0591%]
    💔 Performance has regressed.

  • 1-conn/10_000-parallel-1b-resp (aka. RPS)/client
    time: [426.65 ms 429.03 ms 431.46 ms]
    thrpt: [23.177 Kelem/s 23.308 Kelem/s 23.438 Kelem/s]
    change:
    time: [-0.3219% +0.4127% +1.1465%] (p = 0.28 > 0.05)
    thrpt: [-1.1335% -0.4110% +0.3230%]
    No change in performance detected.

  • 1-conn/1-1b-resp (aka. HPS)/client
    time: [49.791 ms 50.014 ms 50.286 ms]
    thrpt: [19.886 elem/s 19.994 elem/s 20.084 elem/s]
    change:
    time: [-1.4047% -0.6553% +0.0840%] (p = 0.09 > 0.05)
    thrpt: [-0.0839% +0.6596% +1.4247%]
    No change in performance detected.

Client/server transfer results

Transfer of 134217728 bytes over loopback.

Client Server CC Pacing Mean [ms] Min [ms] Max [ms] Relative
msquic msquic 748.9 ± 219.0 411.6 1003.2 1.00
neqo msquic reno on 1020.3 ± 288.2 764.8 1382.7 1.00
neqo msquic reno 1019.8 ± 316.8 795.1 1718.4 1.00
neqo msquic cubic on 1097.7 ± 292.1 767.3 1666.8 1.00
neqo msquic cubic 901.8 ± 200.3 764.5 1399.7 1.00
msquic neqo reno on 4527.0 ± 297.1 4264.2 5234.2 1.00
msquic neqo reno 4439.0 ± 308.6 4105.0 4973.5 1.00
msquic neqo cubic on 4392.3 ± 169.4 4154.3 4615.0 1.00
msquic neqo cubic 4483.1 ± 212.6 4204.9 4884.0 1.00
neqo neqo reno on 3687.8 ± 285.8 3240.5 4018.2 1.00
neqo neqo reno 3889.3 ± 373.5 3191.3 4392.0 1.00
neqo neqo cubic on 4088.2 ± 445.4 3010.9 4705.9 1.00
neqo neqo cubic 4365.5 ± 331.2 3796.1 4895.4 1.00

⬇️ Download logs

@mxinden
Copy link
Collaborator

mxinden commented Apr 17, 2024

So it's building (yay!) but given the time it takes to do so, not sure it's productive to enable this for each PR push.

How about treating it as an asynchronous CI step, i.e.:

  • Don't make it required.
  • Make it post a comment on failure.

Thereby we might not catch a regression before merging, but we will know through the comment posted after merge, and can thus easily revert without having to git bisect to find the regression in the first place.

Copy link
Collaborator

@KershawChang KershawChang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we probably want to setup mozconfig file to create debug and release build.

@larseggert larseggert marked this pull request as ready for review April 30, 2024 10:13
Copy link
Member

@martinthomson martinthomson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, modulo a few nits.

@larseggert larseggert enabled auto-merge May 6, 2024 13:25
@larseggert larseggert added this pull request to the merge queue May 6, 2024
Merged via the queue into mozilla:main with commit 20a4058 May 6, 2024
50 of 54 checks passed
@larseggert larseggert deleted the ci-firefox branch May 6, 2024 14:08
Copy link

github-actions bot commented May 6, 2024

Firefox builds for this PR

The following builds are available for testing. Crossed-out builds did not succeed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants