HowTo: Linux Check IDE / SATA Hard Disk Transfer Speed
November 10, 2010 by: upa_kid
So how do you find out how fast is your hard disk under Linux? Is it running at SATA I (150 MB/s) or SATA II (300 MB/s) speed without opening computer case or chassis?
You can use the hdparm command to check hard disk speed. It provides a command line interface to various hard disk ioctls supported by the stock Linux ATA/IDE/SATA device driver subsystem. Some options may work correctly only with the latest kernels (make sure you have cutting edge kernel installed). I also recommend to compile hdparm with the include files from the latest kernel source code. It provides more accurate result.
Measure Hard Disk Data Transfer Speed
Login as the root and enter the following command:
$ sudo hdparm -tT /dev/sda
OR
$ sudo hdparm -tT /dev/hda
Sample outputs:
/dev/sda:
Timing cached reads: 7864 MB in 2.00 seconds = 3935.41 MB/sec
Timing buffered disk reads: 204 MB in 3.00 seconds = 67.98 MB/sec
For meaningful results, this operation should be repeated 2-3 times. This displays the speed of reading directly from the Linux buffer cache without disk access. This measurement is essentially an indication of the throughput of the processor, cache, and memory of the system under test. Here is a for loop example, to run test 3 time in a row:
for i in 1 2 3; do hdparm -tT /dev/hda; done
Where,
* -t :perform device read timings
* -T : perform cache read timings
* /dev/sda : Hard disk device file
To find out SATA hard disk speed, enter:
sudo hdparm -I /dev/sda | grep -i speed
Output:
* Gen1 signaling speed (1.5Gb/s)
* Gen2 signaling speed (3.0Gb/s)
Above output indicate that my hard disk can use both 1.5Gb/s or 3.0Gb/s speed. Please note that your BIOS / Motherboard must have support for SATA-II.
dd Command
You can use the dd command as follows to get speed info too:
dd if=/dev/zero of=/tmp/output.img bs=8k count=256k
rm /tmp/output.img
Sample outputs:
262144+0 records in
262144+0 records out
2147483648 bytes (2.1 GB) copied, 23.6472 seconds, 90.8 MB/s
GUI Tool
You can also use disk utility located at System > Administration > Disk utility menu.
Read Only Benchmark (Safe option)
Then, select > Read only:
Fig.01: Linux Benchmarking Hard Disk Read Only Test Speed
Fig.01: Linux Benchmarking Hard Disk Read Only Test Speed
The above option will not destroy any data.
Read and Write Benchmark (All data will be lost so be careful)
Visit System > Administration > Disk utility menu > Click Benchmark > Click Start Read/Write Benchmark button:
Fig.02:Linux Measuring read rate, write rate and access time
Fig.02:Linux Measuring read rate, write rate and access time
Have you found this script useful? Please support author by PayPal donation.- Linux Find SCSI Hard Disk Model, Serial Number, Size, and Total Sectors Information
- How do I find out Linux Disk utilization?
- Ubuntu Linux Live CD: Save data & desktop information on USB device
- Read ISO Image File In Linux
- Move Google Chrome Cache to a ram disk and speed up page loading
- Linux smartd SATA drives support
- How do I find out Linux Resource utilization to detect system bottlenecks?
- Linux: Monitor Hard Disks Temperature With hddtemp
- How do I write CD at Debian Linux command prompt
- Linux hard drive benchmark & bottleneck testing software suite for performance