Are three cores better than two?
Barbarian writes "That's the question that Tom's Hardware asked. They took a dual-cpu motherboard and stuck both a single and a dual core Opteron on the board, for a total of three cores. Does it work? Well, yes, when it's not crashing. It does raise the possibility of tri-core processors whilst we are waiting for the next die shrink."
If only you would lift the power supply 3 feet above the ground,.. Oh wait..
Today on /. 3 > 2!!! Tommorow 4 > 3!!
I thought the XBox CPU was a three-core jobby. I don't know if all the three cores are the same or whether thre are different sorts of cores for doing different sorts of things. Presumably, as long as you've got the correct glue, and can stick any number of cores on a chip. I don't think there's any need to stick (sorry!) to powers of two. Whether or not it works better efficiently becomes the issue... or rather the ability to market three vs two or four becomes the issue!
return 0; }
"Xbox 360 is a triple core, which is a pretty good indicator that this configuration is viable"
Wasn't XBox crashing constantly?
[sig]
The question can't be answered.
In some markets, hardware is released and only then does software take advantage of it. Sometimes software never takes advantage of the new hardware because of the complexity in writing code. I remember all the MMX and the like promotions, but I never really saw any evidence that it did anything.
In other markets, software is released and the hardware follows. I recall Quake (or was it Quake 2) and the rush months later to have a Voodoo SLI to boost framerates.
I am sure a 3-core processor could be "better" but only if the software to support it can be easily ported from the single core or dual core versions. Will software eventually be core-transparent because of a "xCore" abstraction layer? Will software be optimized properly for the ability to take advantage of the added cores?
I see the need for multitasking the processor side, but I also see the complexity in trying to differentiate all the different configurations a workstation may have. The more cores that are released, the more I see application-specific turn key solutions over "one version fits all." I also see the added costs in testing and developing, and who really knows if those costs lead to any savings by creating the additional cores.
That's the point of this post -- just because something increases efficiency in one sphere doesn't mean that there is an overall savings. There is no way to properly judge if the market will see a savings overall, and if it costs much more to produce/support/service the new product, it will fail. Nothing can stop that, not even great marketing.
I'm sure using anything other than a power of two irritates the binary gods, at least use an even number.
try { do() || do_not(); } catch (JediException err) { yoda(err); }
Fuck Everything, We're Doing Five Cores
Pages are loading pretty slow, here's the conclusion for those who don't want to wait:
As you could see, the fact that we used two rather different Opterons for putting together the triple core system had an impact on the benchmark results that was hard to predict. Performance depends on the level of a program's thread-optimization, but we also had a hard time with some particular benchmarks. Some did not work at all (AutoGK w/ DivX or Xvid, Pinnacle Studio 9 Plus). For others, performance was worse than that offered by a dual-core Opteron 275 configuration (such as with memory benchmarks, ScienceMark, WinRAR file compression and Windows Media Encoder). However, the majority of software we used was able to scale well thanks to the third core (which was the case with Cinebench 2003, PovRay 3.7, Cinema 4D R9 and 3DS Max 7).
MrRogers(2)
isnt even ready for multithreading yet.
Gaming is where the horsepower is needed in the consumer space - and most games aren't multithreaded. An additional core wont do much in terms of performance that a second core doesn't already accomplish. You're just wasting die space and decreasing yields.
The Doormat
If you're not outraged, then you're not paying attention.
Why would anyone even want to do this? Most dual proc systems are designed so that the CPUs must be the same for them to work properly. Sure, this configuration is a bit cheaper than using two dual core procs, but unless you have a space CPU sitting around I really don't see the point.
As a senior Death Star Engineer, I don't think this is such a good idea at all. Despire the Governor's claims that the rebellion poses no threat, having not one, but three massive vulnerabilities on our defenses is only asking for a "small, one-man fighter" to score a direct hit.
Hehe, reminds me of The Onions article about five razor blades vs four.. Interesting that they wrotes this WELL before a 5-blade razor ever came out
The article refers to the system as "asymmetric" in a few places. This is not the case: SMP refers to a situation where all CPUs run a kernel, and each CPU schedules jobs for itself. In an AMP situation, one CPU is the "master" and the others are "slaves" which are scheduled, have interrupts and system calls managed by, and are otherwise controlled by the "master" CPU. It's possible to have an SMP tri-core system, and an AMP dual-core system.
Are 3 frikken sharks with frikken laser beams on thier heads better than 2 frikken sharks with frikken laser beams on thier heads?
I think this puts the issue to rest.
meep
Well, yes, the crashing is a problem, so lets just agree that 3 Coors are better than two unless you're driving.
I'm an American. I love this country and the freedoms that we used to have.
That sounds more like game programmers are wasting their time making games that don't make use of multiple CPUs. It's very clear that there are starting to be some limits reached in terms of what one CPU can do in a machine. There's a reason all these manufacturers are making dual core processors instead of making their processor faster. It's time for the programmers to change how they program.
So, I think your comment isn't very useful, since you try to tell hardware manufacturer's that they're doing useless things instead of making the single CPU faster. And that's not true at all. It's the game programmers that are doing stupid things. Going from 1 to 2 is would've been hard to deal with before it happened. But once you have, going from 2 to x is much easier. So, testing out three and more core systems is pretty useful.
Need a Python, C++, Unix, Linux develop
These two processors do not only differ in the manufacturing process: Changes to the memory controller have been made during the transition from 130 to 90 nm and SSE3 extensions were added. Opteron 248 was designed for HT800 (200 MHz bus), while the Opteron 275 is capable of running HT1000. Finally, the cache size per core is different as well.
My guess is the crashing programs are detecting SSE3 and when a thread that uses it runs in the single core processor, the application is killed for trying an "illegal instruction."
Why not setup one core heavily interger optimized, and one floating point? That way you can run the FP apps like rockets, and the interger apps like lightning w/o comprimizing on either. Rather than have a long chain in the pipeline you could have paralell paths, and once an instruction is set down one path, the CPU could take the next and see if it can stick it down another path.
If you think education is expensive, you should try ignorance -- Derek Bok, president of Harvard
...on Tom's multi-page reviews.
I hate sites where the article occupies less than 10% of the screen area.
I think they had problems scaling their budget.
You mean to say that the TEST COMPUTER was not meant to be set up this way. Just as it's only by convention that computers use binary (they could use any imaginable base representation), it's only by convention that easily-obtainable computers use processors in groups that are integer powers of two. There's no physical reason why a computer could not be built that used an odd number of processors very well, it's just that the one used for the test was not meant for it.
Look what failed. Video compression programs, the type of code almost certain to use streaming SIMD operations.
Try this with two identical dual processors and you should get a nice 4-CPU machine.
Symmetrical multiprocessing refers to the equality of each CPU in terms of running jobs. Each core has equal opportunity to schedule and execute a thread. The fact that the individual CPUs are different has nothing to do with it.
But thanks for playing the Demonstrate Your Ignorance Of Terminology game.
Opteron systems aren't SMP. They're NUMA.
In theory, the ability to run to chips of different speeds was there even in the Athlon MP, as it had independant busses from the morthbridge. In practice, it didn't work very well, either.
steve
Oh, you're not stuck, you're just unable to let go of the onion rings.
Apparently it's the mammoth power brick which causes most of the problems, coupled with people putting it in areas without good circulation (not necessarily the consumers fault... most entertainment centers are kinda cramped). Microsoft is saying that the defect rate is 3%, I'd believe something closer to 6%, but that is actually not out of the ordinary for consumer electronics.
So, in my mind, the "viability" issues of three cores has been answered with the 360. And in fact there are Power Mac configurations that effectively give you 4 cores (2x dual-cores). However, the bigger question is whether it will be advantageous .
With that in mind the 360 is a pretty good test-bed to see 3-core configs are worthwhile. Developers will have more incentive to exploit the potential with the assurance that the hardware will remain relatively constant (at least as far as the API is concerned... hopefully Microsoft will be able to come out with a more compact 360 in a few years).
I know replies have probably already covered this, but here it is one more time. The Xbox 360 uses 3 PowerPC cores (kind of funny for Microsoft to use PowerPC CPUs isn't it?). The new Xbox has major problems with heat, which can also be attributed to the power supply adding to the mess. A previous story said that at least one person was hanging his power supply by a string to help out, which is ridiculous.
We have hit a brick wall so to speak at which processors have been limited. There needs to be major changes in the way that the dies are manufactured before we can attain much higher speeds while keeping stability. One option is to stop using silicon to produce the circuitry, however thus far there are no economical solutions.
If you really need the extra processor power, network a couple of computers together and configure them to share their resources. This takes up more space, but is the only realistic answer that I can think of right now.
Actually this parent should be modded down. SMP doesn't refer to dual or single core, it jsut referes to multiple CPUs in general and it doesn't matter how many of them there are. It should run on two as well as on three or fifteen (depending on the implementation of course). What is crap though is when different CPUs are used, because software most likely wont expect this, as has been already explained in another posting regarding SSE or other special optimized code. It's not surprising either, because mmost software would determine special features at startup and not at runtime. Having a special instruction set would beg the question if the performance gain is negated by constant checks if this feature is still there.
Your honor, this may *seem* offtopic at first, but I do have a point to make.
I think that the Open Source community has proven that anything will work given enough engineering hours. Case and point; I was at Phreaknic many moons ago and saw a TRS-80 running Debian. Yay!... but now what? Would you use your Debian-laced TRS-80 to do someting? (not knockin' it.. it was actually pretty cool, but it's a pertinent example towards my point)
Just as Debian was able to be loaded on the TRS-80, a tri-core setup will, in all likelyhood, benchmark better than a dual setup assuming that the tri-core configuration can be stabilized (which I don't doubt is possible) and the application(s) are optimized for multiple processors. Ok, by proving that, what have we accomplished? 3 are better than 2? Of course 3 are better than 2. I personally think that a *good* question to ask would be: Are there advantages to using 3 versus 4? Or what advantages could you leverage from a 2 + 1 configuration?
Bottom line: Did you really have to do an experiment to test that?
Seems like one of those "chickens prefer beautiful humans" research projects. Google it; the research project is there.
This message was posted using recycled electrons.