Sign in to follow this  
pubidcam

Copy speeds are low, less than 2MB/s!

Recommended Posts

Either copying of files got really slow, or I started to pay more attention to it recently.

I know that most of you will think that my disks are fragmented, or that DMA is dissabled, or that there are aplications running in the background, viruses, adware etc. but it is not the case, and that is why I'm writing this. Here is what is puzzling me...

1. Seagate ST3160023A, ATA-100, 7200rpm, 160GB disk, with 8MB cache memory, that uses NTFS.

2. IBM DTLA-305010, ATA-100, 5400rpm, 20GB disk, with 380KB cache memory, that uses FAT32.

When I copied one big file from CD to HDD, I got same transfer speed result for both

disks - 5.50MB/s. That is probably because CD was written at that speed.

Then I hooked up Seagate as primary master, and IBM as secondary master, no optical drive.

When I copy that file from old and small IBM, to new and big ST, I get almost 21MB/s.

(I was getting same figures when I was copying big files from HDS722516VLAT80 to ST3160023A.)

When I copy from ST to IBM, I get 14MB/s.

When I copy from one ST partition to another I'm happy if I get 10MB/s.

When I copy from one IBM partition to another I get less than 2MB/s!!! (1.48MB/s in this particular case when I used a stopwatch). Same is when I try it in Windows 98SE. The only difference is that Win98SE shows 100% CPU usage, while CPU usage oscillate in Windows XP, but never goes beyond 30%.

CPU is AMD Duron @ 700MHz, chipset is infamous VIA Apollo KT133A, and I have one PC133 256MB SDRAM stick. I always make one partition where I put static 768MB swap file, or page file as it is called in WinXP.

I'm revealing this data because I managed to persuade a guy to let me copy that file from CD to his HDD - Maxtor MX6L160MO, SATA, 7200rpm, 160GB disk with 8MB cache size memory, that uses NTFS.

When I copied that file from one Maxtor partition to another, I got 40MB/s!!! Now, he has a brand new rig, AMD64 socket 939, nForce4 chipset... but also 256MB RAM, although DDR. I'm yet to convince him to let me open his case, so I could put my HDDs and test them.

Until then, I can't be sure about the reason for low copying speeds, especially on IBM. Are the disks themselves causing it, or is it the chipset, interface, RAM...?

BTW, I tried it with freshly installed Windows and different cables, and it was the same.

What are your ideas about this?

Edited by pubidcam

Share this post


Link to post
Share on other sites
I know that most of you will think that my disks are fragmented, or that DMA is dissabled, or that there are aplications running in the background, viruses, adware etc. but it is not the case, and that is why I'm writing this.

Device Manager in Windows shows that DMA is ENABLED, and I even rechecked it in BIOS. Under 'Integrated Peripherals' PIO and UDMA are set to AUTO. UDMA can only be set as AUTO or Disabled, while PIO can be set as AUTO, Mode 0, 1, 2, 3, or 4.

Share this post


Link to post
Share on other sites

I forgot to put 40MB/s, I got from MAXTOR, in bold in my original post. This is what perplex me really. It can't be that Seagates' drive, although not SATA, is 4 times slower, and 5 year old IBM 20 times slower. Can it?

Someone here surely knows what copying speed can be achieved with ST3160023A (until I get to test it on another machine).

Bikeman, my gut feeling is telling me exactly that...

I have testing software on bootable floppy for HDD and RAM. Is there something like that for chipsets?

Share this post


Link to post
Share on other sites

5 year old IBM can certainly be way slower. My 8GB Maxtor got about 15-20MB/s sustained rate. Much less for actual use. My 7200.9 does about 65MB/s. Also, the write speeds for the IBM could be really slow. It has to read, then write, then read, then write etc. 2MB/s is however, a tad TOO slow so something must be wrong, I just can't think of what. The small amount of cache could be the cause, cache helps file copying quite a bit, I believe.

Share this post


