Performance Chat Summary: 23 July 2024

Meeting agenda here and the full chat log is available beginning here on Slack.
Announcements
- Welcome to our new members of #core-performance
Priority Items
- WordPress performance Trac tickets
- Current release (6.7)
- Future releases
- Performance Lab plugin (and other performance plugins)
- Enhanced Responsive Images
- Embed Optimizer
- Image Prioritizer
- Image Placeholders
- Modern Image Formats
- Optimization Detective
- Performant Translations
- Speculative Loading
- Active priority projects
WordPress Performance Trac Tickets
- There are currently 16 performance issues in 6.7
- @pbearne I need input on this ticket as I made opinionated changes as to which option should not be autoloaded #61103
- @joemcgill I plan on digging into that PR to give you feedback, but am going to be out on holiday for a bit. If anyone else has time to look at this in the mean time, please do so.
- @mukesh27 I will take a look this week
- @joemcgill One thing that will be good to understand, is that if we aren’t autoloading options that are only needed in the admin, how do we make sure the editor experience isn’t negatively affected. I think you’re already planning on priming all of those options in the admin, but would be good to get some performance measurements of the before/after of both the front end and admin.
- @pbearne I have a patch to load the admin options in back on wp_int
Performance Lab Plugin (and other Performance Plugins)
- Performance Lab plugin and the following performance plugins:
- @mukesh27 I have been working on PRs that ready for review:
- @westonruter It seems like we’re getting increasing reports of issues with image generation in Modern Image Formats
- In GitHub and support forums
- @westonruter Might be related to the issue of AVIF generation taking a very long time sometimes?
- @joemcgill Ah, I do remember cases a long time ago where image generation could take longer than the max PHP timeout on some hosts and result in the attachment data being created in the DB while the actual image generation failed. I wonder if something like that is happening?
- @westonruter That’s being discussed here: https://github.com/WordPress/performance/issues/371
- @adamsilverstein this could also be a support detection issue, (where format support for AVIF gives a false negative or positive), interesting they say it falls back to WebP
- @westonruter I wonder if the AVIF generation should be moved a background process? Use the JPEG immediately upon upload and then use the AVIF once it is available
- @adamsilverstein we already have a way of generating images in multiple passes, but it needs to be able to process one image completely before the timeout
- @joemcgill That’s a good idea. There is prior art for generating missing intermediate sizes that could be referenced.
- @pbearne Idea: we need a long process control for wp-admin that can be used for any task that takes a long time (images gen, post delete, etc.)
- @adamsilverstein https://github.com/WordPress/performance/issues/490 was part of that previous effort, there is also a trac ticket
- @westonruter I thought that was primarily for regenerating the entire media library
- @adamsilverstein yes, but part of that was the ability to regenerate images in i the background #6814 16 year old ticket
- @joemcgill It’s not totally accurate anymore, after #40439
- @adamsilverstein true, we partially solved the issue with that, as long as the user agent remains present to trigger the retries
- @joemcgill I’ve played with using WP_Cron for this a looooooong time ago, but that can cause failures to affect end-user front-end requests, which we’d want to avoid
Active Priority Projects
Improving the calculation of image size attributes
- @mukesh27 For Improving the calculation of image size attributes i have been working on:
- PR #1382 – Update
wp_calculate_image_sizes
to Reflect Changes in sizes attribute - Issue #1389 – Accurate sizes improvement didn’t account for the disable filter for sizes
- @joemcgill I’m reviewing those this morning
- PR #1382 – Update
Plugin Check
- @swissspidy there is 1 new performance-related check being worked on that’s ready for code review: https://github.com/WordPress/plugin-check/pull/519. There are more PRs some other contributors are working on, but nothing performance-specific.
Open Floor
- WordPress 6.6 performance analysis
- @adamsilverstein Yes… I have been working on a post for 6.6 performance changes and will share a draft here for feedback soon!
- one challenge has been identifying the source of the slight regressions we see in 6.6 (the numbers haven’t changed much since I shared results here for an RC a few weeks ago)
- part of the challenges is tracking changes that originate in the Gutenberg project and are then merged over to core. our automated tests haven’t highlighted issues, nor are the Gutenberg performance tests
- some ideas: it might be because the regressions are very small and spread out over a number of commits, or it might be related to the difference in how we are doing automated tests. in case, it points to an area we can improve
- @joemcgill Agreed. There are a number of improvements that we could make to our CI infrastructure in both the GB repo and in Core that would help. We’ve already got https://github.com/WordPress/performance/issues/1380 as a place to discuss a set of improvements we want to focus on next. I’d love to see more discussion there so we can define and prioritize some next steps.
- One of the questions that I still have is whether the benchmarks that we have been taking at the end of each release are providing us with useful info, or if they are obscuring what is really happening in the field. @adamsilverstein I’m curious if we could get some HTTPArchive data after 6.6 has been out a while to see if our lab benchmarks relate to real user data or not.
- @adamsilverstein that is a good point, I’m happy to work on that. we should have enough data in a few months.
- some performance improvements we are adding will really only become apparent in the field data, and our automated testing can’t really measure those
Our next chat will be held on Tuesday, July 30, 2024 at 15:00 UTC in the #core-performance channel in Slack.