Tune the mojo::DataPipe capacity and read chunk size when reading blobs.
We have reports from some sites that data loaded from cache_storage via a service worker is slower than when loaded from http cache. One possible explanation is that the mojo::DataPipes used for reading the BlobDataHandle from cache_storage are not tuned like the DataPipes used by the network loading path. In the network loading path they use 512KB pipes and read in 32KB chunks. This CL attempts to tune the various DataPipes used to read BlobDataHandle objects. It also includes some DataPipes in the service worker code that are read in a similar way; for loading scripts, ReadableStreams, etc. This CL uses 512KB pipes and 64KB read chunks as the default as those were the best values in local testing. It also adds features to control these values in a future finch trial. We can compare different values against heartbeat metrics and site-specific metrics. R=kinuko@chromium.org, mek@chromium.org, rkaplow@chromium.org Bug: 881141 Change-Id: If8d956ad195c6cf85547f1c7172f4a35972513e4 Reviewed-on: https://chromium-review.googlesource.com/1211739Reviewed-by:Robert Kaplow <rkaplow@chromium.org> Reviewed-by:
Marijn Kruisselbrink <mek@chromium.org> Reviewed-by:
Kinuko Yasuda <kinuko@chromium.org> Commit-Queue: Ben Kelly <wanderview@chromium.org> Cr-Commit-Position: refs/heads/master@{#591135}
Showing
Please register or sign in to comment