Spare CPU time equals wasted CPU cycles (you're just putting what I said in different words). Do you think they're wasting cpu cycles to let the Cell catch its breath? No, they're wasting cycles because they have to. Smart engine design can decrease the amount of wasted cycles, but look at how much is still wasted even on KZ2's engine which is the product of so many years of work. Game engines aren't fully parallelizable, because rendering a game frame is a complex process with interdependent phases. Some of them have to be run sequentially and that means wasted CPU cycles.
Two rough examples for illustration (details may vary between engines):
1- You can't start rendering an object before you know where it is (i.e. before physics run). If the object is an AI-controlled NPC, the AI routine has to run first in order to decide where it is and what animation it's performing.
2- Objects often interact with each other in the physics engine, which means there are interdependent calculations taking place.
Sharing code doesn't mean using the same engine, and it doesn't mean each of their engines are flexible and general enough for easy usage in other games.
No, but if they have a truly great and flexible PS3 engine they can sell it (like Epic does).
And also compared to other CPUs, as it gets about 1 GFLOP/s/core at 3.2 GHz. That's not impressive. It's OK if your code is parallelizable though.
My Mario Kart Wii friend code: 2707-1866-0957