(Note: on PS3 I think everybody just gave up and transformed the verts using the SPU's so that almost all the register space on the GPU was primed towards pixel-ops. You do something similar on other platforms, especially for skinned characters; instead of running them through the normal pipe-line, you run them through a vertex stream-out operation to skin the verts only once).
Playstation 2 VU0 - 3.01GFLOPS
Gamecube - ~8.0GLOPS
The GC looks impressive (and it is) but keep in mind that a lot of that is used up by transforming the same vertex multiple times. The PS2 didn't to this (well...it did but maybe only every 12th vertex depending on your VIF packets and memory layout), however; you had to clip triangles yourself on VU1, but there a few tricks you could do to make it really fast. Also, you could use VU1 as a sort of geometry shader. See the foliage on Transformers and MGS3 as an example of this. You could generate complex geometry on the fly, and if you did this in clip-space; the cost was much, much lower than transforming the vertex.
I'll just add; a more powerful system or better looking graphics doesn't mean better games. The more time that you spend on managing technical risk, the less time you spend writing an actual game. And with PS2, it was nothing BUT managing technical risk. Gamecube and Dreamcast were different though. The programmer part of me loved the PS2. But the Game Developer part of me loved the Gamecube and Dreamcast.