Link to post
Share on other sites
Now, he has a brand new rig, AMD64 socket 939, nForce4 chipset... but also 256MB RAM, although DDR.

haha, brand new computer with 256MiB of RAM :P I just got the same computer with 1GiB of RAM (browsing at lightning speed of 56kps).

I just want to laugh at him, I don't really know why you have a low transfer rate though :-)

Share this post


Link to post
Share on other sites
Either copying of files got really slow, or I started to pay more attention to it recently.

I know that most of you will think that my disks are fragmented, or that DMA is dissabled, or that there are aplications running in the background, viruses, adware etc. but it is not the case, and that is why I'm writing this. Here is what is puzzling me...

1. Seagate ST3160023A, ATA-100, 7200rpm, 160GB disk, with 8MB cache memory, that uses NTFS.

2. IBM DTLA-305010, ATA-100, 5400rpm, 20GB disk, with 380KB cache memory, that uses FAT32.

When I copied one big file from CD to HDD, I got same transfer speed result for both

disks - 5.50MB/s. That is probably because CD was written at that speed.

Then I hooked up Seagate as primary master, and IBM as secondary master, no optical drive.

When I copy that file from old and small IBM, to new and big ST, I get almost 21MB/s.

(I was getting same figures when I was copying big files from HDS722516VLAT80 to ST3160023A.)

When I copy from ST to IBM, I get 14MB/s.

When I copy from one ST partition to another I'm happy if I get 10MB/s.

When I copy from one IBM partition to another I get less than 2MB/s!!! (1.48MB/s in this particular case when I used a stopwatch). Same is when I try it in Windows 98SE. The only difference is that Win98SE shows 100% CPU usage, while CPU usage oscillate in Windows XP, but never goes beyond 30%.

CPU is AMD Duron @ 700MHz, chipset is infamous VIA Apollo KT133A, and I have one PC133 256MB SDRAM stick. I always make one partition where I put static 768MB swap file, or page file as it is called in WinXP.

I'm revealing this data because I managed to persuade a guy to let me copy that file from CD to his HDD - Maxtor MX6L160MO, SATA, 7200rpm, 160GB disk with 8MB cache size memory, that uses NTFS.

When I copied that file from one Maxtor partition to another, I got 40MB/s!!! Now, he has a brand new rig, AMD64 socket 939, nForce4 chipset... but also 256MB RAM, although DDR. I'm yet to convince him to let me open his case, so I could put my HDDs and test them.

Until then, I can't be sure about the reason for low copying speeds, especially on IBM. Are the disks themselves causing it, or is it the chipset, interface, RAM...?

BTW, I tried it with freshly installed Windows and different cables, and it was the same.

What are your ideas about this?

I have now re-read your post and it is now sinking better in my mind what you are witnessing:

Your present computer is holding you back, this is assured With your PC133 you are limited in memory bandwidth, your processor is also now holding you back compared to an Athlon64.

You have to face this fact that newer hard-disks are now slowed down by the hardware platform you are installing them on.

Also with the above posted link in my previous post you can judge that the results you are getting are relatively sound, considering the hardware platform you have them in.

I have gone through this in previous years, upgrading one part figuring I would get the performance boost I expected from reviews I 'd see on the web and then only to benchmark the new hardware in my old rig and seeing results that were crippled by my old platform.

Share this post


Link to post
Share on other sites
meanie: haha, brand new computer with 256MiB of RAM I just want to laugh at him
Yeah, I know. It's his first rig, and he didn't ask me for any advice.
Could you please just clarify whether it transfers only at 2MB/s when you transfer files from the IBM HD to a different part of the IBM HD.
EXACTLY. English isn't my native language, so maybe my original post isn't coherent. To add to those figures in bold that my HDS722516VLAT80 copies "to itself" at 13.76MB/s

Well...

I'm not comfortable carrying HDDs around, especially when it's cold and slippery, but I did check little IBM on another machine, afore mentioned AMD64.

