|
The Art of Computing Series - Disk Performance
All of us know that our computer
disks are where we keep our digital files. Although these days, we
do use USB memory sticks for temporary file storage and
transportation of data the way we used to use floppy disks
previously. Some parts of the world’s computer users are actually
still storing data on floppy disks. However, by and large,
individuals store their personal digital contents in files and
folders on their computers, the same way organizations like banks,
on-line shopping sites, corporations, and government departments
do—storing business and mission-critical data on massive disk
storages. Today, nearly all the data we have access to come from
some form of computer disk storage, somewhere. So what’s the big
deal? That sounds pretty straightforward, right?
Well, here is a little secret most
computer user and even some Information Technology (IT) professional
don’t know. Ninety percent or more of computer performance issues
encountered daily are caused by disk storage. Ninety percent is my
educated guess since no one I know has conducted any scientific
study on the subject. And at least one of the reasons that we still
do not have an industry-wide study is because there is not an agreed
upon disk performance standard among disk storage manufacturers!
Nonetheless, the disk storage performance issues in modern computing
have been well established in computer science communities, and
there have been many papers written on the subject.
To understand why disk storage
causes 90% of the performance issues we encounter, we need to first
understand how the disk storage device works in relation to the
computer. Below is a high-level data flow diagram for a disk Read /
Write process.
Disk Storage Access Flow Diagram

Without getting into too much
details and mathematics, here are some facts to be considered for
every major computer component.
Major Computer Components Speed
Measurements
 |
Computer CPU speed
is measured in hertz (Hz). One hertz means one computer cycle
per second, which usually translates as one executed command set
per second. In today’s computers, the CPU speed is measured as
multiple gigahertz (GHz) or multiples of 1,000,000,000 (109) per
second. So, a one GHz CPU can execute 1,000,000,000 command sets
per second. Most of the computer CPUs today can run much higher
than that one GHz. |
 |
Computer memory
speed is measured as multiples of megahertz (MHz) or 1,000,000
(106) per second in today’s computers. Most of today’s computer
memory speed runs from 500 to 800 megahertz per second. |
 |
Computer disk
device seek time (see above diagram) speed is measured as
milliseconds or 0.001 (10-3). A millisecond is an enormous
amount of time for a CPU: as indicated above, one GHz CPU can
execute over one million command sets in a millisecond. Now, you
may think that one millisecond is way too slow for a disk device
just seeking data, compared to computer memory and CPU speeds.
But here’s the shocker: the average disk devices seek time today
is a whopping 7 milliseconds. In just seek time speed alone,
disk storage devices are the slowest component by far in any
computer system. |
 |
Computer buses are
the links between computer memory, disk storage devices, and
other computer peripherals to and from the CPU. Speed between
the end points can vary based on the standards of the peripheral
devices. The slowest speed of a given end point determines the
maximum data transfer rate. |
I hope by now we can all agree that
disk storage devices are by far the slowest component of a computer
system. So, why are disk storage devices so very slow compared to
other major computer components? First of all, disk storage devices,
unlike nearly all the other major computer components, are a
mechanical device. The only other two computer components that are
mechanical are the CD/DVD drive and the floppy drive. Like anything
mechanical, there is a limit to how fast the many parts of the disk
storage device can move and coordinate in order to produce the
throughput. Also, while the capacity of the disk storage keeps
increasing because of better density management and compression,
there have been virtually no speed improvements over the last
several years. On the other hand, computer CPU and memory speeds
have just about doubled each year for the last several years.
So, what is the practical purpose of
going over all this? Well, have you ever wondered why a computer
seems to run slower over time even though nothing much has changed
in its use or configuration otherwise? For most of us, the solution
is to buy a newer and faster system, only to be in the same position
a year or so later.
There are a few contributing factors
to why a computer will run slower over time, but by far the number
one reason is—and yes, you guessed it—the disk storage device.
Actually, the disk storage device does not run slower over time by
itself, it just appears to be slower because of how the computer
uses it. For the most part, we do not even know that the disk
storage device is slowing us down. We just know that the computer is
slower.
Why does a computer’s performance
degrade over time? Again, it is not because the computer and disk
storage devices have slowed down. Unless there is some hardware
issue, the computer is running at the same speed all the time and
yes, this includes your disk storage device. The device is always
running at the same speed, per the manufacturer’s design.
The number one non-manmade reason
why computers run slower over time is disk or file system
fragmentation. As time goes on, files are deleted, created, and
truncated constantly, and as the disk space usage increases,
decreases, and increases again, there are gaps that start to appear
in otherwise fairly contiguous disk storage spaces. As the gaps
increase, the seek time and other related overheads will also
increase to find the sectors of the disk space that has the data we
need. So now, instead of one seek time to capture the data when
files are stored in a contiguous method, the disk storage device has
to go crazy running up and down looking for the data to be
retrieved. Each time, this involves an increasing delay in
delivering the file or files the computer requested.
So, how can we prevent disk storage
from becoming fragmented? Is it even doable? The answer is
absolutely “yes,” at least to a certain degree, depending on the
existing situation of the computer system’s disk or file
fragmentation at the moment.
Below are some of the methods for
keeping a disk storage device functioning efficiently:
 |
Do not delete your virtual
memory (aka System Swap File) after it is first created if possible.
|
 |
Remove all pre-loaded software
that you do not need and do not install any software you are not sure if you
need. Test new software on a separate machine than install it on your
production machine when you know you will need it, if possible. |
 |
Keep your Internet browser
cache file at around 20MB or less.
|
 |
Clean up all temporary files
from time to time by using search features to find them.
|
 |
When you download software
from the web site, delete or remove it from the disk storage after it is
installed.
|
 |
Keep your recycle bin empty,
as is practical for your use.
|
 |
Run disk/file system
de-fragmentation no less than once a month; weekly if possible.
|
 |
Check the integrity of the
disk/file system by running an Error Checking utility quarterly. |
There are many commercial utilities
that will help keeping computer disk storage device healthy. In
general I do not like to load any third party add-on software but in
this case, if you are not comfortable using Operating System’s
build-in utilities, it may be beneficial to go with a brand name
disk storage management utility.
By
Benson Yeung, Senior Partner

Benson Yeung Biography

Back to Top 
Information Request Form
|
 |