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

Forums - Sony - PS3 used to crack passwords

MikeB said:
@ Entroper

Of course, but that counts for both CPUs. Each game will have different requirements (resolution, effects, things going on simultaneously, optimizations, etc) it's difficult to use games as a benchmark other than statements from developers regarding that specific game (Resistance less than 10%, Uncharted ~30%).

In any case it just shows it is achievable (system bandwidth and general design in the PS3 is efficient enough to get the most out of the Cell).

I see what you're saying.  But in absence of similar tests done on the Xenon, it's not very conclusive as far as drawing a comparison.  It's no surprise that MS hasn't published a similar test; the Xenon is not marketed for high performance parallel computing applications.

The Xenon cores do have "their own memory" to work with, it's just called "L2 cache" rather than "local store", and its use is transparent rather than explicit.  I realize it has less bandwidth and that the GPU can lock it, but it's not as if all three cores and the GPU will be in contention for the bus on each read.  You can optimize for cache utilization on a symmetric multi-core system just like you can on an asymmetric one; the difference is that you aren't explicitly starting DMA transfers to the cache in the symmetric system.  Project 2 in that same class I told you about earlier was optimizing the matrix multiply for a consumer-level CPU, using exactly this technique.



Around the Network
Entroper said:
MikeB said:
@ Entroper

Of course, but that counts for both CPUs. Each game will have different requirements (resolution, effects, things going on simultaneously, optimizations, etc) it's difficult to use games as a benchmark other than statements from developers regarding that specific game (Resistance less than 10%, Uncharted ~30%).

In any case it just shows it is achievable (system bandwidth and general design in the PS3 is efficient enough to get the most out of the Cell).

I see what you're saying. But in absence of similar tests done on the Xenon, it's not very conclusive as far as drawing a comparison. It's no surprise that MS hasn't published a similar test; the Xenon is not marketed for high performance parallel computing applications.

The Xenon cores do have "their own memory" to work with, it's just called "L2 cache" rather than "local store", and its use is transparent rather than explicit. I realize it has less bandwidth and that the GPU can lock it, but it's not as if all three cores and the GPU will be in contention for the bus on each read. You can optimize for cache utilization on a symmetric multi-core system just like you can on an asymmetric one; the difference is that you aren't explicitly starting DMA transfers to the cache in the symmetric system. Project 2 in that same class I told you about earlier was optimizing the matrix multiply for a consumer-level CPU, using exactly this technique.


The Cell has cache memory as well. However the local memory stores are fully dedicated to each SPE processor and although this memory operates as fast as cache memory it's very different in usage, allowing them to operate independently (on one hardware thread and any number of software threads).



Naughty Dog: "At Naughty Dog, we're pretty sure we should be able to see leaps between games on the PS3 that are even bigger than they were on the PS2."

PS3 vs 360 sales

MikeB wrote:

