RAID Stripe size question

BitRausch

Renowned Member
Mar 16, 2009
140
0
81
Muenster
Hi @All,

Just curious:

I am running a 1TB RAID 10 system (currently with 64k stripe). I was wondering what the best strip size would be for optimum performance.
I use mainly Windows Server VM's with RAW files between 30-200GB. In windows the file format is NTFS with 4K cluster.
So basically I was wondering if the Windows Read/Write performance is influenced more by the Strip size of the controller or by the cluster size IN the windows machine.

Just a question if I can optimize the "windows disk" performance . :)

kind regards

PS: @dietmar,tom what strip size do you use on your servers?
 
Last edited:
No idea - but I too would appreciate a step by step "idiot's" guide to optimising block sizes all the way from the VM to the SAN (i.e. including Promox and the LVM layers).
 
There is no general "optimum performance" when setting RAID stripe size. For different workloads you would configure different stripe sizes.

Perhaps counter-intuitively, small stripe sizes increase IO bandwidth (speeds up read/write of few large files like video), while large stripe sizes increase random IO performance (concurrent access to many files) and help multi-user loads.

For a multi-user, multiple virtual machine workload like Proxmox VE, you want to configure your RAID arrays with the largest stripe size available, so optimally all your disks can work on different IO requests at the same time (since the stripe size will be bigger than the average IO or file size). 256k sounds good here.

But it you would use your RAID array for a media server serving usually one-two files at the same time, you would want a smaller stripe size, so optimally all your disks would take part servicing the same IO request. 64k is a better choice here.

For NTFS, you might want to stay with the default, since many features of the file system (for example defrag) are not available with larger cluster sizes.
 
Last edited:
Thx for your very interessting reply!!!

I guess what I am trying to understand is: what is driving the I/O performance in a virtual environement. Is it the OS in the VM or the underlying RAID system for the RAW file.
I am running mostly Windows OS in KVM (SBS 2008, Windows 7). So files are mostley small.
But the RAW files are big (20GB-200GB). Should I go for something like 64K because of the small Windows files ore is something like 128K-256K better because of the large RAW files...

I would love to run some test but I am not sure how to measure the IO performance in a virtual environment...

any opinion this?

Kind regards
 
I guess what I am trying to understand is: what is driving the I/O performance in a virtual environement. Is it the OS in the VM or the underlying RAID system for the RAW file.

Well all three are contributing factors to IO performance. To know exactly what degree - no one knows, and only thorough testing would reveal that. AFAIK KVM does IO in a single-threaded manner currently, so that's probably the biggest bottleneck in your system (by far more than stripe or cluster size).

I am running mostly Windows OS in KVM (SBS 2008, Windows 7). So files are mostley small.
But the RAW files are big (20GB-200GB). Should I go for something like 64K because of the small Windows files ore is something like 128K-256K better because of the large RAW files...
You still got it backwards. For small files (or rather, small random IO operations), you need large stripe size. For large, sequential IO operations (like reading a video file) you need small stripe size.

So what I wrote in my previous post still stands, regardless of the RAW file size: since you are running multiple, simultaneous and short IO operations (small file accesses in more than one VM), you need a large stripe size like 256k or more, so each disk in your array can service a different IO request at the same time (effectively multiplying IO performance by the number of disks in an optimal case).
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!