scotty777
...doesn't know
Bollocks to your definition of a cpu and what constitutes a core.
So by your logic if a CPU does not have a FPU, MMU, Cache etc on the same die or share it between cores it's not a true cpu? Wonder why they called these things cpus through the last 30 years or so then.
I guess, if you really think about it, each module can actually execute two actual processes at the same time. There's no queuing, and none of that hyper-threading whereby you have a process queued, and when say the FPU opens up, that queued process can be processed, meaning you can kinda process more things at the same time, just as long as the core has some free resources...
Bulldozer allows two processes to actually run simutaneously. In theory, if you code it right, you can have one thread doing FPU calculations and just general maniputation, with the other thread doing all the other good stuff like piecing data together and sending it else where (this is the benefit of share cache... each processors can call for a value). Obviously, what's happening now is Windows just sees general cores, and will through any thread at them, which means that you have a skewed application of resources. So instead of getting two processes, one doing integer + floating point calc, the other just doing integer point calc, Windows could assign two threads to a module, each thread wanting to do floating point calc. When the latter happens, then one thread has to be queued, and this slows down the process.
A Bulldozer module is a dual core then, it can execute two threads simultaneously. Whether is shares an FPU unit between the two cores is irrelevant. It still runs two processes at the same time.
It's like saying you don't have two hands because you need both of them to left heavy objects, but for other tasks, you can use them simultaneously... doesn't make sense does it
