[LU-12367] readahead page count calculation is incorrect for unaligned reads Created: 31/May/19 Updated: 07/Sep/19 Resolved: 16/Aug/19 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | Lustre 2.13.0 |
| Type: | Bug | Priority: | Minor |
| Reporter: | Patrick Farrell (Inactive) | Assignee: | Patrick Farrell (Inactive) |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||
| Severity: | 3 | ||||||||
| Rank (Obsolete): | 9223372036854775807 | ||||||||
| Description |
|
While looking at at 47K strided read workload, I noticed that there were a lot of 1 page read RPCs, roughly half as many as the larger RPCs: read write read write
I dug in to this, and I eventually figured out that when a read is unaligned on both the first and last page, the length calculation used to determine the count of pages for readahead is incorrect. A 47K read is 12 pages in length, but when it is unaligned at start and end, the total page count is 13 pages.
The fix is pretty simple, and the 1 page RPCs disappear from the workload. This should significantly increase performance for unaligned read workloads of this type. I'll try to get some benchmarks to include in the patch. |
| Comments |
| Comment by Gerrit Updater [ 31/May/19 ] |
|
Patrick Farrell (pfarrell@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/35015 |
| Comment by Gerrit Updater [ 07/Jun/19 ] |
|
Patrick Farrell (pfarrell@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/35109 |
| Comment by Patrick Farrell (Inactive) [ 16/Aug/19 ] |
|
Shilong is doing a large scale fix of strided readahead under |
| Comment by Gerrit Updater [ 07/Sep/19 ] |
|
Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/35015/ |