Tuesday, August 5, 2008

Revived architecture in Pentium M (Banias and Dothan)

Upon release of the Pentium 4's mobile variant, it was quickly realized that the new NetBurst core was not ideal for mobile computing. The Netburst-based processors were simply not as efficient per clock or per watt compared to their P6 predecessors. Pentium 4-Mobile ran much hotter than the Pentium III-M and didn't offer significant performance advantages. Its inefficiency affected not only the cooling system complexity, but also the all-important battery life.

Intel, realizing that their new architecture wasn't the best choice for the mobile space, went back to the drawing boards for a design that would be optimally suited for this market segment. The result was a hybrid, modernized P6 design called the Pentium M:

Design Overview[1]

* Socket 479. Electrically similar to Socket 478, but not compatible.
* Faster front side bus. With the initial Banias core, Intel adopted the 400 MT/s Netburst bus. The Dothan core moved to the 533 MT/s bus, following Pentium 4's evolution.
* Larger L2 cache. Initially 1 MiB, then 2 MiB in Dothan. Dynamic cache activation by quadrant selector from sleep states.
* SSE2 support.
* Pipelining lengthening by 3-4 stages for improved clock scaling.
* Dedicated register stack management.
* Addition of global history to branch prediction table.
* Micro-ops Fusion of certain sub-instructions mediated by decoding units. x86 commands can be combined into fewer RISC micro operations.
* Enhanced SpeedStep III (EIST). The processor can clock down to a fraction of its maximum speed and voltage when idle, bringing power usage down to only a few Watts.

The Pentium M was the most power efficient processor for notebooks for several years, consuming under 30 Watts at maximum load and a mere 4-5 Watts while idle. The processing efficiency gains brought about by its modernization allowed it to rival the Netburst processors clocked nearly one gigahertz higher and equipped with much more memory and bus bandwidth.[1]

Pentium M's primary shortcoming was in the floating point realm. The P6 core had formidable floating point performance throughout much of its lifetime, but the newer AMD Athlon and Athlon 64 cores, along with the powerful floating point SIMD capabilities of NetBurst processors, outclassed it. Although Intel implemented SSE2 in Pentium M, the implementation was not equal to that within the Athlon 64 or Pentium 4. So, on tasks where Pentium M was relying heavily on its floating point unit instead of its cache and integer performance, it would present disappointing performance.

No comments: