New TLBs, Faster Unaligned Cache Accesses

Historically the applications that push a microprocessor’s limits on TLB size and performance are server applications, once again with things like databases. Nehalem not only increases the sizes of its TLBs but also adds a 2nd level unified TLB for both code and data.

Another potentially significant fix that I’ve already talked about before is Nehalem’s faster unaligned cache accesses. The largest size of a SSE memory operation is 16-bytes (128-bits). For any of these load/store operations there are two versions: an op that is aligned on a 16-byte boundary, and an op that is unaligned.

Compilers will use the unaligned operation if they can’t guarantee that a memory access won’t fall on a 16-byte boundary. In all Core 2 processors, the unaligned op was significantly slower than the aligned op, even on aligned data.

The problem is that most compilers couldn’t guarantee that data would be aligned properly and would default to using the unaligned op, even though it would sometimes be used on aligned data.

With Nehalem, Intel has not only reduced the performance penalty of the unaligned op but also made it so that if you use the unaligned op on aligned data, there’s absolutely no performance degradation. Compilers can now always use the unaligned op without any fear of a reduction in performance.

To get around the unaligned data access penalty in previous Core 2 architectures, developers wrote additional code specifically targeted at this problem. Here’s one area where a re-optimization/re-compile would help since on Nehalem they can just go back to using the unaligned op.

Thread synchronization performance is also improved on Nehalem, which leads us in to the next point.

Finish Him! ...and Now We Understand Why: Hyper Threading
Comments Locked

35 Comments

View All Comments

  • qurious69ss - Friday, August 22, 2008 - link

    You sound like one of those sad fanboys from amdzone. Tell dimentia to get a life.
  • X1REME - Friday, August 22, 2008 - link

    wow, this whole cpu is a copy of a amd cpu and you expect amd fan boys to not get amd with you, secondly this fantasy is baseless until you can compare it to an offering from the AMD team (Shanghai & Deneb). AMD is still KING with there OPTERON and most likely will be in the future with there new cpu coming soon for the server and also for the desktop.
  • DigitalFreak - Friday, August 22, 2008 - link

    Learn to spell, you goober.
  • X1REME - Friday, August 22, 2008 - link

    OK DORK, am sure you have never made a mistake (there=their) Duh. I bet your some kid all hyped up for the i7 who wishes Xmas comes early lol. Anyway it’s not a desktop chip, it’s a sever chip DUH. It’s meant to compete with the AMD Opteron chip (the best). Although Opteron will lose its crown, it won’t be to i7 but to Shanghai (AMD new latest and greatest). And like I said b4, Deneb will clear anything up out of place.

    The reason amd does not grab a microphone and star shouting at the top of their voice is because amd doesn't have the resources and money in comparison with Intel. If it reveals too much about its future strategy and Intel likes that strategy (like the Opteron, HT, On-board mem etc) there is a big theoretical chance that Intel could take this idea and deliver a product well before AMD. So it’s not over until amd says its.
  • snakeoil - Thursday, August 21, 2008 - link

    nehalem fails,it was supposed to be superior to core 2, intel was against the wall this time, why?, because, the old front bus architecture was lagging more more in the server arena and becoming a bottleneck ,compared to hypertransport, so intel is forced to abandon the front side bus, but the strong point of core 2 is that because you don't have and integrated memory controller you can stuff the processor with a huge L2 cache.
    so, nehalem sucks in gaming,there is no way that the enthusiast is going to pay more for a processor that produce less fps that they actually have.
    and the hyperthreading is a risky move, hypertrheading is known por being power hungry, and although produce gains in some applications,some servers applications actually runs slower, so in many cases the old hyperthreading had to be disabled.
    nehalem is crippled for the enthusiast,and the regular user.

    nuff said.
  • AssBall - Saturday, August 23, 2008 - link

    You musta missed where Anand says several times its not intended for better gaming? It will be significantly faster than Penryn for multithreaded applications. I guess I don't see how this makes it "fail". Maybe in your fantasy world where 90% of the CPU market are "enthusiasts".

  • snakeoil - Saturday, August 23, 2008 - link

    enthusiasts drive the market you fruityass
  • UnlimitedInternets36 - Saturday, August 23, 2008 - link

    LOL this year Satan err Santa is going to take away your PC because you don't deserve to have one anymore You Jaded nerd.
  • Gasaraki88 - Friday, August 22, 2008 - link

    Thanks! I never knew there was a expert on CPU design in the house. I've learn so much from your well researched, tested and thought out comment...
  • pool1892 - Friday, August 22, 2008 - link

    first of all the enthusiast market is a very tiny niche, it would not kill intel if you were right.
    but you are not. the L2 of penryn (and banias) is much more like the nehalem L3 than the nehalem L2. and if you have a single threaded game it now has 8mb at similar latencies, but with a second buffer, the 256k L2, and a MUCH smaller cache miss penalty.
    concerning hyperthreading: please read the article first. nehalem switches off what it does not need, powerwise. and about fiftytwo other very vaild arguments.

Log in

Don't have an account? Sign up now