-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Investigate block device performance. #1529
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
We should keep in mind that these tests also need to be exercised on aarch64. |
There are multiple issues which bring down the overall performance of our block device emulation. I am listing them below sorted by their impact (from high to low):
Serializing the block file I/O also serializes the latencies of each IO request resulting in very low throughput (4-5k IOPS) on nvme SSDs. This also temporarly blocks our emulation thread, meaning increased latency in all other emulated devices. Possible solutions:
An increased guest interrupt rate adds significant overhead in the guest due to frequent context switches. Possible solutions: driver and device event suppression / Interrupt mitigation |
@sandreim do we already have an issue for improving block performance? |
@andreeaflorescu Yes we do have #1600. |
Previous benchmarks showed low performance when running a 4K random read test with fio.
We need to measure current I/O performance with different block sizes on the refactoring/epoll branch, identify possible bottlenecks and options for improving performance.
The text was updated successfully, but these errors were encountered: