Disk I/O speeds seem too slow
I am suspecting that something is wrong with the hard drives on my linode.
I am running a program that reads about 70k+ files when it starts. Usual time for startup for this program is around 30 seconds on a system with SSD. On this linode, it takes closer to 7 minutes. Writing files during shutdown for this program is also very slow.
Archiving files also seems extremely slow. I remember my linode being on a SSD. Am I wrong?
I remember this happening after I auto-upgraded the system from 20GB to 25GB. I didn't resize it in the system yet. I wonder if something went wrong there?
2 Replies
You are not wrong, SSD should write faster than spin disk drives and resizing your disk shouldn't have any affect on I/O.
This may be due to having noisy neighbors that are using more of than their allotted resources. To check if this is the case run the following command when I/O is slow:
iostat 1 10
With this report we looking at the steal columns. This lets us know if your neighbors are using more of their shared resources than what allotted to them.
In a shared environment there's always going to be some steal. But as it increases you will start to see some latency.
We now have Dedicated CPU which helps in cases where I/O is important. I reccomend checking out our pricing page and our How to Choose a Linode Plan page for more information about Dedicated CPU.
If you are experiencing steal. Please open up a Support Ticket from your Linode Manager and send the output of the iostat command so we can take a look and see what is the best option.
Holy crap. I was on a node (since the free up-sizing) that was basically killing my server. I "resized" to a bigger server, then back down to the original size, which placed me on a different server, and now I'm no longer getting CPU use warnings and similar, despite alarms set at the same level. I didn't realize to check the "%steal" values before I moved, but h1101-fnc1 (freemont) was horrible. Now I'm on another node in freemont and "my" cpu use is practically nil and it's as responsive as I always remembered. Previously I was getting warnings daily for exceeding 200% CPU usage (all of it in I/O wait.)
To be clear, transfer out of that server was barely 20MB/s at peak, whereas transfer from 16GB back down to 8GB is going at around 120MB/s.
I love Linode, but they really need to figure out a way to balance I/O better. All the CPU share in the world means nothing if I can't open a file for several seconds because of contention with other VMs.
Seriously, the difference in performance between the original host (h1101-fnc1) and final host (h1229-fnc1) is night and day. And on that note, I really don't like how the new "cloud" UI doesn't show the host system a VM is on.