Slashdot Mirror


The Impact of Memory Latency Explored

EconolineCrush writes "Memory module manufacturers have been pushing high-end DIMMs for a while now, complete with fancy heat spreaders and claims of better performance through lower memory latencies. Lowering memory latencies is a good thing, of course, but low-latency modules typically cost twice as much as standard DIMMs. The Tech Report has explored the performance benefits of low-latency memory modules, and the results are enlightening. They could even save you some money."

11 of 162 comments (clear)

  1. Anandtech did this months ago by Anonymous Coward · · Score: 4, Informative

    http://anandtech.com/memory/showdoc.aspx?i=2392

    You'll basically find that the performance of value memory is very on par with the high end stuff. You basically pay for the ability to overclock on a more consistent basis.

    1. Re:Anandtech did this months ago by bersl2 · · Score: 2, Informative

      Also, see this thread from the Anandtech forums.

  2. Insightful article by mindaktiviti · · Score: 2, Informative

    Although I didn't read all the text (about 50% of it), the benchmarks were what I was interested in, as well as the conclusion. So to sum it up:

    2-2-2-5 timings at 400MHz t1 memory is the fastest but costs twice as much and the performance gains are almost non-existant except in lower resolution games (i.e. 800x600 you may see an increase in 20 fps, which I think is a lot!), and of course the cost of the ram in this case would not be justified because putting that extra money into a better video card would be the better thing to do.

    Only if you're an overclocker is this worth it, at least from their benchmarking and perspective, which I'll accept.

    Oh yes, and that website also crashed my Firefox.

  3. Re:FP! by stinerman · · Score: 4, Informative

    The real question is: can I buy 533MHz ram and run it slower with lower latencies?

    Yes. I regularly by high speed RAM and downclock it, but run it at lower latency. For instance if I wanted to run my RAM at 400MHz, I'd buy 433/466/500MHz VAL-U-RAM and run it as a stick of semi-premium 400MHz.

  4. Re:Link crashed Firefox by isometrick · · Score: 2, Informative
    How do you figure? Here's the response:
    greg@yak ~ $ wget -U "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.10) Gecko/20050922 Firefox/1.0.6" --save-headers -O- "http://servedby.netshelter.net/serve.cgi?pid=TECH -REPORT&g=1&m=9&j=1&k=1&id=1016381969816&d=iframe" 2>/dev/null
    HTTP/1.1 200 OK
    Date: Wed, 02 Nov 2005 16:05:08 GMT
    Server: Apache/2.0.46 (Red Hat)
    Set-Cookie: ls=1; path=/; domain=.servedby.netshelter.net
    Set-Cookie: FCDEFAULT_TECH-REPORT.TECH-REPORT=1|051102160508+1 |cf4bbb50bcb0d4ac; path=/; domain=.servedby.netshelter.net; expires=Wed, 09 Nov 2005 16:05:08 GMT
    P3P: CP='NOI NID PSAa PSDa OUR IND COM NAV', policyref="/w3c/p3p.xml"
    Expires: Fri, 20 Mar 1998 01:00:00 GMT
    Cache-Control: no-cache
    Pragma: no-cache
    X-Adtrix-Debug: -ac=7 VONCAN728Q405HEITNOV=GT ITTQ405TECHENTHUS728=DD VON728Q405HEISITNOV=DD CRUUKNOV05GEEK728=GT CRUUKNOV05VIPER728=GT VERZTECHENTH728NOV05=DD -ec=1 DEFAULT_TECH-REPORT=#1
    Connection: close
    Content-Type: text/html; charset=UTF-8
     
    <script language='JavaScript' type='text/javascript' src='http://techreport.com/phpads/adx.js'></script >
    <script language='JavaScript' type='text/javascript'>
    <!--
      if (!document.phpAds_used) document.phpAds_used = ',';
      phpAds_random = new String (Math.random()); phpAds_random = phpAds_random.substring(2,11);
     
      document.write ("<" + "script language='JavaScript' type='text/javascript' src='");
      document.write ("http://techreport.com/phpads/adjs.php?n=" + phpAds_random);
      document.write ("&amp;what=zone:24");
      document.write ("&amp;exclude=" + document.phpAds_used);
      if (document.referrer)
          document.write ("&amp;referer=" + escape(document.referrer));
      document.write ("'><" + "/script>");
    //-->
    </script><noscript><a href='http://techreport.com/phpads/adclick.php?n=a 1feedc2' target='_blank'><img src='http://techreport.com/phpads/adview.php?what= zone:24&amp;n=a1feedc2' border='0' alt=''></a></noscript>
  5. Re:What about cache? by harrkev · · Score: 2, Informative

    For one simple reason -- die size. Cache eats up a lot of real estate. A 1MB (B as in byte) is 8 million bits. If the cache uses DRAM-style cells, that is at least 8 million transistors. If the cache is more like SRAM, then you can count on a lot more This increases the size of the die, which decreases both the number of chips per wafer, and also increases the percentage of defective dies.

    So, the bottom line is that cache is the most expensive type of memory in a computer. Some methods have been made to get around this -- like the Intel "Slot-1" architecture where the L2 cache was on a separate chip. But this idea faded into the museum of bad ideas.

    --
    "-1 Troll" is the apparently the same as "-1 I disagree with you."
  6. Re:What about cache? by timeOday · · Score: 2, Informative

    Because you get diminishing returns for more and more cache. At some point it's better to use all those transistors as a second core instead.

  7. Re:The underestimated impact of latency. by twiddlingbits · · Score: 2, Informative

    The software knows nothing about memory latency, the software only knows it needs to move a block of data from point A to point B. That Java/C/C++ Move_Memory function translates at the lowest level to machine code instructions which are implemented in the logic of the silicon. The coder or the compiler may optimize the ORDER of execution of the instructions, or use different instructions (such as BlockMoves) to speed things up, but the basic underlying machine instructions execute the same way every time (either they hit the cache and load from there, or it misses and a memory fetch is executed across the memory bus). On-chip caches were a design to minimize memory fetch and it's associated latency. On-chip caches are small and fast and are a different design than the external memory.

    What you would want is to eliminate the wait states from CPU to RAM (or get more cache hits) and that is NOT something a compiler or OS can do for you, that is done in the algorithms that run the CPU. You can change that to some extent in the BIOS settings, to tell the CPU that memory wait states are zero, or the clock is higher but IIRC the CPU and Memory and Bus Controller have to agree on all this setting and must be able to implement its' timing. Overclocking the CPU won't fix this when the Bus and Memory can't run any faster.

  8. Re:Just stick a few blue LEDs on it... by Wonko · · Score: 2, Informative

    Guess what? That wicked dual-core CPU actually runs games slower than its single core cousin.

    Is this actually a true statement? I can't do any current testing since I don't have a reasonable 3D card in my machine, but I remember testing Quake 3 on my old dual Celeron machine with a TNT2 card. top showed Quake was using 95% or more of one CPU, and the X server was using 30% or more of the other CPU.

    I don't expect the numbers to be the same today, but shouldn't there be at least some slight increase in speed if the GUI is running in a separate process? I am not saying that the increase would justify the price, but I haven't run a single CPU desktop in something like six years. I am not about to start now :).

  9. Re:Link crashed Firefox by Randolpho · · Score: 2, Informative

    It's not really that wierd. Vertical bars are a popular list separation item, and I've used them in cookies for web applications I've designed many times. In your example, you have a twelve-item list, with the first two items equal to "CA" and "NA" respectively, and the remaining equal to "".

    What they're doing with the list is anybody's guess. :)

    --
    "Times have not become more violent. They have just become more televised."
    -Marilyn Manson