Jun 282011
 

When talking to, Owais Khan, a friend studying communication systems, I mentioned that multicore systems are becoming memory bandwidth limited even though the bandwidth of latest chips exceeds several GB/second. He was puzzled and then corrected my terminology, thereby pointing me to a common mistake made by computer scientists . I decided to write about it and collect opinions from computer scientists here.

Memory bandwidth is generally used in computer science to refer to the pin bandwidth or the rate at which we transfer data over the memory bus.  Our research and technical papers always quote it in terms of bytes per seconds. What we fail to realize is that bandwidth is not a term we invented. It came from the field of communication systems. If you read what the term bandwidth really means, it is the width of a frequency band which is always measured in Hz, not bytes/second. They have another attribute called data rate which, as its name suggests, is the rate of data transfer which is measured in bytes per second. My question: why did we start calling data rate bandwidth? and should we continue to live with it?

 

  7 Responses to “Quick Post: Memory Bandwidth? (or data rate)”

  1. bandwidth in the signal-processing sense is extremely closely related to the channel-capacity sense (http://en.wikipedia.org/wiki/Shannon%E2%80%93Hartley_theorem). isn’t that what most people think of who know both views?

  2. Measuring it in bits/second, bytes/second or anything else is not incorrect. The belief that this is what we get is incorrect though.

    The bandwidth is the maximum theoretical limit memory or a transceiver can achieve (how much a pipe can in theory transfer). Our throughput may vary though, depending on whatever else we transport in our pipe (the possibility of errors, error correction and others).

    If you have contention, you still have the bandwidth – your throughput though (and the achievable data rate) is a different story.

 Leave a Reply

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>