hdparm hard drive timings. How do I find the bottleneck?
Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
hdparm hard drive timings. How do I find the bottleneck?
Ok this is somewhat pissing me off. I bought a super server (ok for me super) and it's hard drive speeds are ~60 MB/sec. Which I thought was fast.
My parents buy a new computer from futureshop which is slower than my server and they get almost double the speed.
Code:
[root@butterfly ~]# hdparm -tT /dev/sda
/dev/sda:
Timing cached reads: 2250 MB in 2.00 seconds = 1125.65 MB/sec
Timing buffered disk reads: 338 MB in 3.00 seconds = 112.52 MB/sec
I'm jealous. The drives on both computers are SATA so the theoretical limit is 3G/sec. How to I figure out which component is slowing me down? Is there software out there to test controller speeds? Bus speed? or whatever?
There could be a lot of causes, from a cheap motherboard to a kernel problem. But you haven't really given enough information (on either machine) to determine what is really causing the issue.
I will say that 60 MBps is certainly not a very good speed for SATA. But again, it depends on the RPMs of the drive, which SATA version it is using, etc, etc. There are many variables.
There could be a lot of causes, from a cheap motherboard to a kernel problem. But you haven't really given enough information (on either machine) to determine what is really causing the issue.
I will say that 60 MBps is certainly not a very good speed for SATA. But again, it depends on the RPMs of the drive, which SATA version it is using, etc, etc. There are many variables.
That's what I'm asking is what information would you need. What variables do I look at? Where do I start, and what do I use to find out?
Ok this is somewhat pissing me off. I bought a super server (ok for me super) and it's hard drive speeds are ~60 MB/sec. Which I thought was fast.
My parents buy a new computer from futureshop which is slower than my server and they get almost double the speed.
Code:
[root@butterfly ~]# hdparm -tT /dev/sda
/dev/sda:
Timing cached reads: 2250 MB in 2.00 seconds = 1125.65 MB/sec
Timing buffered disk reads: 338 MB in 3.00 seconds = 112.52 MB/sec
I'm jealous. The drives on both computers are SATA so the theoretical limit is 3G/sec. How to I figure out which component is slowing me down? Is there software out there to test controller speeds? Bus speed? or whatever?
As far as I know, 60 Megabytes per second (MB/sec) is still an OK speed for a regular 7200 RPM ATA or SATA hard drive. I have a 10,000 RPM Western Digital Raptor SATA drive from a couple of years ago that hdparm measures at about 68 MB/sec. In comparison, several of my 7200 RPM drives get from 30 MB/sec to 60 MB/sec depending on age.
The measurement of 112.52 MB/sec seems a bit suspicious to me, since I don't think many single consumer hard drive can sustain that kind of read speed yet. It's certainly possible using two drives and striping or fast Flash memory. Some of the newest large hard drives might be capable of that too.
What models does "hdparm -i /dev/sda" show? Try running "hdparm -FtT /dev/sda" which might give more accurate results if the drive has a large built in cache and "hdparm -tF --direct /dev/sda" which can sometimes give a better measurement of the raw drive's read speed.
Be careful reading speeds in specifications, since they can use very different units. SATA can use a low level signalling rate of 1.5 Gigabits per second (1.5 Gbps) or 3 Gigabits per second (3 Gbps). Because of the way it encodes data, that translates to roughly a maximum of 150 Megabytes per second (150 MB/sec) or 300 Megabytes per second (300 MB/sec). For single drives, it rarely makes much difference yet which SATA speed you use, since few get close to 150 MB/sec.
Maximum read speed is only one measurement of performance of a hard drive. Seek times and write speeds can be just as important on a server, if not more so. Try some comparisons unpacking or creating a tarball or use a benchmark tool like bonnie++ to get more useful comparisons.
I always thought sata was faster than pata but i was slapped in the face with the results of my test.
80gb sata
320gb pata
320 was getting +15-30MB faster reads/writes and cacheing.
Then I was thinking that maybe it was the drivers problem but it is impossible for me to figure that out.
/dev/sdd was about 98% idle during the test. Can't shut the server down for this at the moment but when I did the tests earlier it was about 65-70 MB/sec.
So, MikeyCarter, /dev/sd{d,e,f} are the drives you're concerned about right now? As luck would have it, I have the exact same model (WDC WD2500KS-00MJB0) in one of my machines:
I'm not sure why my hdparm output indicates it's running in udma6 mode and your /dev/sdd only goes up to udma5, but as you can see, the speed measurements are very close. As I bought the drive for a low price a couple of years ago, the speed seems quite acceptable to me. I don't think there's anything specifically wrong with your system. I've noticed that running hdparm with --direct is a lot more sensitive to other loads on the disc, so maybe "hdparm -FtT" is better after all.
http://www.storagereview.com/WD2500KS.sr?page=0%2C1 seems to corroborate a maximum sustained read speed of about 61 MB/sec for a WD2500KS. I'm pretty sure hdparm just reads from the beginning of the disc. If it read near the end, you'd see much lower speeds. That's one reason to look at more than just hdparm's speed test for an overall comparison.
I'm quite surprised the WD3200AAKS in "Mom's computer" performed so well. The speed you measured is only a bit more than shown here: http://www.anandtech.com/storage/showdoc.aspx?i=3236. I guess the perpendicular magnetic recording (http://en.wikipedia.org/wiki/Perpend...etic_recording) has improved read performance a lot more than I had realized. It seems that inexpensive 7200 RPM drives now outperform my 10,000 RPM Raptor in sequential read, if not seek time.
So, in conclusion, I'll say again that I don't think there's anything wrong with your server, as the drive seems to be performing as expected. If you want better sequential read speeds, you'll probably have to get a newer drive with PMR or use striping over your three WD2500KSs. However, test the actual performance in tasks similar to how you use it before spending any money, as sequential read speed is not always the most important factor.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.