We unhooked his DVD burner and connected my 20Gig IBM, OS was booted up from his MX6L160MO, and these are the figures:

399MB file took 218 seconds to copy from one partition to another at my place, and AMD64 did it in... 218 seconds. Later, on my rig, it did it in 187 seconds, and I'm not sure why (exactly same paths involved in both occasions).

So... this indicates that Seagate and Hitachi would make equal times on these, diametrically different, rigs. Grain of doubt still exist though, especially when jamesbzx8 wrote this:

I have now re-read your post and it is now sinking better in my mind what you are witnessing:

Your present computer is holding you back, this is assured With your PC133 you are limited in memory bandwidth, your processor is also now holding you back compared to an Athlon64.

You have to face this fact that newer hard-disks are now slowed down by the hardware platform you are installing them on.

Also with the above posted link in my previous post you can judge that the results you are getting are relatively sound, considering the hardware platform you have them in.

I have gone through this in previous years, upgrading one part figuring I would get the performance boost I expected from reviews I 'd see on the web and then only to benchmark the new hardware in my old rig and seeing results that were crippled by my old platform.

So don't be amazed if in a few months you see this topic revived with numbers from more modern disks I have...

Since I can't find any sense in manufacturers' specifications, I invite everyone who is curious and wishes to spend few minutes, to post real world numbers from their disk(s). Just copy something and time it:)

Share this post


Link to post
Share on other sites

Thank you very much pubidcam for getting back to me. Why I asked that question was for an obvious reason. That data transfer rate of 2MB/s is right on target for your case. Let me explain why. When you copy data from one drive to a different drive, simultaneous things are happening at one time. While the one drive is reading the data, the other drive is writing that same data. Therefore the speed will usually be as fast as the slowest hard drive in the system. Whether it be the drive that is reading, or the one that is writing, but in most cases hard drives writes are usually slower than their reading (45MB/s read average vs. say 30MB/s write average), but if you are transferring data from an older drive to a newer one, then obviously the read will be the limiting factor, as long as the read is less than the write speed of the newer drive.

Now in your case, what is happening is that it is not your system (motherboard, processor, memory, etc...) that is the limitation, but in fact the hard drive itself. As in the scenario above, that is the preferred situation of having to transfer data. In your situation, and for the most part with mechanical hard drives, when transferring data between partitions or places on that same hard drive, it will always be much slower than transferring to another drive.

Why? The answer is simple. As stated, when transferring data to a different drive simultaneous things happen at the same time. Where in a single hard drive scenario, the same hard drive is reading AND writing. This slows the hard drive down tremendously. Because as you should know, the modern and most common type of hard drive is mechanical, with metal platters inside the drive that read and write much like a CD does, only that in a hard drive data is written from the outside inward, where in a CD, it is the opposite. With this said, as you are copying (reading) data from the outer more parts of the platter (or vice versa, depending on where the data is located and how much of the drive space is used), at the same time the drive is also writing. This causes the hard drive to slow down a lot, because as the actuators (devices used in a hard drive to read and write) are at one part of the drive (assuming that you have the disk somewhat full and the data you are copying at the beginning of the hard drive), the actuators have to move away from the original spot on the platter of where it was reading the data to a more further spot to write and then back again to read. And it does this repeatedly, as you can imagine, this is not efficient or fluent. It's a start and stop process that happens repeatedly. And being such an old drive, it does not have NCQ or TCQ which would help in a scenario like this or a fragmented drive (where the data reading or writing is spread out and not next to each other). Where in a two drive situation, one drive is reading (constantly), and the other drive is writing (constantly), which makes it smoother and faster than a single drive transfer.

What plays into making your transfer speed slow is basically the rotational speed of the drive (RPM wise), internal drive cache (in your case a very small amount, 380KB), and platter size. So as you can see, the specs on the IBM drive are very low in terms of speed and up-to-date. It is no surprise that the IBM drive would get that slow of a speed. That is actually right around where you should be for that type of data transfer on that old of a drive.

