Re: striped LV and expected performance
Erwin van Londen <[email protected]> Mon, 21 Jul 2025 03:26:07 +0000
| Newsgroups | gmane.linux.lvm.general |
|---|---|
| Message-ID | <[email protected]> |
On 19/7/25 04:08, Zdenek Kabelac wrote: > Especially in virtual world you often get already some 'provisioned' spac= e > which nowhere near to anything physical. Try to stripe such drives makes > no practical sense. Been following this discussion with interest. I think the above sentence=20 sums up the entire discussion. A few more things I want to add. 1. Adding controllers, even in a physical machine, with individual disks=20 and stripe across them is by far the worst thing you can do. As=20 controllers, especially the high end ones, do have a huge amount of=20 logic and knowledge of the underlying topology, it can, and will=20 optimise read and write operations to align with head positions and=20 other characteristics in case of HDD's. On SSD's it can/will align to=20 disk firmware settings and instructions. These are in 99% of all cases=20 not available in the OS as they will be masked by the controller. If you=20 add more controllers these will all operate independently and have no=20 insight in the IO pattern and can therefore only operate on a single io.=20 As there are then dependencies on different controllers and different=20 disks, all controls will need to come from the OS side. 2. Using guest IO controls. (Such as direct io parameters). These kind=20 of parameters will almost always be ignored by the underlying hypervisor=20 as that will by itself needs to determine the IO parameters in=20 conjunction with other io activity of other guests on that hypervisor. 3. Unreal cache optimisations. Using dd is by far the worst option to=20 use for performance tests as it will never (Ok, almost never) align with=20 real workloads. If you use dd for performance test you will find that=20 this will backfire in most cases when a normal workload is applied. The=20 main reason is that dd will always have a sequential workload unless you=20 start a large amount of dd instances to the same disk at once with=20 different offsets. Even then you will see an obscure number coming back. 4. Use a tool that can record and replay io workloads such as SWAT and=20 VDbench. There are a massive amount of dependencies when it comes to storage=20 performance profile and optimisations. You may get really disappointing=20 outcomes when systems are configured with settings that come out of an=20 unrealistic profiling exercise and a real world workload will get=20 deployed on them. cheers Erwin