Converting MHz to throughput?

My RAM, CPU, and FSB are all rated in MHz (or GHz) but my hard drive’s ATA specification is listed in MB/s (transfer rate), and I’m pretty sure the PCI interface is also specified in MB/s. These parts all have to work with each other, however, and I’m puzzled at why they aren’t all specified in at least one common rate unit.

I understand that a Hz is a “per-second” and is understood to be a “cycle-per-second”, usually equivalent to a low-level instruction (like “add the first and second numbers in the stack”). But does a cycle have a minimum or maximum “size” that can be measured in bits or bytes? To follow: is there a MB/s equivalent to a processor’s MHz?

For example, if I imagine data being sucked off my hard drive straight to a audio- or video-conversion program (such as WinAmp) and then being dumped to my audio card (via a PCI interface), how can I figure out where the bottlenecks are? At what point does the data go through each of my components, and where does it get “hung up” because my components aren’t the best they could be?

A few misconceptions right of the bat: The “Mhz” speed of your CPU doesn’t necessarily have any corellation at all with what instructions it executes. Not all instructions complete in a single cycle, some always take many more and the time for many others varies depending on the current state of the CPU. About the only (AFAIK) universal 1-cycle instruction is a no-op. Your computer can do nothing at full-speed. :wink:

Another problem is that “MHz” is really a lousy way to compare processor speeds, unless you’re comparing the same implementation at several different speeds–not only does one cycle not always work out to one instruction, but an operation that can be completed in one instruction on one processor may take several instructions on another (e.g., to add two numbers stored in memory and store the result in memory takes one instruction on a VAX, but about 4 on a MIPS). For a more contemporary example, look at how AMD is currently naming their CPU’s: they might call something an 1800+ (implying that it runs as fast as an Intel CPU running at 1800 Mhz), but the actual clock speed is significantly lower. But it’s still arguably as fast.

Hard drive specifications give throughput, because if you’re buying a hard drive that’s what you care about. You don’t really care how it’s implemented, as long as it can deliver the raw performance.

For the rest of the components you listed, bandwidth specifications frequently are given–just not frequently in consumer-oriented advertising because the average consumer doesn’t care.

Jurph ,
There’s no direct equivelancy from MHZ to bandwidth.
Choosing your disks relative to your processor is like buying a house based on your household income.
Suppose I made $60,000/yr and had no children. A 3-bedroom house essentially be overkill. If I told you I had 4 children, all of a sudden my 3-bedroom house would probably seem… cramped.
The important thing when you choose a tool for a job is that the tool meet the minimum requirements of thee job.
Some data processing needs place low to moderate demand on disk subsystems. Office PCs that are used for productivity applications or home PCs used mostly for web surfing are good examples of low to moderate disk users.
Busy database servers (especially ones with LARGE databases) or machines involved in Audiovisual rendering are examples of machines that may wind up benefitting from expensive disk subsystems.
Fast video cards are useful almost exclusively to gamers, and in a small handful of engineering or AV applications.
Large amounts of RAM (above 512MB) are useful for database servers or file servers, generally not useful elsewhere.
Similar examples abound.