Well, the reason I asked about your wording is because I'd be willing to bet that the advantage lies with the PC Dual Core over the proprietary hardware that the consoles are using.
Printable View
The CPUs aren't really proprietary, just not PC... they're normal IBM based Power PC cores with the added SPEs in the Cell as well. They're not console specific other than the actual implementation of the 360's Xenon (standard cores, same as the PPE of the Cell, 64-bit Power PC CPU core, but a custom tri-core configuration).
If Apple hadn't switched to x86, they'd probably have very similar CPUs.
The PS3 more or less uses an off the shelf GPU as well and the 360 isn't far from that either, but with a more powerful chipset.
As to CPU performance, benchmarks only go so far, but the Power PC cores are generally much more powerful than AMD/Intel cores, at very least those that were actually on the market 5 years ago. (otherwise there's no reason the consoles would have gone with PPC at all, especially MS it was all about cost/performance ratio)
What's interesting is that the Wii and 360 are both using IBM+ATi components. ;)
Also remember that AMD didn't buy ATi until 2006, otherwise there probably could have been a major advantage in getting both the CPU and GPU from AMD. (as may very well be the case next generation)
With the Wii they'd already had the GC hardware to build onto in the first place, so that was different, but MS might have stuck with x86 had AMD merged with ATi sooner. (that might have even allowed full hardware backwards compatibility with the Xbox, at least with most/all games sticking to the standard OS/APIs of the systems, others likely would need patches, but probably no full recompiled ports or not working at all like with the 360)
The PS3 Cell would kick the shit out of a dual-core processor. The Cell was designed to operate large amounts of calculations and take most of the load off of the GPU. It's a shame that most of the software from 3rd party publishers were ported to the PS3, from the 360; it really hinders what the PS3 can do.
Here's an example of the PS3 creating a 3D landscape, without the assistance of the GPU.
Here's a physics demo, showing the calculation power of the PS3.
^ Looks like Kinky Kelly and the Sexy Stud from Clerks 2
When it comes to crunching numbers yes, when it comes to everything else not so much.Couple that with a GPU bottleneck.It's good for doing simple tasks and that's about it, I will say it's better than the 360 CPU, but developers are taking the time to code for it.
MS guessed right when they went with three cores instead of one core plus accelerators - with Intel and AMD going multi-core, the focus shifted to threading games to take advantage of the extra cores. As long as the game sticks to C/C++ or similar high(er) level language (and all modern game engines do), all you have to do for the 360 is recompile.
The PS3 requires the programmers to take the jobs those extra threads are doing and pass them off to the accelerators... which means rewriting the threads to massage the data into the proper format, setup the accelerator for the job to be done, and monitor the progress of it, then massage the return data into the format needed. Doing that NOW isn't too hard since Sony/IBM have plenty of libraries for doing all sorts of tasks on the SPE - just call the library. At the beginning, you had to do all that yourself - the library merely handled the lowest levels of passing stuff off to the SPE.
The method the PS3 uses can be powerful and faster, but it's not the way the programming world went because of AMD and Intel. That's helped MS with game conversions, especially since the 360 OS is just a modified version of Windows - other than watching out for endian issues, watching the memory usage, and the difference in API in the OSes, the 360 requires little more than recompiling the Windows version of a game with a few changes to flags. The PS3 conversion takes a LOT more work.
Aren't there also logic operations (among other things) that only the CPU cores are really suited for with the SPEs being more specialized and not generla purpose in the sense a CPU needs to be? (ie things the PPE is great at -or Intel/AMD cores- but not the SPEs -or GPUs for that matter-)
Also, are there cases where large amounts of double precision floating point calculations are necessary or (for games at least) is single precision stuff normally all that's needed. (at double precision the SPEs' performance becomes far less competitive with the Xenon or various multi-core X86 CPUs -or the PPE in the Cell for that matter)
There are problems that are easier to solve with a CPU, and others that lend themselves to a vector processor, and still others that can be streamed efficiently. The PS3 can get by with things that don't lend themselves to SPEs by virtue of having SIX you can throw at the problem. If one can't equal a CPU, toss five more at the problem. Again, it's just a matter of being harder to program, but you can still do it.
While double precision is dominant in business and scientific research, there's little in games that needs it. It's one reason Sony/IBM/Toshiba made the SPEs single precision - the CBE was aimed at media, communication, and gaming needs, not business and academia.
Now, it's said that HUGE 3D meshes like an entire level for a modern game like Fallout 3 or Red Death Redemption in GLOBAL units can stress single precision, so the next generation of GPUs is supposed to do everything internally as double precision. That's still not a real big issue for SPEs since they won't be dealing with an entire level like that, or if you wanted to for some reason, you could use relative units instead of global to keep things in single precision.
Still, I imagine that the next version of the CBE (if Sony sticks with it) will probably handle double precision to make the point moot.
I wonder what might have happened if Sony went for middle ground on a custom CBE derivative between the true CBE and what MS opted for with just the PPEs. (ie cut out some of the SPEs in favor of dual PPEs and some SPEs still present, like 2 PPEs and 4 SPEs -still keeping some of the peak coprocessing performance advantage but trading some for a more foolproof set-up)
Yeah, that would have been interesting. That's one of the things I heard about the PS4 - that it would use a multi-core CBE. Of course, the PS4 is just speculation at this point, but that would make sense as the way forward while maintaining backwards compatibility.
Hmm, that would be interesting, though beefing up the SPEs might be wasteful if the same thing happens next gen support wise. (keeping the existing SPEs and adding more PPEs would make more sense depending how much more support the SPEs get in late-gen PS3 stuff)
Keeping compatibility on the GPU side shouldn't be too difficult so long as the next chipset is driver-level compatible with everything commonly used on the PS3. (at least they don't have the issue like the PS2 where so much was low-level optimized and direct hardware compatibility was the only option)
That's something that made the Xbox to 360 transition a bit disappointing: the Xbox was almost ideal for promoting flexible backwards compatibility as long as they stuck with the same CPU architecture and a video chipset that was generally API compatible with most/all of the Xbox's (barring a few games bypassing OS/API level stuff and tweaking things on a lower level -and for those cases there still might have been patches). I assume MS got a good deal on the Xenon compared to bulk offerings from Intel or AMD, otherwise it wouldn't make that much sense. (off the shelf dual cores of the time benchmarked lower, but that's barring custom implementations and clock speeds beyond the default standard, let alone real-world performance)
Yeah, that would make more sense. Keep the eight SPEs (maybe just add double precision support, but otherwise leave them as is), and just add extra PPEs. The PPEs are simpler than "regular" CPUs (not doing out of order execution of instructions), so they could probably bump it up to eight PPEs easier than the eight core x86-64s you see from AMD and Intel.
Yeah, I think Sony didn't allow anyone to access the RSX directly, so it should just be a matter of changing drivers.Quote:
Keeping compatibility on the GPU side shouldn't be too difficult so long as the next chipset is driver-level compatible with everything commonly used on the PS3. (at least they don't have the issue like the PS2 where so much was low-level optimized and direct hardware compatibility was the only option)
MS didn't go with x86-64 for the XBox 360 because they realized that if they did, they'd wind up with the same problem they had with the XBox - emulators on the PC running XBox games. Current PCs are nowhere near powerful enough to emulate the Xenon anywhere near full speed. With the XBox, since it used a P3 CPU, you could run XBox games in a virtual environment. The tri-core PPEs that make the CPU of the XBox 360 require full emulation, and even dynamic recompilation wouldn't get you full speed. So it gives them a few more years without fearing piracy due to emulators until long past when the game are no longer making money.Quote:
That's something that made the Xbox to 360 transition a bit disappointing: the Xbox was almost ideal for promoting flexible backwards compatibility as long as they stuck with the same CPU architecture and a video chipset that was generally API compatible with most/all of the Xbox's (barring a few games bypassing OS/API level stuff and tweaking things on a lower level -and for those cases there still might have been patches). I assume MS got a good deal on the Xenon compared to bulk offerings from Intel or AMD, otherwise it wouldn't make that much sense. (off the shelf dual cores of the time benchmarked lower, but that's barring custom implementations and clock speeds beyond the default standard, let alone real-world performance)