Linked by Thom Holwerda on Fri 6th May 2011 22:41 UTC
Games "It all began when a young man named George Hotz began to work on the PlayStation 3, trying to gain access to the machine in a way that made Sony uncomfortable. In response, Sony removed the OtherOS functionality of the PlayStation 3 in a mandatory update, and the hacking community was not happy with this decision, resulting in a sort of cold war. PS3 hackers have once again gained the upper hand: Linux has been returned to the PlayStation 3."
Thread beginning with comment 472270
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[12]: Wonderfully uninformed
by Alfman on Sun 8th May 2011 17:21 UTC in reply to "RE[11]: Wonderfully uninformed"
Alfman
Member since:
2011-01-28

I thought the PS3 supported two PPE threads but I can't find that info now. Maybe that is wrong.

http://en.wikipedia.org/wiki/Cell_%28microprocessor%29

Both SPEs and PPEs are programmed in C/C++.

I'm not sure what limitations, if any, there are for running C code on the SPEs. I see no reason they cannot be used to execute non-SIMD aware code.

It also seems plausible in theory that the compiler could convert some serial code to SIMD like ICC does with SSE.

Reply Parent Score: 1

RE[13]: Wonderfully uninformed
by ba1l on Mon 9th May 2011 04:32 in reply to "RE[12]: Wonderfully uninformed"
ba1l Member since:
2007-09-08

The SPEs are isolated from one another and from the PPE, have no shared memory, no operating system, the entire working set has to fit in 256KB, and you must do communication with the PPE using mailboxes and DMA.

You might be able to run some plain C code on the SPE, if it can fit onto the SPEs, and doesn't need the operating system. It's unlikely to even be as fast as running it on the PPE, and the PPE can be beaten by, say, a first generation Core 2. It'd just be wasting most of the SPE's potential.

You'd have to rewrite for the SPEs, using explicit vectorization. It's the only way to make good use of the SPEs.

You can actually use OpenCL on the Cell, which generates code to run on the SPEs. No idea if that's better - my PS3 can't run Linux anymore, so I can't try it out. OpenCL is certainly easier to use, but has a different programming model (MIMD, rather than SIMD).

Reply Parent Score: 2