According to IBM the bulk of the PS3's processing power is located in Cell's SPEs. Without using them games development is very similar to developing a game on a decent specced single processor PC or Mac (So not really difficult at all like some developers claim, funnily those who do not even use the SPEs in the porting process! This should then actually be pretty straight foward, with of course the advantage of being able to optimize for a single uniform configuration). PS3 exclusive devs who are using the SPEs claim it's not that difficult to develop for and that it's much easier to develop for than for the PS2. Considering more and more games start to utilize these SPEs I thought it would be interesting to list those games.
SPE usage doesn't per se make a good game, neither not using them per se makes a bad game, for example simple games such as distributed on the PSN don't really need that much performance with the exception of games like Super Stardust HD, which is quite impressive with so many effects and things going on at once. However IMO for games which greatly depend on performance, not using the SPEs (enough) IMO don't make these games genuine PS3 games to judge the power of the platform on, but should rather be viewed as far from optimal ports.
Beyond3D Motorstorm interview: "Scott Kirkland: Cells SPUs provide a huge amount of processing power. Early adopters tended to bias usage towards either RSX or PPU support (we fall into the latter category). Im confident that over the coming months, exploitation of this resource will become far more balanced."
PS3 games that are known to use the Cell's SPEs:
1) Resistance: Fall of Man
"Animation and calculating collisions between objects are perfect fits, says Hastings. So those are the primary jobs Resistance doles out to the SPEs.."
Source: Spectrum online
"SPU System:
Animation
Audio (NextSynth and LR1)
Bucketer sort
Collision (separate broad and narrow)
Dynamic DB
Dynamic joint
FX update
Geom Cull Clip (for shadows and decals)
Glass
Moby constants
Physics collision
Physics simulation
Particle (weather fx)
Render mats
Static DB
Water (FFT)
10-20% total SPU utilization" (uses 5 SPEs, Resistance 2 uses 6 SPEs)
http://www.insomniacgames.com/tech/articles/0108/files/RFOM_Debriefing_public.pdf
2) Resistance 2
"Propriety game systems are now being heavily farmed out to the PS3's SPUs, keeping the central PPU as a sort of traffic cop that organizes what gets attention at any given moment. In simple terms, the game is taking much better advantage of the untapped potential of the console. In regard to visuals, the expanded use of the SPUs means more enemies on screen, significantly more complex AI from all of those foes and dramatically expanded options for special effects."
Source: Game Informer
3) Ratchet and Clank Future: Tools of Destruction
"We were using the SPUs and that's a key to having a game that runs fast on the PS3, but there were a lot of things that we knew we could improve, and we have been improving them on Ratchet. And even with Ratchet, we're still seeing more and more things we can do; it's kind of like peeling off the layers of an onion."
Source: Gamedaily
"We are continuing to build our Insomniac Engine and have made many improvements to it since Resistance: Fall of Man. The one huge focus for us has been moving more of our processes over to the SPUs on the CELL processor. This has allowed us to get our physics and effects systems running roughly four times faster than it did in Resistance at nearly double the framerate, which is something you can see in weapons like the Tornado Launcher."
Source: The New Zealand Herald
Insomniac Games SPU Shader Presentation (PDF)
4) Motorstorm
"SPU usage is a good example. The progressive development of corresponding debugging and profiling tools made thorough exploitation of this powerful resource quite challenging for the less technically biased members of the team. In the aftermath of MotorStorm, with mature tools at our disposal, weve been developing mechanisms to make the PPU and SPUs power and parallelism far more accessible to our entire team, re-thinking data organization and algorithms in the process. MotorStorm only uses between 15 and 20 percent of available SPU resource, so were aiming to achieve a 5 fold increase in SPU performance, which should allow us to do some awesome stuff!"
"Our SPU exploiting systems consist of:
i) Havok physics.
ii) Determination of object visibility.
iii) Concatenation of hierarchies.
iv) Billboard object culling and vertex buffer creation.
v) Updating of particles and vertex buffer creation.
vi) Updating of vehicle dynamics.
vii) Updating of vehicle suspension constraints.
viii) Audio (MultiStream).
ix) Video decoding."
"If by cooperative rendering you're referring to SPUs supporting the RSX, I strongly believe that this approach will become far more widespread. In addition to reducing the vertex load on the RSX through the use of culling and vertex pre-processing, this approach also provides an efficient mechanism to introduce procedural geometry.
Historically, CPUs have provided course grain scene culling using view frustums, occlusion planes, portal visibility and BSP-trees with GPUs left to perform fine grain rejection using guard band clipping, occlusion and backface culling. While such features improve fragment performance, they don't reduce vertex processing overhead.
The leap in performance provided by Cell gives us the bandwidth to significantly reduce RSX time spent processing vertices that don't contribute to the final scene. The favoured approach is to use SPUs to generate minimal scene/instance specific index and vertex buffers from compressed data."
Source: Beyond3D
5) Formula One Championship Edition
"We don't really use the concept of reserving certain SPUs for specific tasks. Instead we employ the concept of prioritized job lists that are executed by the SPUs whenever one is available. We use the SPUs for the following jobs: audio effects, particle system, physics (landscape collision, narrow phase and collision resolution), rain effects (rain droplets and rain splashes) and various render side jobs. The game logic is driven largely by the PPU. We use the SPUs together to collaborate on working through each frame that's displayed by the game. The SPUs are extremely versatile so they can be used to accelerate any in-game system."
The SPUs are heavily involved in the graphics pipeline and do an enormous amount of work to eliminate inefficiency before anything arrives at the PPU and RSX. For example, the SPUs are powerful enough to decompress and check every triangle [polygon] before passing it on to the RSX. Triangles that are facing away from the player, or that are not on the screen can be 'trimmed' away by the SPUs, which hugely reduces the amount of redundant work sent to the RSX. This in turn lets the RSX get on with what it does best--drawing stuff on screen.
The SPUs can also be used to augment the RSX vertex shaders, making far more vertex-heavy tasks possible which is very useful for character animation. Additionally, the SPUs can be used to implement behavior very similar to geometry shaders--F1 CE uses them in this way to render seamless interpolated levels of detail for some scene elements. So in answer to the question "Do the Cell and RSX work together?" the answer is a resounding "Yes," and I think this is one of the real strengths of Playstation 3 that we'll see increasingly exploited by development teams going forward.
Source: Newsweek
6) Super Stardust HD
"We are able to get over 10,000 active objects with physics and collisions and over 75,000 particles simulated and drawn @60fps. That said, we were unable to use all the available processing power from Cell for this game, so for the next game there are still plenty of reserves left"
Source: IGN
7) Heavenly Sword
"In Heavenly Sword, the Cell enables incredible numbers of enemies to be on screen at one time. The trick is that Cell treats entire regiments as a single unit of artificial intelligence when they are at a distance; as they draw closer, Cell gradually divides the army into smaller and smaller groups, so they eventually become individual troops with unique fighting styles and tactics."
"Heavenly Sword is one of the first PS3 games to tap into Cell's true potential. Here are the highlights.
Artificial Intelligence To keep up with the hundreds of on-screen enemies, Cell treats distant armies as a singlular "hive mind." As they approach Nariko, Cell splits their intelligence across squads, and finally, individual troops.
Graphics Wind gusts swirl Nariko's hair and clothes, and bazooka blasts send out showers of dust and rubble. 1080p support is still a question mark, though.
Physics When firing a cannon, Nariko can influence the trajectory of the projectile using the Sixaxis. Ninja Theory claims it needs the Cell to handle these complex calculations."
Source: Gamepro
"Personally I really love the SPUs as they have exceeded our performance expectations and we've got a lot of them to play with."
Source: Eurogamer
"In terms of graphics, we use the SPU as a form of object processor. So essentially everything up to and including the production of RSX's command stream probably has a module on SPU to help.
This includes,
1. A module that does a lot of object level clipping and culling both for the view frustum and ths shadow maps. Its job is per frame to calculate how big each shadow map should be in world space and what objects needs rendering in each map.
2. Animations, using ATGs (DeanA team) animation library, every animation is blended and bones updated.
3. Blend shapes, a custom module that handles facial animations
4. Skin matrices, even after animation there some work required to get them into the format used by the GPU vertex shader.
5. Flags, a simple verlet based simulation used for the flags in the game
6. Cloth & Hair, a constrained physics solver used for simple chains that are then rendered as Nariko's cloth and hair
7. Pushbuffer generation. This produces the commands used by RSX to actually render the scene. Has a number of optimisers to reduce redundent state changes.
Probably a few i've missed. Essentially a normal skinned or non-skinned character costs very little PPU time and virtually all processing is done on SPU and RSX. Its this that allows us to render the army scenes for example.
We do no per triangle work on the SPU, we let RSX do that, we however do try and prepare things on the SPU for RSX."
Source: Beyond3D forum
8) Lair
"We have all of our animations running on the S.P.U.s of the Cell's chip because you couldn't draw armies or basically animate armies of that amount and size without it. And our physics are completely on there. We are also doing fluid dynamics for the first time in a game, as far as I know. Water is not basically a sheet of a base surface, but completely animated and sub-divided, and you actually can direct with it thanks to the Cell. We actually do part of our rendering on the Cell. Simply because it's so powerful, we spent months and months moving more and more systems onto the S.P.U.'s."
"Not a specific S.P.U. Our S.P.U. code works dynamically, so we are not locking up one S.P.U. and saying "OK, you are the A.I. S.P.U., but we instead say, "OK, here are these 15 things including A.I." We run them on the S.P.U., and the code automatically distributes them. And sometimes, yes, A.I. certainly can take up a full S.P.U."
Source: Gamepro
9) Killzone 2
"In this talk, we will discuss our approach to face this challenge and how we designed a deferred rendering engine that uses multi-sampled anti-aliasing (MSAA). We will give in-depth description of each individual stage of our real-time rendering pipeline and the main ingredients of our lighting, post-processing and data management. Well show how we utilize PS3s SPUs for fast rendering of a large set of primitives, parallel processing of geometry and computation of indirect lighting. We will also describe our optimizations of the lighting and our parallel split (cascaded) shadow map algorithm for faster and stable MSAA output."
Source: Killzoneunit
"We've created our own proprietary technology to drive the game, and this is using many of PS3's specific strengths.Large quantities of data can be streamed because we have a great deal of storage capacity. This allows for the level of detail you can see in the game.
It is not a luxury to have Blu-ray, but rather a necessity, as compression only gets you so far. I mean, the level that we showed at E3 and Leipzig topped out around 2GB! Also having the CELL and SPUs means we can offload all of our physics processing to an SPU, or process AI using the SPU's. All this processing power just means we can add more detail and create that Hollywood-type realism we're after."
Source: GamePro.com
I think the following article sheds more light on how the SPEs are currently used in Killzone 2, and addresses the advanced deferred rendering techniques Guerrilla Games already implemented for the game so far.
Deferred Rendering in Killzone 2 (PDF)
10) Final Fantasy XIII
"The White Engine reportedly uses four of the six developer-available synergistic processing elements (SPEs) of the Cell microprocessor to achieve near-pre-rendered CGI quality in realtime."
Source: Play UK through Wikipedia
11) Gran Turismo 5
12) Warhawk
"Although I would say its the sum-total of all of our natural phenomenon in the game. Our clouds, procedural water, atmospheric scattering, terrain, etc. All of this stuff runs in parallel on all 7 SPUs simultaneously every frame Im still not sure if the game community is giving enough credit to just how fast the SPUs really are."
Source: PS Blog
13) Unreal Tournament 3
"Also, Epic isnt a huge company. They dont have unlimited resource. We have parachuted in some of our SWAT team of super engineers to help them. Specifically, to optimize for SPUs, which are the point of difference that the Cell Processor has. That process is under way. The benefits that it yields to end developers whether theyre writing exclusive titles or multiplatform titles is that the performance on PS3 goes up exponentially, and it will make for a much better game experience."
Source: GameInformer (Phil Harrison)
14) Uncharted: Drakes fortune
"Like the PS2 the PS3 is a sophisticated and powerful piece of hardware. Our engineers are working very hard at making specific optimizations to take full advantage of the Cell and its SPU's. However, there is so much depth to this machine, that much like the PS2, you will continue to see developers squeeze more and more out of it over the course of what I am sure is going to be a lengthy life-cycle."
Source: IGN
"We are utilizing all SPUs in Uncharted for AI, animation and lots of other systems. We are however just starting to tap into the power of the Cell. In future games I can promise even more utilization of the Cell which will result in more of everything, including game play."
Source: Ars Technica
"As far as the Cell processor is concerned, we're actually using about a third to half of that right now, so there's still a bit of untapped potential there."
" I would say number one thing is animation, and the fact that the Cell processor has so much raw horse power that you could just throw more and more at it and it doesn't break a sweat. Our animation system is very complex, and we layer on dozens of frames of animation so you have that fluidity of movement where Nathan Drake can be running across a courtyard, stumbling over a rock as he's ducking under a hail of gunfire, reloading his weapon and rolling into cover, and all of these animations can happen simultaneously. "
Source: GameSpot
"The PlayStation 3 has a lot of power. When we started Uncharted we were really ambitious and had no idea what the PS3 would give us. Once we got the first devkits, we realized quickly that we could do everything we had planned to. The three main points for me are the Cell, Blu-Ray and the hard drive. Weve been using the Cell for pretty much all our systems: rendering, particles, physics simulation, collision detection, animation, AI, decompression, water simulation, etc
and to give you an idea of the power of the PS3, we're using only 30 percent of the Cell processor.
In terms of Blu-Ray, we just couldnt have made Uncharted without it; with Uncharted we have almost filled it (91 percent). We're also using the hard drive to pre-cache data from the Blu-Ray disc. That allows us to stream up to 12 streams for sound, load level data super fast and more importantly to stream textures constantly to guarantee high-res quality on the screen. "
Source: Ars Technica
"Basically, in Jak I we had somewhere in the vicinity of 300-350 animations for Jak and everyone was really happy with the fluidity of his movement and the response. In Uncharted, Drake has got more than 3500 animations and the difference is we're now taking the cell processor and we're taking say two dozen of those animations, like we've got his running animations, flinching animations, reloading animations, rolling animations, just dozens of animations all at once being layered on top of each other and then the cell processor recreates on the fly the single frame of animation that you need to be able to play the game at that moment and the fact we can just dump more and more work on that processor and its SPUs just means we can free up our CPU to do more general purpose tasks. "
Source: PALGN
"Weve 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."
Source: PS3Blog.net
"One of our first goals when we started Uncharted: Drake's Fortune was to push what's been done in animation for video games. We developed a brand new animation system that took full advantage of the SPU's. Nathan Drake's final animation is made of different layers like running, breathing, reloading weapons, shooting, facial expression, etc; we end up decompressing and blending up to 30 animations every frame on the SPU's."
"The main thing about the PlayStation 3 is the Cell processor and more specifically the SPU's. We are only using 30 percent of the power of the SPU's in Uncharted. We've been architecting a lot of our systems around this and we were able to take full advantage of that power. A big part of our systems is running on SPU's: scene bucketing, particles, physics, collision, animation, water simulation, mesh processing, path finding, etc. For our engine, the cool thing about having the SPU's is the fact we can minimize what we send to the RSX (the graphic chip), it allows us to reject unnecessary information and get the RSX to be very efficient. "
"We are constantly streaming animations, level data, textures, music and sounds. It would have been impossible to get this amount of data at that speed to memory without the hard drive. And of course on top of that we use the SPU's to decompress all this data on the fly."
Source: Playstation Universe (PSU)
15) Infamous
"For us, the most exciting part of the PS3 has been the cell processor, the SPUs specifically. In our highest density scenes right now, we are currently using about 30 percent of the SPUs' capabilities--with the SPUs doing lots of heavy lifting for us on rendering, visibility, particle systems, skinning, animation blending, and so on...this with scores of pedestrians, cars, fires, etc., all going on. And the best part? We've not made any significant attempts to even optimize the SPU code. I think it's reasonable to guess we could put 10 times as much stuff on the SPUs and still make our frame budgets. It's really pretty amazing."
Source: Gamespot
16) The Getaway 3
Presentation sheets
Presentation video (ZIP)
17) LittleBigPlanet
We went multiprocessor from the beginning, went multicore, and not having legacy code to hamper that code was such a blessing."
Source: Gamasutra
18) Metal Gear Solid 4
"I would also like to challenge the PS3's CPU power for not only what you can see, but also psychological effects, or psychological battles, where it can affect your gameplay."
Source: Eurogamer
List continues in post 32