Build A PC

A custom PC configuration guide. © 2000,2001,2002 by Jef Poskanzer.

Bandwidth

The essence of a computer system is moving data around. If you don't have enough bandwidth at some point along the path you need to move your data, you'll have a bottleneck, a limit on your system's performance. To avoid such bottlenecks you have to understand your system's bandwidth capabilities.

The following table shows the maximum bandwidths for a bunch of different interfaces that might be in your system, sorted by speed. These bandwidths are theoretical - the actual data transfer rates will be somewhat lower. In particular, memory typically transfers at maybe half its interface speed, and disk drives generally don't even come close to their interface bandwidth. To get the actual transfer rates you have to do benchmarking, which is hard. Still, the theoretical numbers are useful for rough estimates.

Key:
Memory Bus Disk Network Other
Interface Bandwidth
Interface Width Frequency Bytes/Sec Bits/Sec
4-way interleaved PC1600 (DDR200) SDRAM 4 x 64bits 100MHz DDR 6.4 GB/s 51 Gbps
Pentium 4 "533MHz" FSB 64bits 133MHz QDR 4.3 GB/s 34 Gbps
2-channel PC1066 RDRAM 2 x 16bits 533MHz DDR 4.3 GB/s 34 Gbps
Pentium 4 "400MHz" FSB 64bits 100MHz QDR 3.2 GB/s 25.6 Gbps
2-channel PC800 RDRAM 2 x 16bits 400MHz DDR 3.2 GB/s 25.6 Gbps
2-way interleaved PC1600 (DDR200) SDRAM 2 x 64bits 100MHz DDR 3.2 GB/s 25.6 Gbps
PC2700 (DDR333) SDRAM 64bits 167MHz DDR 2.7 GB/s 21 Gbps
PC2100 (DDR266) SDRAM 64bits 133MHz DDR 2.1 GB/s 17 Gbps
EV6 bus (Athlon/Duron FSB) 64bits 100MHz DDR 1.6 GB/s 13 Gbps
PC1600 (DDR200) SDRAM 64bits 100MHz DDR 1.6 GB/s 13 Gbps
PC800 RDRAM 16bits 400MHz DDR 1.6 GB/s 13 Gbps
PC150 SDRAM 64bits 150MHz 1.3 GB/s 10.2 Gbps
10 gigabit ethernet serial 10GHz 1.25 GB/s 10 Gbps
133MHz FSB 64bits 133MHz 1.06 GB/s 8.5 Gbps
PC133 SDRAM 64bits 133MHz 1.06 GB/s 8.5 Gbps
AGP 4x 32bits 266MHz 1.06 GB/s 8.5 Gbps
PCI-X 64bits 133MHz 1.06 GB/s 8.5 Gbps
100MHz FSB 64bits 100MHz 800 MB/s 6.4 Gbps
PC100 SDRAM 64bits 100MHz 800 MB/s 6.4 Gbps
PC66 SDRAM 64bits 66MHz 533 MB/s 4.3 Gbps
fast/wide PCI 64bits 66MHz 533 MB/s 4.3 Gbps
AGP 2x 32bits 133MHz 533 MB/s 4.3 Gbps
Ultra-320 SCSI 16bits 160MHz 320 MB/s 2.6 Gbps
AGP 32bits 66MHz 266 MB/s 2.1 Gbps
Serial ATA/1500 disk serial 1.5GHz 187 MB/s 1.5 Gbps
Ultra-160 SCSI 16bits 80MHz 160 MB/s 1.3 Gbps
PCI 32bits 33MHz 133 MB/s 1.06 Gbps
ATA/133 disk 8bits 66MHz DDR 133 MB/s 1.06 Gbps
gigabit ethernet serial 1GHz 125 MB/s 1 Gbps
ATA/100 disk 8bits 50MHz DDR 100 MB/s 800 Mbps
IEEE 1394b serial 800 MHz 100 MB/s 800 Mbps
Ultra-2 Wide SCSI 16bits 40MHz 80 MB/s 640 Mbps
OC-12 network serial 622 MHz 77.7 MB/s 622.08 Mbps
ATA/66 disk 8bits 33MHz DDR 66 MB/s 533 Mbps
USB-2 serial 480 MHz 60 MB/s 480 Mbps
IEEE 1394 serial 400MHz 50 MB/s 400 Mbps
Ultra Wide SCSI 16bits 20MHz 40 MB/s 320 Mbps
ATA/33 disk 8bits 16.6MHz DDR 33 MB/s 266 Mbps
Fast Wide SCSI 16bits 10MHz 20 MB/s 160 Mbps
OC-3 network serial 155 MHz 19.4 MB/s 155.52 Mbps
100baseT ethernet serial 100MHz 12.5 MB/s 100 Mbps
T-3 network serial 45MHz 5.6 MB/s 44.736 Mbps
USB serial 12MHz 1.5 MB/s 12 Mbps
10baseT ethernet serial 10MHz 1.25 MB/s 10 Mbps
IrDA-2 serial 4MHz 500 KB/s 4 Mbps
T-1 network serial 1.5MHz 193 KB/s 1.544 Mbps

Key:
Memory Bus Disk Network Other

Data transfers are mostly between memory and CPU or peripheral devices, so I've colored the table accordingly. You can use this table to spot possible bandwidth bottlenecks. For instance, if you're planning a high-end web server with a gigabit ethernet interface, your transfers will be from disk through PCI to memory, and from memory through PCI to ethernet. If you give the system enough memory, the disk to memory transfers will be minimized, so most of your data will be going memory->PCI->ethernet. You can easily see that memory bandwidth will not be a bottleneck; however, regular PCI has just barely more bandwidth than gigabit ethernet, so that could be a problem. If possible, you should configure your system with 64-bit 66MHz PCI, and be sure your gigabit NIC supports it too.

The number of bits of an interface is relevant because the cost of manufacture goes up with the number of pins or wires. Also on crowded motherboards it's easier to fit narrower interfaces. This is why there are dual-channel RDRAM boards but few or no dual-channel SDRAM boards.

The frequency of an interface is relevant because chip and signalling technology imposes an upper limit. For signals on a circuit board, the 400MHz of PC800 RDRAM is probably the maximum. For cables from a motherboard to a peripheral, the 80MHz of Ultra-160 SCSI is probably the maximum. DDR (double data rate) is a hack that sends bits on both the rising and falling transitions of the clock, and can be used to increase the data rate without increasing the clock frequency. I've heard QDR - quad data rate - mentioned, but I don't see how that could work!


[Intro] [CPUs] [Sockets] [Chipsets] [Motherboards] [Motherboard Forms] [Memory] [PCI Types] [Disks] [Other Components] [Examples] [Assembly] [Links]
Back to ACME Labs.
ACME Labs Webmaster <webmaster@acme.com>