I hope this answers your question and helps you, sorry that it is kind of long, I wanted to explain it as complete as I could in words and as simple as I could.

Mike

Share this post


Link to post
Share on other sites
I hope this answers your question and helps you, sorry that it is kind of long, I wanted to explain it as complete as I could in words and as simple as I could.
MIKE, thank you very much for your answer and time you've spend typing it. All good explanations are simple - if only teachers and professors could explain things like you did.

The reason I'm so slow with this response is crazy schedule and the fact I read this:

Mike: in most cases hard drives writes are usually slower than their reading (45MB/s read average vs. say 30MB/s write average)
This made me wonder how I got that 40MB/s from MX6L160MO. I'm not sure what exactly happened, what exactly we copied and where, did I use my stopwatch, did I witnessed this, or my mind played few tricks with me... I annoyed my buddy again, and we defragmented his disk and copied one 697MB file from one part of the disk to another. It took 36.5 seconds, which is roughly 19MB/s. This figure is more realistic, and I'm still not sure why I said it was 40MB/s (maybe it was just 40s), but I'm sure that it's completely my fault. It's kind of embarassing, and I apologise for giving false data.

Still, I recently copied (big defragmented files) 105,843MB from HDS722516VLAT80 to ST3160023A in 4624 seconds which is 22.89MB/s. This is slightly better than MX6L160MO is writing to itself. These disks are ATA-100, and they're older than MX6L160MO SATA, but does these figures sound right?

Cache size is same, but I always thought that cache is useful for only reading/writing files smaller than 8MB. Please correct me if I'm wrong.

Mike: the modern and most common type of hard drive is mechanical, with metal platters inside the drive that read and write much like a CD does, only that in a hard drive data is written from the outside inward, where in a CD, it is the opposite. With this said, as you are copying (reading) data from the outer more parts of the platter (or vice versa, depending on where the data is located and how much of the drive space is used), at the same time the drive is also writing. This causes the hard drive to slow down a lot, because as the actuators (devices used in a hard drive to read and write) are at one part of the drive (assuming that you have the disk somewhat full and the data you are copying at the beginning of the hard drive), the actuators have to move away from the original spot on the platter of where it was reading the data to a more further spot to write and then back again to read. And it does this repeatedly, as you can imagine, this is not efficient or fluent. It's a start and stop process that happens repeatedly.

You can imagine, from seeing what hardware I'm using, that I'm not a complete beginner when it comes to PCs, but there are still some things I'm not sure about...

Can someone please clarify this... I read that in a disk with two platters and four read/write heads, all heads move parallely. Is that right? I always thought that they act independently of each other. Also, I know that C: partition is created on the outer edges of a disk, but is it created on all four sides of two platters, or is it just on one side of a single platter?

Share this post


Link to post
Share on other sites

You are thinking into this matter too deeply. Keep it simple!

Mike: in most cases hard drives writes are usually slower than their reading (45MB/s read average vs. say 30MB/s write average)

This was a hypothetical situation, those numbers no way represent an actual hard drive and I used those to show how read speed is in most cases is faster than write speed.

Still, I recently copied (big defragmented files) 105,843MB from HDS722516VLAT80 to ST3160023A in 4624 seconds which is 22.89MB/s. This is slightly better than MX6L160MO is writing to itself. These disks are ATA-100, and they're older than MX6L160MO SATA, but does these figures sound right?

Yes, that does sound right. I am afraid you might be missing the point of my original post. When copying data from one drive to another drive, this method will always be faster than copying data from one part of a drive to the same drive. That is of course if you are using drives of the same era and would not be true if you were using two older drives say from the early 90's comparing them to one of the year 2005.

Bottom line, that number sounds right when copying data from two fairly older drives to the other.

