Naughty Dog & Epic Interviews about PS3 development & SPEs ...

JardeL

Regular
PS3Blog's Naughty Dog interview ;
... Q3: Do you find a global queue of jobs to be doled out upon request to be a good approach to paritioning work to the SPE’s, or is it better to assign each SPE it’s own task in the game?
A3: Naughty Dog uses a Job Manager developed jointly by Naughty Dog’s ICE team and SCEE’s ATG group. This means that we can send any type of job to any SPE, and all of the scheduling of jobs is done through a priority system. This works well, since the overhead is minimal and we achieve good load-balancing between SPEs, something that would be hard to do by allocating a whole SPU to a single task.
Q4: With streaming technologies and the included HDD in every PS3, how important is actual memory? I ask because the PS3’s OS takes up so much more of the available 512MB than the 360’s OS does.
A4: Main memory is a cache, but remember that a larger cache enables us to keep more data in memory at the same time, enabling more detail in textures. Therefore, every MB saved improves the quality of our game. We’ve solved most of our memory problems by relying on the SPEs to perform compression, both at load-time and at run-time, using techniques developed by ICE, SCEA Tools&Tech and the SCEE ATG group. So yes, memory footprint is very important to us. ...
[ http://www.ps3blog.net/2008/01/25/naughty-dog-interview/ ] ,

GamePro's interview with Jeff Morris from EPIC ;
GamePro: Unreal Tournament 3 is clearly one of the best-looking PS3 games, and your Unreal 3.0 tech is fairly new. What's the secret for developing on the PS3? Many other studios struggle with PS3 development.
Jeff Morris: Memory optimization and technological optimization are the biggest hurdles, particularly if you're coming from a PC environment. [For a console game], think of a huge slider where we [the programmers] have to make decisions for visuals versus frame rate trade-offs. On the PC, those choices are left up to the individual.
GamePro: Could you speak more about the process of memory optimization for the PS3? Strictly from a layperson's perspective.
JM: Well, the texture for a vehicle includes many different texture maps, each with their own unique detail. One of those is the "diffuse texture," which is basically a checkerboard. There is also a "specular texture," which includes the way light catches on the object, such as crinkles on a bottle. You overlay the specular over the diffuser. [To optimize for the PS3,] we say, "I bet we could combine the diffuse and the specular textures into one texture," which can [halve the memory requirements]. We look at them and put them side by side and there is almost no difference; you just can't tell in game play. Our optimization philosophy is "optimization at no visual degradation." We can also do things like reduce the polygon count of an object to one-tenth, and you can't tell the difference.
Another advantage was having the Gears of War guys come over; they knew where good memory trade-offs could be made. The PS3 has two memory chunks, one for texture detail and one for geometry complexity, so...we can't share those pools like you can on the Xbox 360. So there were two stages; get memory in line and then get geometry in line. Once we accomplished those, the optimizations rolled back into a faster PC experience [when played] on a lower-end machine.
GamePro: Interesting. So the PS3 really is closer to a PC's setup, with separate RAM pools for graphics and system memory...
JM: ...Exactly. It reminds me of old DOS memory management. You know, "I wish I could get that one kilobyte out of the texture memory and put it into the geometry memory instead."
GamePro: So the key to the PS3's potential is in its Synergistic Processing Elements (SPEs), which function similarly to small CPU cores. How do you leverage these, and can they enhance performance?
JM: Basically, the Cell's SPEs are "accelerator processors" that function in addition to the primary processors. [To take advantage of the SPEs], we look for tasks that don't require insane CPU power but could be done in the background, in parallel. There are some threads in our multi-threaded code that we can dedicate to a single SPE, and the process will run happily in background while the main CPUs are dealing with AI and game play. If you program the Cell CPU the correct way, it is like having all these simple things in parallel. That's the thing about regular PCs; computers are really dumb, but incredibly fast. PCs can perform one little logical thing like crazy [makes rapid, back-and-forth ping-pong motion], and so we need to find those little logic checks that we can kick out to the SPEs. Doing so frees up the primary CPUs from having to do those mindless, but necessary, tasks.
GamePro: That's interesting. When I ask about the PS3, lots of developers say, "Oh, well, we're still figuring it out. It's hard." You guys seem to have a real advantage on PS3 development.
JM: You have to be disciplined and aggressive on where you optimize and how you organize it. And you have to make sure that artists aren't building assets that are never going to work.

...
[ http://www.gamepro.com/sony/ps3/games/features/158468.shtml ] ...
 
Jeff Morris said:
The PS3 has two memory chunks, one for texture detail and one for geometry complexity,
Myth buster?
[To take advantage of the SPEs], we look for tasks that don't require insane CPU power but could be done in the background, in parallel.
That's just boring.
 
Would I be correct in assuming that Epic did well by way of asset optimization instead of engine optimization?

Maybe more engine optimisations instead of assets opt would have resulted in more aggresive LOD to maintain pefomance and IQ.
 
Would I be correct in assuming that Epic did well by way of asset optimization instead of engine optimization?

Well he is producer on the game not a programer. So from his perspective his teams did a lot of work on squeezing the assets down for the PS3 memory sizes.

From the engineering side the story could be quite different. His description of SPE's fails to give them their proper due. But then he probably isn't expected to know the nitty gritty of the engine so it's not his fault he just gave the text book answer.
 
M: Well, the texture for a vehicle includes many different texture maps, each with their own unique detail. One of those is the "diffuse texture," which is basically a checkerboard. There is also a "specular texture," which includes the way light catches on the object, such as crinkles on a bottle. You overlay the specular over the diffuser. [To optimize for the PS3,] we say, "I bet we could combine the diffuse and the specular textures into one texture," which can [halve the memory requirements]. We look at them and put them side by side and there is almost no difference; you just can't tell in game play. Our optimization philosophy is "optimization at no visual degradation." We can also do things like reduce the polygon count of an object to one-tenth, and you can't tell the difference.
That sounds like the PC effort is just bloat! If you can reduce the polys to one 10th, and combine two textures into one, with no visible downgrade, why not do that across the board and improve PC performance too?
 
Jeff Morris' s interview is plain dumb.

If you can reduce the polys to one 10th, and combine two textures into one, with no visible downgrade, why not do that across the board and improve PC performance too?

Looking at the Gears of War assets in the Ueditor ,it is allready there since most probably geoW xbox 360....
 
That sounds like the PC effort is just bloat! If you can reduce the polys to one 10th, and combine two textures into one, with no visible downgrade, why not do that across the board and improve PC performance too?

They probably saved some time thinking that the raw computing power of PC's are enough. I mean even mid-end PC's can run UT3 at full settings but still more optimisations would have been alright...
 
Who did the PS3 optimization ?

Team of crack ninjas from sony or team of ninjas from sony on crack?

Serioulsly, I seem to remember that someone claimed that both MS and Sony sent people to Rockstar to help with GTA and Sony also had done the same for Epic to help with UT3.
 
They probably saved some time thinking that the raw computing power of PC's are enough.
What they're talking about here is memory optimisations, which I suppose PC does have a significant advantage on with 512 MB cards fairly common. Then again, I don't have breakdown of installed GPUs. I guess most UE3 gamers will be 'hardcore' and have stronger rigs, but 256 MB cards must be pretty common out there. These have the same supposed RAM limit of PS3, and any optimizations for PS3 would benefit your PC user base too, unless you really are just targeting higher-rig PC gamers. Which as I said, may well be the case. Still sloppy though! That's been the PC's biggest drawback IMO - software could throw whatever junk at it and leave things crawling along, as the onus for speed has always been on the user to buy better hardware. Of course the upside to that has been seriously competitive hardware advances!
 
Team of crack ninjas from sony or team of ninjas from sony on crack?

Serioulsly, I seem to remember that someone claimed that both MS and Sony sent people to Rockstar to help with GTA and Sony also had done the same for Epic to help with UT3.

If that's the case why even ask Epic about PS3 development? Why not ask teh Sony ninjas?
 
Would I be correct in assuming that Epic did well by way of asset optimization instead of engine optimization?

The so called asset optimisations described in the article are allready in the PC gears of war (and i assume too on the xb360 too).

They just smartly (well ,it's not like it's something new or or not done before but artist with less experience wouldn't go spontanously there.. ) use the 3-4 channels of an RGB texture to store different diffusemaps or masks ,or whatever else.
 
Back
Top