Slashdot Mirror


Single IDE vs Dual IDE?

jrsimmons asks: "I'm running performance tests on IDE interface configurations for my company. I've discovered that disk to disk I/O is significantly faster (in the realm of 30%-40%) when only a single IDE interface is active versus when two IDE interfaces are active. This is significant as our servers are used to provide Point-of-Sale availability for registers in the retail environment, which is heavily dependent on disk i/o performance for efficiency. I have run the tests under both Windows and our retail OS (sorry, no Linux) with similar results. What are some possible explanations for the detrimental effect the second active ide controller has on disk I/O speed?" Has anyone measured this deficiency on Linux and other Unices?

7 of 61 comments (clear)

  1. Sounds strange by Outland+Traveller · · Score: 5, Interesting

    Your results sound strange to me.

    For two disks, you should get the best results with both disks configured as masters on two different IDE buses.

    If you're not seeing that, I'd check that you have the correct drivers/optimizations for your IDE chipset enabled. You also might want to check IRQ allocation to make sure there's no strange conflicts . Check your windows (NT/2000) event log to make sure there's no strange IDE timeouts indicating hardware issues. If you still see the problem you should try your test on a different hardware platform (motherboard/controller combo).

    From your description, however, you might want to go with a raid technology such as RAID 1, RAID 5, or raid 1+0. It will offer much better redundancy and possibly improved performance.

    1. Re:Sounds strange by rcw-work · · Score: 4, Informative
      Your results sound strange to me.

      Not to me. I've seen the same 30-40% increase copying data between two disks on the same IDE chain as opposed to the exact same two disks on different IDE chains ever since UDMA support came out.

  2. My "benchmark" by Per+Wigren · · Score: 4, Informative

    I use software RAID under Linux (striping only).
    I get almost 100% increase in speed if I have the disks configured as master on two separate controllers instead of master+slave on one.

    --
    My other account has a 3-digit UID.
  3. Disk I/O performance by nadie · · Score: 4, Insightful

    If you are running I/O intensive applications, there is no subsitute for SCSI. IDE is still too braindead to do the job effectivly with decent interactive, multitasking performance. Don't waste your companies time on fiddling with consumer level hardware in a professional environment.

    How much is your time worth? How much is this application worth to your company? In a professional server, SCSI is not expensive.

  4. I'd guess... by Polo · · Score: 4, Interesting

    I'd guess one or both of the drives is not in DMA mode. It's probably configured as PIO mode.

    This is a pretty common mistake - if the drive is in PIO mode, all i/o goes through the cpu.

  5. yeesh... by Anonymous Coward · · Score: 4, Informative
    ...i write a long reply wherein i smack you with a cluestick in a heavy-handed manner. let's say that you have a hard disk set as a primary master. let's add another hard disk to that primary controller as a slave. then let's add another to the secondary master. and now another would be added to as secondary slave.

    the two devices on the primary controller could not both be transferring data at the same time, so performance would be hit severely if you were reading or writing to both simultaneously regardless of whether or not the disks were transferring data between each other or some other device on the secondary controller.

    when data is transferred between a device on the primary and a device on teh secondary controller there is no performance hit that is caused by the lack of ability to read or write simultaneously; i.e., you can read or write at the same time if each device is on a different controller, but not on the same controller.

    now in your case what i think you are saying is that you notice poor performance even in this scenario; i.e., transferring data across two controllers. the reason for this is that IDE is severely CPU dependent. What kind of CPU are you running on these machines? IDE's CPU dependence is what makes it STILL a poor substitute for i/o heavy use when compared with SCSI. SCSI devices are not CPU dependent. as well, you can simultaneously read and write to all devices on the chain. also, transfer speeds are faster and the RPM of SCSI drives tend to be faster as well.

    so i would surmise that the reason you are seeing your performance hit is that the CPU is just working twice as hard to transfer data from one controller to the other. if you actually are trying to transfer data across the same controller; i.e, from master to slave or vice versa, you should stop doing that. that's really slow and quite silly. get SCSI. it's worth it.

  6. It's all about the UDMA100 spec's by Manic+Miner · · Score: 4, Informative

    I believe this is to do with UDMA spec's as to cable length an connectors etc. etc. I reciently had a lot of trouble with a UDMA100 Maxtor drive. They got back to me and informed me that UDMA wouldn't be gaurenteed to even run at UDMA100 (mode 5??) and even if the drive did detect at UDMA100 the performance would be much worse..

    Having finally got my drive detecting as UDMA100 I can totally agree with the performance issues under Windows 2000 at any rate. My slave drive gets on average 30Mb/sec when runnning a transfer rate test on top of NTFS. My master drive gets on average 60Mb/sec on the same test.

    If you read the installation instructions for all UDMA100 drivers (well all the ones I've seen ;) ) they say to make sure the drive is attached to the black connector on the cable for best performance. I looks like UDMA100 just isn't designed to run both drives on the controller at high speed.

    --
    If you ever drop your keys into a river of molten lava, let'em go, because, man, they're gone.