Can someone please clarify this... I read that in a disk with two platters and four read/write heads, all heads move parallely. Is that right? I always thought that they act independently of each other. Also, I know that C: partition is created on the outer edges of a disk, but is it created on all four sides of two platters, or is it just on one side of a single platter?

That is correct also, the heads are on a single actuator arm which moves as one unit. In a two platter drive there are four heads since the platters are double-sided. All four heads are attached to the same actuator arm meaning that if one head moves, they all move since the arm is moving.

C:\ would also be created on the outter edges of all the sides on all the platters. Don't think too deeply into that. All it does is break the data up into different segments. If it was not done this way, hard drives would be a lot slower since one head might be in the right location on the top platter, but the bottom one is not. It would have to wait for the actuator to move and for the disk to rotate until it gets into the correct position, and then have to repeat this process again. That would be a major slow down. So all you need to know is that all the heads write data respectively to the platter (that is start and end at the same position, just on different platters or sides of the platter).

Share this post


Link to post
Share on other sites
Mike: You are thinking into this matter too deeply. Keep it simple!
Yes, I do tend to "split hairs", but that's the only way I can understand something completely.
Mike: Bottom line, that number sounds right when copying data from two fairly older drives to the other.

That is correct also, the heads are on a single actuator arm which moves as one unit. In a two platter drive there are four heads since the platters are double-sided. All four heads are attached to the same actuator arm meaning that if one head moves, they all move since the arm is moving.

C:\ would also be created on the outter edges of all the sides on all the platters. Don't think too deeply into that. All it does is break the data up into different segments. If it was not done this way, hard drives would be a lot slower since one head might be in the right location on the top platter, but the bottom one is not. It would have to wait for the actuator to move and for the disk to rotate until it gets into the correct position, and then have to repeat this process again. That would be a major slow down. So all you need to know is that all the heads write data respectively to the platter (that is start and end at the same position, just on different platters or sides of the platter).

THANKS for your, simple and understandable (down to Earth) answers, and thanks again for your valuable time in explaining technical things to a complete stranger.

Share this post


Link to post
Share on other sites

The 100% CPU spikes happened to me too recently with a MaxLine III. It started throwing CRC errors, performance went into the toilet, drive-to-drive operations were reasonably quick but disk-to-disk operations for the Maxtor were abysmal. I interpreted this as a drive failure that sent XP sideways.

I ended up reinstalling the PC anyway (wanted to) and did a low-level format of the Maxtor in the process, and now all is well.... FYI

Share this post


Link to post
Share on other sites
Mike@ComputerTechnical: Not a problem, I enjoy sharing my knowledge and helping people! I hope that answers all your questions you may have! If not, let me know!

Mike

Since you're asking for it :) Does 8MB cache size means that, in case of copying files from one part of the disk, to another part of the same disk, head reads 8MB data chunk, writes it, then again reads 8MB? This make sense to me, but I read that cache is only useful for files smaller than 8MB.
phoenix: I ended up reinstalling the PC anyway (wanted to) and did a low-level format of the Maxtor in the process, and now all is well.... FYI
I never did a low-level format. What exactly is it, and how would I benefit from it? For Windows 98SE I do normal format c: from boot up floppy, and for XP I never had the need to do it. I just made the whole disk raw again once, and made different partitions settings. I'm going off topic here, but I've heard that disks shouldn't be formated under Windows XP. Is it true?

Share this post


Link to post
Share on other sites
meanie: haha, brand new computer with 256MiB of RAM I just want to laugh at him
Yeah, I know. It's his first rig, and he didn't ask me for any advice.

Since I can't find any sense in manufacturers' specifications, I invite everyone who is curious and wishes to spend few minutes, to post real world numbers from their disk(s). Just copy something and time it:)

I will do that with my rig, but I can't right now. I could do it with this ancient POS, but it has a U5 Seagate, the seeks are 14ms :blink: I should have my "good" rig back in a week or 2, I have to send the PSU out.

Share this post


Link to post
Share on other sites
The only difference is that Win98SE shows 100% CPU usage, while CPU usage oscillate in Windows XP, but never goes beyond 30%.

