By using this site, you agree to our Privacy Policy and our Terms of Use. Close

Forums - Gaming - PS3 vs 360 ROUND 4-----Jon4lakers

darklich13 said:

 How is taking code disigned to run on 3 cores down to 1 a cheap process?  Seams more like they would port to 1 core and 2 SPE's. Which in this case the 360 would have an advantage.  This is because 3 actual cores are better than 3 SPE. But when developers take advantage of the Cell additional SPE, this is where you will see the advantage for the PS3.

I'm glad you asked. =)

The 3 cores of the X360 basically end up having one core run the primary game loop, and the other 2 cores doing OS work (unavoidable), as well as audio, disc streaming, and expensive math tasks like animation and culling.  The game loop is often, by far, the most expensive of these tasks.

Many developers don't effectively use all three cores of the 360 -- in fact, since the OS eats up some time on one of the cores, they don't really even have the option to.  Most of the work resides on a single core, but things like audio, streaming, etc. are pretty easily offloaded onto another core, with commonplace programming techniques.  Those tasks don't require a lot of horsepower, but.. anything freed from the main core is good.

In porting such a game to the PS3, you can choose to jam all that work (OS, audio, streaming, animation, game loop) onto one core, if you choose.  Software threads are abstracted away to the point where programmers don't usually have to deal with them directly on the hardware.  Its easy to port the game from one console to another in this manner.  However, with the extra workload, the one core, now forced to do all the work, takes longer to run a single frame.

Many middleware libraries now make use of the SPEs for developers, where they didn't used to.  You can run audio on the SPEs, you can run physics on them, animations, you name it.  So, once again, its easy for developers to offload work onto processors that aren't running the main game loop -- the middleware does it for them.

A large portion of the OS work, and I think audio, have always been easy to run on the PS3 SPEs, as I recall, so, in a sense, the single PS3 PPU core never really had to do the work of "3 cores"... more like 1 core, plus some extra tasks that didn't usually tax a 2nd core on the 360 to begin with.

 

I'll explain why shared cache resources and shared bus for multicore processors are slower than the Cell broadband design as well, if you like. =)  In short, the SPEs NEVER suffer from a cache miss (because they only address local memory that is, basically, the speed of a L2 cache), and never contend with other cores for cache space or rarely bus time.  If you know anything about modern processors, you'll understand the power of that, and how much more powerful it makes a single SPE, relative to a single Xenon core, for many kinds of tasks.



 

Around the Network

The point about the cheap porting is that no extra work was done then and still isnt.

Its just the game engines which were designed to support Direct X and 3 native cores from written code were recompiled with no optimisation and dumped on the one core of the PS3.
It was a dirty but at the time necessary solution.

Without this fudged game engine the old adage PS3 only has a few games would still be true.

The modern multi plat game engines take the code for a multiplat and optimise for both systems now. Its still no where near as good as programming a specific engine for the PS3 but it shows what can be done.

Its not so much that early Devs were lazy, more that the early game engines were heavily optimised in favour of the Xenon and 360 due to its early release date.

As time goes by we may even see some PS3 only game engines become commercially available.

I'm looking at you Naughty Dog.



Ok, but what about games designed on the PS3 ported to 360? I know there is only a few but these games arent leaps and bounds better then their 360 counterpart.



EMULATION is the past.....NOW.......B_E_L_I_E_V_E

 

 


The cores of the 360 are dual cores.



darklich13 said:

Ok, but what about games designed on the PS3 ported to 360? I know there is only a few but these games arent leaps and bounds better then their 360 counterpart.

They would still have been designed primarily on a game engine which could support Direct X better.

In the early game engine days when the first PS3 optimistations were available it was highly desirable to program with the PS3 in mind.

That way the PS3 version was as good as it could be given the relatively early PS3 engine op build and once dumped on the Xbox compiler all the extra know how from a years head start due to the extra known optimisations would yield equal results.

Dont forget that the precompiled engine code will be heavily abstract compared to a ground up engine build.

Take a look at some of the open source game engines and you will see just what a lego kit many have become.

One program for Character modelling another for sound effects another for AI and a central script to tie it all together.

Hit the magic "make my game button" and a hour later a load of relatively poor code flies out. Its not tight but it works.

In the 360 PS3 case the 360 code was a lot tighter as the relative parts of the compile process were optimised for it. The PS3 was left with a get it working so we can release the game code.

Initial attempts produced unplayable games so things are done to speed it up.

Reduce Draw Distance add 5 fps

No anti aliasing add 5 fps

Drop the Resolution add 5-10 fps

Allow Screen tear and no fps locking and hey presto you got a first year PS3 game.



Around the Network

^ first year? Its still going on today!!

I agree with what your saying though. Anything to get it out there.



EMULATION is the past.....NOW.......B_E_L_I_E_V_E

 

 


Yeah these guys are basically totally coding on a game engine which favours Direct X.

In doing so they are going to produce poor ports. There is nothing you can do about that.

I mean take Ghostbusters. The game engine used was the Infernal Engine.

Its meant to use multi core technology and had a PS3 lead yet the PS3 version featured lower res textures and reduced graphics effects to maintain framerate.

There are only two reasons for this.

1. The Game Engine is not as heavily optimised as the vendors would have us believe.
2. Despite insistance that the PS3 was lead, little or no consideration was given to programming to the PS3 strengths probably due to a lack of familiarity of the new game engine by the Devs.

Given the Multi studio ownership of the title in its somewhat troubled birth Id be inclined to say number 2 is our boy.



Haha, he showed VGChartz for a second. I completely agree, when the Cell is tapped into, things can be accomplished that no other console can do. If Uncharted 2 isn't an indication of this, I don't know what is.



well that video wasn't really bias it actualy stated the truth......360 is holding the ps3 back but on the brighter side of things graphics and realism are only the backbones to delivering fun! and microsoft has captured that with their 1 yr head start getting developers to focus on their platform rather than sony's. i am really interested to see the generation after this and how it plays out between microsoft and sony



Yay for Vgchartz being featured!

Yay for Teh Cell!