$hawn :
i think its you that needs to get ur facts straight !! We've been over this argument a zillion times!!! A FX is a Quad core...even thoe it maybe a weak one at that.
Agreed that in this particular case, going i3 makes slightly more sense thoe...it has a superior architecture and excellent HT implementation that makes up for 2 less cores.
However, an FX still is a quad core, coz it has 4 integer cores. Period. The original 8086 all the way to 80386 didn't have an FPU at all, don't bother about a shared FPU !! They needed a separate 8087 chip to do floating point math
😀
A SB/IB core only has a duplicate set of working registers IIRC, and that makes it waayyy different from a module implementation.
Anyway, i'm not tryna start a war here, so peace. And i'm also not some hardcore AMD fanboy, but i like the way AMD keeps coming up with nice innovative ideas, eventhoe they may not be successful all the time
If the Bulldozer is a quad core than so is the I3. Do you even understand how the Bulldozers architecture works? The 4100 Bulldozer is a dual core processor with shared modules. It's AMD's pathetic attempt at copying hyperthreading. CMT is just an ‘invention’ by AMD’s marketing department. They invented a term that sounds close to SMT (Simultaneous Multithreading), in an attempt to compete with Intel’s HyperThreading. Now clearly, HyperThreading is just a marketing-term as well, but it is Intel’s term for their implementation of SMT, which is a commonly accepted term for a multithreading approach in CPU design, and has been in use long before Intel implemented HyperThreading. the problem isthat people like you are getting suckered into believing that the Bulldozer is really a quad core, six core and eight core CPU. They seem to think that CMT is just as valid a technology as SMT. And worse, they think that the two are closely related, or even equivalent. As a result, they are comparing CMT with SMT in benchmarks. In benchmarks, we see that the reality is different: AMD actually NEEDS those two dies to keep up with Intel’s single die. And even then, Intel’s chip excels in keeping response times short. The new CMT-based Opterons are not all that convincing compared to the smaller, older Opteron 6174 either, which can handle only 12 threads instead of 16, and just uses vanilla SMP for multithreading.
Let’s inspect things even closer… What are we benchmarking here? A series of database scenarios, with MySQL and MSSQL. This is integer code. Well, that *is* interesting. Because, what exactly was it that CMT did? Oh yes, it didn’t do anything special for integers! Each module simply has two dedicated integer cores. It is the FPU that is shared between two threads inside a module. But we are not using it here. Well, lucky AMD, best case scenario for CMT.
But let’s put that in perspective… Let’s have a simplified look at the execution resources, looking at the integer ALUs in each CPU.
The Opteron 6276 with CMT disabled has:
■8 modules
■8 threads
■4 ALUs per module
■2 ALUs per thread (the ALUs can not be shared between threads, so disabling CMT disables half the threads, and as a result also half the ALUs)
■16 ALUs in total
With CMT enabled, this becomes:
■8 modules
■16 threads
■4 ALUs per module
■2 ALUs per thread
■32 ALUs in total
So nothing happens, really. Since CMT doesn’t share the ALUs, it works exactly the same as the usual SMP approach. So you would expect the same scaling, since the execution units are dedicated per thread anyway. Enabling CMT just gives you more threads.
The Xeon X5650 with SMT disabled has:
■6 cores
■6 threads
■3 ALUs per core
■3 ALUs per thread
■18 ALUs in total
With SMT enabled, this becomes:
■6 cores
■12 threads
■3 ALUs per core
■3 ALUs per 2 threads, effectively ~1.5 ALUs per thread
■18 ALUs in total
So here the difference between CMT and SMT becomes quite clear: With single-threading, each thread has more ALUs with SMT than with CMT. With multithreading, each thread has less ALUs (effectively) than CMT.
And that’s why SMT works, and CMT doesn’t: AMD’s previous CPUs also had 3 ALUs per thread. But in order to reduce the size of the modules, AMD chose to use only 2 ALUs per thread now. It is a case of cutting off one’s nose to spite their face: CMT is struggling in single-threaded scenario’s, compared to both the previous-generation Opterons and the Xeons.
At the same time, CMT is not actually saving a lot of die-space: There are 4 ALUs in a module in total. Yes, obviously, when you have more resources for two threads inside a module, and the single-threaded performance is poor anyway, one would expect it to scale better than SMT.
But what does CMT bring, effectively? Nothing. Their chips are much larger than the competition’s, or even their own previous generation. And since the Xeon is so much better with single-threaded performance, it can stay ahead in heavy multithreaded scenario’s, despite the fact that SMT does not scale as well as CMT or SMP. But the real advantage that SMT brings is that it is a very efficient solution: it takes up very little die-space. Intel could do the same as AMD does, and put two dies in a single package. But that would result in a chip with 12 cores, running 24 threads, and it would absolutely devour AMD’s CMT in terms of performance.
So I’m not sure where AMD thinks that CMT is ‘more efficient’, since they need a much larger chip, which also consumes more power, to get the same performance as a Xeon, which is not even a high-end model. The Opteron 6276 tested by Anandtech is the top of the line. The Xeon X5650 on the other hand is a midrange model clocked at 2.66 GHz. The top model of that series is the X5690, clocked at 3.46 GHz. Which shows another advantage of smaller chips: better clockspeed scaling.
So, let’s not pretend that CMT is a valid technology, comparable to SMT. Let’s just treat it as what it is: a hollow marketing term. I don’t take CMT seriously, or people who try to use the term in a serious context, for that matter.