What are your ideas about this?

100% CPU usage in 98SE sounds to me like something is throwing the computer (and consequently the drive) into DOS-compatibility (PIO) mode. (Many DOS programs, not written for a multi-tasking environment, will peg CPU usage in Win98.) Years ago, I had an old IBM drive (either a 34GXP or a 40GV, I can't remember) that would be thrown into PIO mode every time I ran certain DOS programs. Once in PIO mode, it would stay in PIO mode for all operations (even after the DOS programs were terminated), even Windows operations, until it went through a power-on reset (not just a reboot, but a true removal of power and spin down). After the power-on reset, transfer speeds would be fine again (as long as I didn't run the DOS programs).

This would happen even though DMA/ATA was enabled/supported in the BIOS.

Can we assume you're not trying running DOS programs before you copy, or trying to copy with DOS programs?

Share this post


Link to post
Share on other sites
Since you're asking for it :) Does 8MB cache size means that, in case of copying files from one part of the disk, to another part of the same disk, head reads 8MB data chunk, writes it, then again reads 8MB? This make sense to me, but I read that cache is only useful for files smaller than 8MB.

Yes, it works exactly like that, to say in the simpliest terms. The cache allows the hard drive to read ahead (of the data it will write) 8MB in this situation. It then writes its 8MB, then goes back to read ahead 8MB more, and so on.

Share this post


Link to post
Share on other sites

eh, that's not how a cache works. A cache keeps most recently used data in memory so the data don't have to be read again from a slower device. It won't read and write in 8MB chunks ... A pretty good description here:

http://computer.howstuffworks.com/cache.htm

Anyway, I was interested in doing the test read speeds. And I use the 3 drives in my system.

WD: Western Digital WD800JB (80GB - 2MB buffer)

HT1: Hitachi T7K250 (250GB - 8MB buffer)

HT2: Hitachi 7K250 (160GB - 8MB buffer)

They are 7200RPM. I transfer different 200MB files around, and the arrows point to the destination.

WD->WD: 8MB/s

HT1->HT1: 23MB/s

HT1->WD: 33MB/s

WD->HT1: 25MB/s

HT2->HT1: 55MB/s

Seeing my old hard drive is that slow, yours transferring at 2MB/s is kinda reasonable.

Share this post


Link to post
Share on other sites
eh, that's not how a cache works. A cache keeps most recently used data in memory so the data don't have to be read again from a slower device. It won't read and write in 8MB chunks ... A pretty good description here:

http://computer.howstuffworks.com/cache.htm

Anyway, I was interested in doing the test read speeds. And I use the 3 drives in my system.

WD: Western Digital WD800JB (80GB - 2MB buffer)

HT1: Hitachi T7K250 (250GB - 8MB buffer)

HT2: Hitachi 7K250 (160GB - 8MB buffer)

They are 7200RPM. I transfer different 200MB files around, and the arrows point to the destination.

WD->WD: 8MB/s

HT1->HT1: 23MB/s

HT1->WD: 33MB/s

WD->HT1: 25MB/s

HT2->HT1: 55MB/s

Seeing my old hard drive is that slow, yours transferring at 2MB/s is kinda reasonable.

He was talking about file copies. So duplicating files on a single physical drive. I don't think the HSWs article explains how cache works in that situation, does it?

Share this post


Link to post
Share on other sites
The article explains how caches work. Doesn't matter what the situation is.

Why wouldn't it matter? I understand that, usually, the cache tries to prevent physical disk access, but in the case of file copying, it would be fast to read 8MB into cache, then write the 8MB out, read 8MB in, write 8MB out etc.

If it doesn't work this way, then that's fine, but file copying is indeed a unique disk activity. Most of the time, things are read from the drive and loaded to RAM.

If anyone can explain why, during file copies, the drive doesn't use it's cache to swap reads and writes, that would be nice.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this