Solving Slow Virtual Machine Problems
Technology has a funny habit of solving one problem but then highlighting another. A typical example of this is the emergence of virtual operating systems, that is an OS that runs on top of another OS. While there are many advantages to many computer users in running these configurations they all rely the humble hard disk , and as fragmentation occurs, this can lead to instability and potentially data loss.
If you are fortunate enough to have very deep pockets then you may be using SSD’s or solid state drives. These still remain expensive and are out of the reach of most users who still have to rely (although getting much faster) on the slowest and some would say the most vulnerable technology in your computer- the hard drive. Hard drive fragmentation can cause problems with virtual machines and in some cases even data loss.
Fragmentation is where a file is split into multiple components by the operating system to allow it to fit in available space of the hard disk drive. When you are already running one operating system, and fragmentation becomes an issue, running another highly fragmented system on top of this causes a tremendous slow down in performance.
Fragmentation will not only slow down your computer or server but due to the excessive and unwarranted extra movement of the heads, the life of your storage device(s) can be seriously reduced. The problem is not only limited to single drives however, even if you have a very well specked raid set up, fragmentation can get so severe that the only viable option is data recovery or server rebuild.
You would like to think that as the problem of file fragmentation has been with us since the advent of hard drive based computer systems, operating system vendors would have come up with a software solution to ensure the problem is eradicated at source. Whilst Mac OS X will partially help with files under a 20 mb size, Windows operating systems seem to pay it no heed whatsoever.
Defragmentation utilities can take care of this problem, however, running them practically ties up the machine until completion, slowing the machine to a crawl. So what can be done to remove this issue? There are a number of possibilities that can be tried.
Fortunately we are not left to the operating systems alone as there are a number of third party defragmentation applications that are far superior to the inbuilt OS tools. These can be scheduled to run when system usage is very low for example whilst the system is idle or the screen saver is running. As you go defragmentation is my personal choice.
Use dedicated hardware for the Virtual Machines: Whilst it may appear to be a contradiction in terms, running the virtual machine from a dedicated hard disk or RAID Array is probably the most efficient method of running the machine at all. It leads to the minimum of wear on the individual hard disk devices and means that running even simultaneous defragmentation is possible.