[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: true x86 PCI bus speeds/specs



On Sat, 23 Feb 2002 20:14, Jeff S Wheeler wrote:
> The most common PCI bus is 32 bits wide, and operates at 33MHz.  Its

Actually it's usually 33.333MHz (which means it divides into the CPU FSB 
speed which is designed to divide into the CPU core speed which is a multiple 
of 100MHz).

Not sure whether the specs say 33.33 or 33.  But most machines seem to work 
fine at 33.33.

> to 528MBytes/sec.  And numerous motherboard implementations have more
> than one PCI bus, so you could but high-bandwidth perhipherals on each
> of the two buses, and not substantially impact performance or cause them
> to compete for resources.

The motherboards that have multiple busses are too expensive for most people. 
If you want a home-user type machine then expect to spend an extra $300 (10% 
of the cost of the machine and more than most people will be prepared to 
pay).  If you want a rack-mount server machine then you may be looking at a 
$5K vs $15K price difference!!!  My prices may be a bit outdated, but I 
expect that the differences still apply.

> Now, all card/driver combinations have some overhead associated with
> them.  The bus isn't 100% efficient, but on many "consumer-grade"
> mainboards the 32 bit / 33MHz bus will push 110MBytes/sec or more in
> real-world use.  If you don't believe me, check the 3ware RAID card
> reviews on storagereview.com (assuming SR is still up).

Or just test a regular IDE drive on a regular IDE controller (the IDE 
interface on the motherboard is bridged through the PCI bus).  Having 2 IDE 
drives each delivering 25MB/s at the same time is easy, even on old hardware.

> This means a 100Mbit/sec network througput, which is 12.5MBytes/sec,
> will easily fit within the maximum throughput of the PCI bus.  The real
> issue is kernel efficiency.  Zero-copy TCP and things like that are
> going to improve linux network performance by leaps and bounds.  Going
> from a 132MByte/sec bus to a 528MByte/sec bus will disappoint you :-)

12MB/s isn't THAT much, I would hope that even a 2.2.x kernel running on a 
Pentium could sustain that!

The hard part comes when you have a large number of network cards.  There is 
kernel support for copying data between network cards, but I don't think it 
works with packet filtering yet.

-- 
Signatures >4 lines are rude.  If you send email to me or to a mailing list
that I am subscribed to which has >4 lines of legalistic junk at the end
then you are specifically authorizing me to do whatever I wish with the
message (the sig won't be read).



Reply to: