diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-23 07:59:29 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-23 07:59:29 -0400 |
| commit | 968cd2dca6c463efb44dd04ad92f23eda81da33a (patch) | |
| tree | 82a7d33f6304b564779e02f6b3a6642f9086d3ea /tools/cuda-ab/run/wedge_bisect | |
| parent | 27e51965ddb535c03a107cd108486af09824cfe9 (diff) | |
| download | open-iov-968cd2dca6c463efb44dd04ad92f23eda81da33a.tar.gz open-iov-968cd2dca6c463efb44dd04ad92f23eda81da33a.zip | |
vgsp-sema: chunk the discovery scan's guest reads (64 KB) - the rebuild was starving the pump
The full-RAM discovery scan read one 4 KB page per vfio_dma_rw call:
1.5 M guest reads over the 6 GB range, ~10-11 s per rebuild, and the
rebuild runs every 10 s - so the pump got roughly one pass per rebuild.
A client whose resolutions were dropped by a session flush then waited
minutes for the scan to re-find its pages (the observed post-flush
stall: data-VA copies returning -ENOENT with the pump counters frozen).
Reading 64 KB chunks amortizes the iommu walk + pin over 16 pages; the
per-page detection logic is unchanged.
Diffstat (limited to 'tools/cuda-ab/run/wedge_bisect')
0 files changed, 0 insertions, 0 deletions
