Be careful with innodb_io_capacity! (with standard HDDs)

A beautiful picture is sometimes better than words :

With standard HDDs (here in RAID 10), the innodb_io_capacity variable may have non expected effects.

You can see on this picture the result of a test on one of my server with only the replication thread activated. The value of the innodb_io_capacity variable was the single modification during the period.

So, don’t touch this parameter without a strong reason…

[EDIT1 2013-01-08]: I know 30k is a too high value for innodb_io_capacity, I used this value to make the graphe really eloquent.
Read this excellent post from Chris for more details :

[EDIT2 2014-09-12]: Tuning this variable is of course needful in some cases. Do your own tests

Does mpstat can replace vmstat ?

I prefer to say right now, the answer is no !
However, mpstat can provide a minimum service to show essentials information about your CPU usage :

Show usage for all CPU (every 1s) : mpstat 1

Show usage for CPU number 2 (every 1s) : mpstat -P 2 1

It’s possible to retrieve CPU load (user/sys) and IO waits via a simple interface.
And I like the opportunity to focus on a single CPU. It can be a usefull tool for monitoring and scripting.

But there isn’t any information about the run queue processes and this is the bad news here !

So, let me know if you’ve used this tool, all comments are welcome.