To Devs (of performance demanding games): Do yourself and your consumers a favour and tap into this enormous potential, eventually you will look incompetent in the eyes of your consumers. Uncharted and Ratchet & Clank: Tools of Destruction are technically the most impressive games currently available, consumers won't accept much longer subpar game ports, make the PS3 your lead platform and you will understand it's actually easy to develop for and the burden of having to write cleaner and smarter code will potentially make your XBox 360 ports run better as well (by keeping an eye on common strenghts and weaknesses and only add to the PS3 version where it doesn't severely affect the core game engine to be ported over to the XBox 360).

Just read a comment by a developer working for a multiplatform games company, he admitted their initial games were just "quick & dirty ports from 360":

"We all agree given the time we'd like to architect for the SPU's first then work back... giving us cache-friendly algorithms by design "

So, the mindset amongst developing companies already seems to be changing. Apparently they still are leading a game on the XBox 360, but that should eventually change for the better for both platforms in course of time.



Naughty Dog: "At Naughty Dog, we're pretty sure we should be able to see leaps between games on the PS3 that are even bigger than they were on the PS2."

PS3 vs 360 sales

MikeB said:

The Cell has cache memory as well. However the local memory stores are fully dedicated to each SPE processor and although this memory operates as fast as cache memory it's very different in usage, allowing them to operate independently (on one hardware thread and any number of software threads).


This is starting to get into doublespeak again.  My intent was just to clarify that there is a cache on Xenon that the cores can work with locally, so let's move on.

Actually, your quote about cache-friendly algorithms is exactly what I was talking about.  Since you have to explicitly begin each DMA transfer, it basically forces you to think in terms of using the cache.  You can still think in these terms on a symmetric system, but you don't have to in every place in your code, just the most important chunks.  That's why it's a double-edged sword.



Again, this is slipping in to best case criteria. What happens if a thread needs more memory than its dedicated block?

And with you percentages, again, a TYPICAL game can't be programmed to use 100% of the cell, unless its a matrix multiplication game ;)



I am a Gauntlet Adventurer.

I strive to improve my living conditions by hoarding gold, food, and sometimes keys and potions. I love adventure, fighting, and particularly winning - especially when there's a prize at stake. I occasionally get lost inside buildings and can't find the exit. I need food badly. What Video Game Character Are You?

Mega Man 9 Challenges: 74%

Waltz Tango Jitterbug Bust a move Headbanging
Bunny Hop Mr. Trigger Happy Double Trouble Mr. Perfect Invincible
Almost Invincible No Coffee Break Air Shoes Mega Diet Encore
Peacekeeper Conservationist Farewell To Arms Gamer's Day Daily Dose
Whomp Wiley! Truly Addicted! Truly Hardcore! Conqueror Vanquisher
Destroyer World Warrior Trusty Sidearm Pack Rat Valued Customer
Shop A Holic Last Man Standing Survivor Hard Rock Heavy Metal
Speed Metal Fantastic 9 Fully Unloaded Blue Bomber Eco Fighter
Marathon Fight Quick Draw G Quick Draw C Quick Draw S Quick Draw H
Quick Draw J Quick Draw P Quick Draw T Quick Draw M Quick Draw X
Around the Network
CrashMan said:
Again, this is slipping in to best case criteria. What happens if a thread needs more memory than its dedicated block?

And with you percentages, again, a TYPICAL game can't be programmed to use 100% of the cell, unless its a matrix multiplication game ;)

Well I don't know very many modern programs that can run entirely in 256 kB of memory.  But this is the case on an ordinary symmetric architecture, too -- most programs can't fit all their code and data into the L2 cache, so they have to access main memory.  The crucial difference is that an L2 cache is transparent; the programmer doesn't have to think about it.



@ Entroper

This is starting to get into doublespeak again. My intent was just to clarify that there is a cache on Xenon that the cores can work with locally, so let's move on.


Having cache on a CPU is pretty much standard, I just wanted to emphasize where the Cell's distinction and strength lies. With regard to the Xenon, the 3 cores share the 1 MB L2 cache.

BTW, what is your opinion with regard to what has been achieved so far in games like Ratchet & Clank: TOD and Uncharted, have you played them? And current projects like Killzone 2 based on what we have seen so far? And where do you see PS3 exclusive gaming 1 or 2 years from now as more of the legacy code moves onto the SPEs?

Coming from an Amiga background (huge demoscene and devs still hand optimizing their software to get good results on aging hardware) I think the initial difficulties will all be overcome fairly soon, the best devs are usually very ambitious, would like to push to extremes and impress. The guys behind the excellent Super Stardust HD (love this game, I am amongst the 0.1% best ranked players, hardcore mode is just insane with thousands of asteroids colliding and re-directed at insane speed!) are Amigans in origin and made a great achievement with their small team already and will push much further with their next game, I think the early achievements developing companies like Insomniac, Housemarque, Naughty Dog have rolled out will drive others to do the same.



Naughty Dog: "At Naughty Dog, we're pretty sure we should be able to see leaps between games on the PS3 that are even bigger than they were on the PS2."

PS3 vs 360 sales

Entroper said:
CrashMan said:
Again, this is slipping in to best case criteria. What happens if a thread needs more memory than its dedicated block?

And with you percentages, again, a TYPICAL game can't be programmed to use 100% of the cell, unless its a matrix multiplication game ;)

Well I don't know very many modern programs that can run entirely in 256 kB of memory.  But this is the case on an ordinary symmetric architecture, too -- most programs can't fit all their code and data into the L2 cache, so they have to access main memory.  The crucial difference is that an L2 cache is transparent; the programmer doesn't have to think about it.


That's my point, IF you have memory spill over, there is another determing factor in the efficiency of a game running on the cell.  A matrix multiplication really won't show this effect.

 Just another point to strengthen my argument that we need more real data, not lab results of best cases.



I am a Gauntlet Adventurer.

I strive to improve my living conditions by hoarding gold, food, and sometimes keys and potions. I love adventure, fighting, and particularly winning - especially when there's a prize at stake. I occasionally get lost inside buildings and can't find the exit. I need food badly. What Video Game Character Are You?

Mega Man 9 Challenges: 74%

Waltz Tango Jitterbug Bust a move Headbanging
Bunny Hop Mr. Trigger Happy Double Trouble Mr. Perfect Invincible
Almost Invincible No Coffee Break Air Shoes Mega Diet Encore
Peacekeeper Conservationist Farewell To Arms Gamer's Day Daily Dose
Whomp Wiley! Truly Addicted! Truly Hardcore! Conqueror Vanquisher
Destroyer World Warrior Trusty Sidearm Pack Rat Valued Customer
Shop A Holic Last Man Standing Survivor Hard Rock Heavy Metal
Speed Metal Fantastic 9 Fully Unloaded Blue Bomber Eco Fighter
Marathon Fight Quick Draw G Quick Draw C Quick Draw S Quick Draw H
Quick Draw J Quick Draw P Quick Draw T Quick Draw M Quick Draw X

@ CrashMan

While working with the Cell's SPEs, you will work with continuous feeds of datachunks, this is not a major limiting factor and a reason why the EIB bandwidth is so high. If you have larger chunks (which would be a lot of data!), then you just need to break it up. The store size does not limit the amount of work you can do, just the amount of work you can do at a time. I guess many devs are used to this approach as the PS2's VUs only had 4k/16k on them.

Also to quote Beyond3D staff: "People don't seem to realize how much 256 KB is, in this age of 1/2 GB RAM - there's no context. 256 KB is as much as the original Amiga launched with; a computer that could do graphics, word-processing, music editing, ray-tracing etc. It's memory was limiting, mostly because you didn't have much room for data. There weren't any applications it couldn't do due to lack of room for code."

For our youngsters who don't what an Amiga is:

http://youtube.com/watch?v=yckH20ngY4Y (cheesy 80's clip)

http://youtube.com/watch?v=qSA-q1qniMY (what AmigaOS is today running on old computers, including those well over a decade old) 

256 KB of code is an extraordinary amount for a task. Unless you're trying to run full applications (and you could get a nice graphics editor into 256 KB...) with zillions of features, your greatest concern by far will be streaming data."

I had a somewhat similar discussion in here with regard to main memory, with me explaining that the main memory is more than large enough for the long run while streaming more data such as textures (an important technical game engine difference between R&C TOD and Resistance, the latter probably only streamed audio) and Blu-Ray disc giving the PS3 the advantage of being able to stream much more data.



Naughty Dog: "At Naughty Dog, we're pretty sure we should be able to see leaps between games on the PS3 that are even bigger than they were on the PS2."

PS3 vs 360 sales

MikeB:

I had a somewhat similar discussion in here with regard to main memory


Here it is:

I will give you an example, the c64 had 64k of memory. That's a limitation for the amount of game engine, graphics & sound data you could produce if you loaded the game in one go as was usually the case during the system's early stages (lenghty tape loads). Later games broke up the game loading for the various levels, so they allowed for 64k max per level, you can look at games like Turrican 2 or Creatures 2 to see this approach allows for far more complex and diverse graphics and sound.

Now streaming is more advanced than that, you free up unneeded memory (previous areas, enemies, sounds, and such) and load new data into memory while actually playing the level. Resistance & Motorstorm for example performed music streaming, but loaded all the graphics data for the level into memory in one go, in this regard Ratchet and Clank: TOD is more advanced as the game also streams texture data.

Maybe now you understand the relationship between, system memory and storage memory with regard to streaming possibilities. You simply don't need to keep all that data in memory at once, thus a couple of hundred megabytes of combined system RAM is sufficient if take advantage of the PS3 hardware, the system has more than enough bandwidth, processing power and data storage capacity to take advantage of.


To Devs: Although multi-platform PS3/360 games will never get to most out of the PS3, there are still ways to distinguish the PS3 version:

MikeB wrote:

XBox 360 / PS3 mutliplatform games are unlikely to ever push the PS3 to the max, as they will most often likely to stick to 5.1 audio, not use the harddrive, keep the amount of data to fit on a DVD as well, not use to much of the SPE processing potential to keep the game portable tot the XBox 360, not make too much use of the Sixaxis, etc. So many potential sacrifices are likely to be made.

To clarify with regard to the potential sacrifices, some sacrifices would rather relate to additional production costs than real problems relating to cross platform developement:

- With regard to 7.1 audio it should be no problem to create 7.1 audio for the PS3 version and downgrade the quality to 5.1 audio for the XBox 360.

- With regard to harddrive usage, you could use this but you would still have to worry about the game core running well enough on the XBox 360 core. Thus you cannot make your game dependent on this approach.

- With regard to Blu-Ray you can add additional levels and such, but the same issues arrise as with regard to the harddrive. If you break up your game using multiple DVDs publishers will have to take into account additional costs, probably mainly relating to game design, you will have to adapt the game and probably duplicate much of the game on the discs to create a more seamless user experience and prevent too much disc swapping. This is less an issue with highly linear games but for a game like God of War 2 which would take up at least 14 CDs (instead of 1 DVD) this would be very annoying, likewise as with other games which allow you to revisit prior locations. For games more non-linear games like GTA and OBlivion this will present to be a problem.

- With regard to SPE processing power, it would be easily possible to create additional effects for the PS3 version, but you will have to take into account some things, like in Heavenly Sword you have thousands of enemies on screen at once and to recreate this on the XBox 360 would be problematic. So this more relates to game complexity rather just added bells and whistles.

- With regard to Sixaxis usage, you will have to worry about this functionality being playable well enough with an analog stick as well. For example in R&C: TOD you can control ratchet while simultaneously controlling tornados as well as being able to move the camera position, such an approach wouldn't be an option.



Naughty Dog: "At Naughty Dog, we're pretty sure we should be able to see leaps between games on the PS3 that are even bigger than they were on the PS2."

PS3 vs 360 sales