<i>OTOH, the Atom is not that much slower than a C2D when you are not doing SSE operations.</i><p>It's exactly the opposite.  Not counting multiplies, pshufb, and a few other instructions, SSE operations are mostly reasonably performant.<p>The real problems are that the Atom has:<p>1) no out of order execution, which results in an enormous performance penalty on all code.<p>2) very high penalties for many "transfers" between operations: for example, the result of an arithmetic op cannot be used for addressing for quite a few clocks.  This penalty is humongous when dealing with pointers-to-pointers in managed code, lookup tables, and so forth.<p>3) a completely un-pipelined multiplication unit that takes 7 cycles, compared to the pipelined 3-cycle Core 2 unit.<p>4) an enormous number of instructions that were microcoded internally (and thus extraordinarily slow) in order to reduce TDP and chip size.<p>5) only two integer ALUs, which can only dual-issue in some specific cases.<p>Overall, a 1.6Ghz Atom is significantly slower than a 1.6Ghz Pentium 4.  A Core 2 is at least twice as fast <i>per clock per core</i> as a Pentium 4.  And a Core i7 is another 40-50% faster per clock per core...<p>If you want something that gets out significantly more performance per watt than a Core 2 or Core i7, look at the ARM Cortex A9.