[code caching] Handle small data with a single read/write
- Many small reads and writes are observed, especially with the JavaScript code cache. Detect these and write all data into the entry's stream 0, and clear stream 1. When reading, detect the entry size and for small data, skip the stream 1 read and copy the data from the stream 0 read. - Changes the stream 0 data (again) to a header with response time and data size. The data size, while not strictly necessary right now, will be needed if we implement de-duplication of identical entries stored by multiple origins. We can add the code hash to this header, and the size field will disambiguate between small entries and large de-duplicated entries where we use the hash as a key to the data. - This change should make small reads faster than before, as synchronous completion of stream 0 reads is observed. Otherwise, there should be no change in performance. - Renames the buffers and completion callbacks to reflect small/large data distinction. Bug: chromium:992991 Change-Id: I6fb5337ef1e4148dd9f300f0a8c85acb401be62e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1834562 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:Kinuko Yasuda <kinuko@chromium.org> Reviewed-by:
Mythri Alle <mythria@chromium.org> Reviewed-by:
Maks Orlovich <morlovich@chromium.org> Cr-Commit-Position: refs/heads/master@{#702667}
Showing
This diff is collapsed.
Please register or sign in to comment