« Upgrading Symantec Corporate Edition Antivirus Servers | Main | Funny Snowman »

Comments

Jim

Great point. Love to see vendors act on your suggestion.

Right now I have two computers under my desk connected via KVM switch so that when I tie one up with a long-running task like you're describing, I can bounce to the other. With the KVM, shared drives through Windows, and a shared clipboard (using a freeware program called Spike), it's *almost* like getting the benefits you'd like to see built into every computer -- though twice as expensive and a lot bulkier.

Definitely one area that could use improvement --and that could really deliver benefits to users (as opposed to the MHz races that made good marketing copy but really didn't really deliver benefits to users).

- Jim

John

Wow, that's an easy one.

Answer: IDE.

The IDE/ATA drive protocol (http://www.ata-atapi.com/hist.htm) is very low level and most IDE controllers are very stupid, so the CPU has to do most of the work and waiting in the drivers. This, of course, means your machine is sitting in kernel, possibly blocking other things from happening. Worse, because of the master/slave mechanism in a single chain, the master can block the slave from doing work, so if a slave involved in an operation, you're just out of luck. And for all this dumbness you get to waste an IRQ for just two drives.

The reason IDE is what it is, is cost. A more complex and faster protocol requires more electronics on both the controller and drive. More drives per chain requires more wires on the cable, which means more work and fancier cables to beat electrical interference. A faster rotational rates to lower access times requires more expensive machineing, better bearings, more thought to cooling, etc.

SATA (http://www.ata-atapi.com/sata.htm) is an improvement but still not so good. Same basic protocol, but faster over differentially signalled twisted pairs. Cost is still a driver, so the drive components are less than what they could be. The idiots didn't spec that the cables should be shielded so while the differentially signalled twisted pair provides some noise attenuation, there isn't really enough for external use.

If you get a decent SCSI controller and drives (or one of the Promise controllers that use IDE drives but look like a SCSI controller) you will find your machine no longer crawls when doing heavy disk operations. And as an added bonus, you can put either 7 or 15 (depending if it's narrow or wide SCSI) on a controller, using only one IRQ in the process.


PS:
Except for Seagate, most drive manufacturers offer lesser warranties on their IDE drives as they are manufactured to lower tolerances. A typical IDE drive is designed for about a 3 year life woth a 80% duty cycle spinning at 7200 rpm. A typical SCSI drive is designed to a 5 year life running 24x7 at 10000+ rpm. This is part of the reason that you have to pay a premium for SCSI hardware.

Alex Scoble

Actually, you can see during an intensive disk access process that the CPU is used very little at all. Most the control for the IDE bus is handled by the chip on the motherboard (northbridge or southbridge, can't remember which).

Oh and using SCSI disks in a system does not help at all in what I'm talking about. I've had 100% SCSI systems and they still did the same thing for intensive processes like CD to CD copying.

Also, it's just about impossible to build a 100% SCSI system nowadays as you will have a very hard time finding a fast SCSI CD-ROM drive or CD-RW. All the major manufacturers have switched to ATAPI/SATA.

Not to mention that for most real world desktop applications/functions IDE drives actually do better than their SCSI counterparts. SCSI drives are optimized for use in servers where access is much more random vs use in desktops where access is much more sequential.

RAID arrays don't help for real world desktop use either. For all you powergamers out there, don't waste your time or money on RAIDs, you will get zero performance benefit with them and will most likely decrease the performance of most of what you do.

Having said that, I think it does have to do with both the IDE bus and the memory bus on the PC.

John

Odd. My all SCSI system handles CD to CD copies just fine (assuming the CD-R blanks don't suck.) On a PIII 600 no less. While copying files over the network and doing development in a Smalltalk image. Of course, that is using an ancient version of RedHat (7.3) not Windows. I wonder if it's just dumb drivers that are locking out kernel access while waiting for the drive to complete the last command?

Verify your Comment

Previewing your Comment

This is only a preview. Your comment has not yet been posted.

Working...
Your comment could not be posted. Error type:
Your comment has been saved. Comments are moderated and will not appear until approved by the author. Post another comment

The letters and numbers you entered did not match the image. Please try again.

As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.

Having trouble reading this image? View an alternate.

Working...

Post a comment

Comments are moderated, and will not appear until the author has approved them.

My Photo

Top Links

May 2009

Sun Mon Tue Wed Thu Fri Sat
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

Useful Links

Blog powered by TypePad
Member since 01/2004