-
Notifications
You must be signed in to change notification settings - Fork 91
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
Review Performance Regressions in WP 6.6 beta #1294
Comments
@adamsilverstein I've spent some time investigating the source of the performance regressions, and am thinking the automated benchmarks may be reporting inaccurate data and that WP 6.6 Beta actually has better performance numbers than 6.5.3. WordPress/wordpress-develop benchmarksUsing the
More details about the processProcessFor each benchmark, I would make sure that I had refreshed npm packages and run a new build at each commit (i.e., wp-config.php settings
Commits checkedI ran benchmarks at the following commits where I was aware of the potential for performance impacts, along with the commit prior to a change.
|
Metric | 6.5.3 | 6.6 Beta 1 |
---|---|---|
Response Time (median) | 42.39 | 39.33 |
wp-before-template (median) | 21.65 | 14.34 |
wp-template (median) | 18.92 | 23.13 |
wp-total (median) | 40.71 | 37.39 |
FCP (median) | 146.5 | 128.2 |
LCP (median) | 147.6 | 128.2 |
TTFB (median) | 102 | 80.65 |
LCP-TTFB (median) | 48.2 | 46.95 |
Next steps
Assuming I've not made several mistakes here, I think our next step is to investigate why the automated benchmark script is reporting metrics that show a large regressions so we can fix that script to be more reliable going forward.
@adamsilverstein posted another set of benchmarks using the automated workflow in Slack:
|
@adamsilverstein @joemcgill I did manual benchmark for 6.5.X and 6.6 beta 2.
Find full result here. |
Thanks, @mukeshpanchal27 that's similar to what I was seeing above. @adamsilverstein's most recent set of benchmarks shows the same performance characteristics for Twenty Twenty-Four. Performance prior to template rendering is improved, but the template rendering is slower. In his case, the regression to template rendering offsets the pre-rendering gains, which is why he's showing a regression on Seems like something new being added to the block rendering process is likely leading to regression. |
Earlier today, @dmsnell reported the results of his own profiling in Slack.
Two possible commits to investigate:
The first of those is showing up as a performance improvement in most other places, so he is planning to re-run his profiles to confirm there wasn't a misconfiguration somewhere. The second looks like a potential area for investigation and is being worked on in https://core.trac.wordpress.org/ticket/61451. |
I did a round of benchmarks locally comparing the autoload options commit with the commit before. For both, I used a fresh site to ensure clean runs and took 100 sample requests: Before:
After:
I've got these constants set in my wp-config:
And for comparison, I ran them again but this time didn't reset the DB between aa04408 and 7d606a3 Before:
After:
|
@joemcgill @adamsilverstein I did manual and GA benchmark for 6.5.X and 6.6 RC 4. WordPress/wordpress-develop manual benchmarksTT4 theme
TT1 theme
Benchmark runsTT1 no cache: https://github.com/mukeshpanchal27/compare-wp-performance/actions/runs/9950889179 Both the workflow shows the regression in server timing matric |
@mukeshpanchal27 thanks for running those tests! Interesting that your manual testing doesn't really show the regressions that the automated testing seems to show. Did you set constants like Joe mentions above and run a bunch of iterations without doing anything else on your device? |
After WP 6.6 beta 1 was packaged, @adamsilverstein performed the first set of benchmarks for this release and reported results here.
We should investigate the cause of these regressions to see what issues can be identified and remediated prior to the final release. Additionally, investigation into why these regressions are showing up in release benchmarks but not in the metrics recorded by the automated performance workflow for each commit to WP Core.
Following initial investigation, follow-up tickets should be opened in Trac and/or the Gutenberg repo (whichever is appropriate) and can be added to the list of follow-up tasks below.
Tasks
The text was updated successfully, but these errors were encountered: