Storage Performance Testing Toolkit and Configuration #1457
Replies: 8 comments 18 replies
-
|
@benyamin-codez Thanks for starting the thread! It will be nice to have some agreement about how we can test the performance impact of the proposed patches.
|
Beta Was this translation helpful? Give feedback.
-
|
Thanks Yan. Is there a standardised internal IOMeter config you can share? iinm, it's probably a good idea to include no MSI-X as well (along with a separate single vCPU test) to cover all those corner cases. Single vCPU testing aside, I've tended to settle on 4x vCPU. |
Beta Was this translation helpful? Give feedback.
-
|
@xiagao can you please share out IOMeter settings? |
Beta Was this translation helpful? Give feedback.
-
|
@benyamin-codez BTW: do you see now systems without MSI-X? Are you still supporting Windows Server 2008? |
Beta Was this translation helpful? Give feedback.
-
|
We use iometer in general IO testing with the following configuration.
While for the performance test, usually we use FIO tool. |
Beta Was this translation helpful? Give feedback.
-
|
I'm minded to also include in the discussion the subject of the backing used for performance testing. To date, I've used a RAW, fully allocated, file-based backing outside of the QEMU global mutex. Notable configuration elements include: I also:
Does anyone have any comments or concerns with any of the above? |
Beta Was this translation helpful? Give feedback.
-
I'd add: Random - 8KiB - 64QD - 8/16 threads - 8 CPUs, just to better mimicking highly stressed, enterprise-like workload. Expected backing: DC-class NVMe with
As of me, the tests should reveal some complex storage virtio-accelerated QEMU performance "in-the-wild" (if possible). |
Beta Was this translation helpful? Give feedback.
-
|
On Wed, Nov 26, 2025 at 5:15 PM benyamin-codez ***@***.***> wrote:
@peixiu <https://github.com/peixiu>
You can use the original reproducer @iops-hunter
<https://github.com/iops-hunter> linked to above, or use the config in my
last comment above.
It seems important to match the numjobs to the number of vCPUs.
You should get some errors within 60s, certainly within 300s.
OK, thank you, I'll have a try with these tips.
And sorry for not taking much time to test it completely, the reproduction
is in progress.
Any result will update on the issue.
Thanks~
Peixiu
… —
Reply to this email directly, view it on GitHub
<#1457 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AFRCOJ3DF7YW6X4BZET6IS336VVRBAVCNFSM6AAAAACMI6VYVGVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTKMBYGQZDAMI>
.
You are receiving this because you were mentioned.Message ID:
<virtio-win/kvm-guest-drivers-windows/repo-discussions/1457/comments/15084201
@github.com>
|
Beta Was this translation helpful? Give feedback.



Uh oh!
There was an error while loading. Please reload this page.
-
Hi everyone,
I thought it prudent to kick off a discussion around performance testing for our storage stacks.
It would be helpful if we could develop a standard toolkit and configuration.
Perhaps we have already, and I missed the doco somewhere?
In terms of reporting, what would be the preferred format?
Raw, XML, JSON, HTML, PNG plots, CSV, XLSX, ODS, PDF, or some archived combination?
From what I can tell, and probably due to our Windows focus, we tend to mainly see
IOMeterandDiskSpdbeing used but reporting is limited and there doesn't appear to be a standardised test configuration.Historically, we do appear to have the Daynix StorMeter bricklet too...
I do see some value in using fio due to it's flexibility and various reporting options and extensions, e.g. fio-plot.
There may also be some common ground with the QEMU storage team if this is what they use?
Perhaps someone could ask them for their take on this?
Any other suggestions?
As for configuration, we should include a variety of block sizes, queue depths and thread counts.
What would everyone like to see included?
Are there other configuration elements we should include as standard, e.g. num_cpus, alignment, parallel threads?
Are we only concerned with read operations (after suitably random test files are written)?
I would suggest at a minimum we should include (num_cpus = 4):
attn: @vrozenfe @YanVugenfirer @kostyanf14 @JonKohler @sb-ntnx @MartinCHarvey-Nutanix @MartinDrab
Beta Was this translation helpful? Give feedback.
All reactions