The PlayStation 3's processor, Cell, was designed by the STI
(Sony/Toshiba/IBM) joint venture. It is composed of a PowerPC main
processor (PPE) and up to 8 co-processors, called Synergistic Processing
Elements or SPEs, all clocked at 3.2 GHz. As shipped in the
PlayStation 3, Cell has one of its SPEs disabled, so that only 7 SPEs
are accessible to most games. Moreover, when running an alternative
operating system such as Linux, the hypervisor reserves one of the SPEs,
so only 6 SPEs are accessible to applications running under Linux. Note
that this issue is specific to the PlayStation 3; blade servers using
Cell processors should have all 8 SPEs available.
Note that although Linux reports 2 CPUs per Cell, this is due to the PPE
being a 2-way simultaneous multi-threading (SMT) design, roughly similar
to the Hyperthreading technology used in Intel's Pentium 4 CPUs. This
means the operating system sees each CPU as 2 distinct CPUs, but
physically these CPUs share the majority of execution resources and
generally cannot perform at twice the rate of a single CPU. Moreover,
since our cores already exploit all available PPE execution resources in
a single cruncher, while relying on precise instruction scheduling, it
has been observed that running multiple PPE crunchers simultaneously on
the same physical PPE has a negative effect on performance. Therefore
running multiple PPE crunchers in a single Cell is disabled in this client.