Re: 4x lower IOPS: Linux MD vs indiv. devices - why?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Andrey,

thanks for your tips!

Am 23.01.2017 um 19:18 schrieb Kudryavtsev, Andrey O:
Hi Tobias,
MDRAID overhead is always there, but you can play with some tuning knobs.
I recommend following:
1. You must use many thread/job with quite high QD configuration. Highest IOPS for Intel P3xxx drives achieved if you saturate them with 128 *4k IO per drive. This can be done in 32 jobs and QD4 or 16J/8QD and so on. With MDRAID on top of that, you should multiply by the number of drives in the array. So, I think currently the problem, that you’re simply not submitting enough IOs.

I get nearly 7 mio random 4k IOPS with engine=sync and threads=2800 on the 16 logical NVMe block devices (from 8 physical P3608 4TB).

The values I get with libaio are much lower (see my other reply).

My concrete problem is: I can't get these 7 mio IOPS through MD (striped over all 16 NVMe logical devices) .. MD hits a wall at 1.6 mio

Note: I also tried LVM striped volumes. Sluggish perf., much higher system load.

2. changing a HW SSD sector size to 4k may also help if you’re sure that your workload is always 4k granular

Background: my workload is 100% 8kB and current results are here

https://github.com/oberstet/scratchbox/raw/master/cruncher/sql19/Performance%20Results%20-%20NVMe%20Scaling%20with%20IO%20Concurrency.pdf

The sector size on the NVMes currently is

oberstet@svr-psql19:~/scm/parcit/RA/adr/system/docs$ sudo isdct show -a -intelssd 0 | grep SectorSize
SectorSize : 512

Do you recommend changing that in my case?

3. and finally using “imsm” MDRAID extensions and latest MDADM build.

What is imsm?

Is that "Intel Matrix Storage Array"?

Is that fully open-source and in-tree kernel?

If not, I won't use it anyway, sorry, company policy.

We're running Debian 8 / Kernel 4.8 from backports (and soonish Debian 9).

See some other hints there:
http://www.slidesearchengine.com/slide/hands-on-lab-how-to-unleash-your-storage-performance-by-using-nvm-express-based-pci-express-solid-state-drives

some config examples for NVMe are here:
https://github.com/01org/fiovisualizer/tree/master/Workloads



What's your platform?

Eg on Windows, async IO is awesome. On *nix .. not. At least in my experience.

And then, my target workload (PostgreSQL) isn't doing AIO at all ..

Cheers,
/Tobias

--
To unsubscribe from this list: send the line "unsubscribe fio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux