Performance Chat Summary: 31 October 2023

Meeting agenda here and the full chat log is available beginning here on Slack.
Announcements
- Welcome to our new members of #core-performance
- WordPress 6.4 Release Candidate 3 is tomorrow
- The Performance Hallway Hangout blog post has been updated with a recording of the session
Priority Projects
Server Response Time
Link to roadmap projects and link to the GitHub project board
Contributors: @joemcgill @swissspidy @thekt12 @mukesh27 @pereirinha
- @joemcgill One of the focuses for 6.5 will looking at several tickets related to improving template loading: https://github.com/WordPress/performance/issues/746
- I know we have #59314 and #59595 already in progress (seeing @thekt12 and @pereirinha both here)
- @thekt12 As a part of 746, – Created a PoC to test out if persistent cache better than default function for checking
files_exists
#59314 ( PR#5597 ).
Need to get some numbers for that - @joemcgill As we’ve talked about this exploration, one of the things that came up was the need to come up with a solid approach for cache invalidation, if we do find that the effort is worth pushing forward. Somewhat related, we have #59719 that would be great to get feedback on from anyone interested
- @pereirinha as for #59595 there’s already a PR and some feedback to look into. The proposed solution is to use object caching. The CPU impact and the wall time are greatly improved, but there’s the memory cost. I’ll be circling back on the feedback shortly
Database Optimization
Link to roadmap projects and link to the GitHub project board
Contributors: @mukesh27 @thekt12
- @mukesh27 I’ve been working on #56912, but it appears that this ticket is no longer valid. Some options have been autoloaded in WordPress 6.3, while the remaining options are not loaded in WordPress. Therefore, we should proceed to close this ticket. We are awaiting feedback from Jonny before finalizing the decision.
- @joemcgill We can give it a couple days to see if @spacedmonkey has anything to add, but think it’s ok to close if you and @flixos90 agree, since Jonny’s been away
- @brianhenryie On the templates caching, I see it’s using
file_exists()
but elsewhere in WP I seeis_readable()
which is more correct, and presumably slightly slower.- @joemcgill I think the current implementation is simply for testing purposes, but would you mind adding a comment to the ticket so we remember to review that?
JavaScript & CSS
Link to roadmap project and link to the GitHub project board
Contributors: @mukesh27 @10upsimon @westonruter
- No updates this week
Images
Link to roadmap projects and link to the GitHub project board
Contributors: @flixos90 @thekt12 @adamsilverstein @joemcgill @pereirinha @westonruter
- @westonruter I’ve got an initial PR open to introduce an “Image Loading Optimization” module for the Performance Lab plugin. In addition to having scaffolding for the module, this PR also introdues output buffering for template renders as well as a filter manipulating the output buffer prior to flushing. Reviews for this PR would be appreciated so it can be merged. This will then be used in subsequent PRs for the module to optimize the loading of images (and other things). For example, I have an early draft PR for the detection logic to determine which image is LCP and which images should not be lazy-loaded. See overview issue.
Measurement
Link to roadmap projects and link to the GitHub project board
Contributors: @adamsilverstein @joemcgill @mukesh27 @swissspidy @flixos90
- @swissspidy For the metrics stabilization exploration I did share some preliminary findings the other day based on my testing. I’m a bit out of options right now as I don’t think I’ve found a magic bullet that just eliminates any variance, so I’d appreciate some eyes there.
- @joemcgill Related to measurement, I reported here yesterday some observations I made about the automated benchmarking workflow we’ve been experimenting with during this release. Discovering that running benchmarks on the two themes sequentially, was causing the classic theme results to be skewed. I’ve opened a PR on @swissspidy‘s repo that allows you to choose which theme you want to test, as one approach to avoiding that issue.
Ecosystem Tools
Link to roadmap projects and link to the GitHub repo
Contributors: @mukesh27 @swissspidy @westonruter
- @mukesh27 for the plugin checker:
- Implement persisting the enabled check categories checkboxes in user settings – Merged
- Plugin deploy workflow for
trunk
– Merged - Add link to Plugin Editor for each found issue to jump user to file and line of code – Ready for final review
- @swissspidy So I built this GitHub Action for Plugin Check the other day and people on Twitter seemed to really like it. According to GitHub Search 2 repos are using it already
- And that’s before @adamsilverstein actively looking into bringing it to some plugins out there.
- Involves some iterations in improving the CLI command etc. but the action has already proven to be useful I’d say.
- @adamsilverstein I’ve been working on implementing that action, starting with a personal plugin and reporting issues back to @swissspidy
- @westonruter suggested proposing the action for the Performance Lab plugin
Creating Standalone Plugins
Contributors: @flixos90 @mukesh27 @10upsimon
- @10upsimon I am iterating on the PR to have it ready for re-review hopefully by tomorrow
Open Floor
- n/a
Our next chat will be held on Tuesday, November 7, 2023 at 16:00 UTC in the #core-performance channel in Slack.