with respect, the powerpc is a very different beast to the arm. Arm truly IS a reduced instruction set (risc) processor, and gets a lot less done per clock than powerpc which has all manner of out-of-order execution pipelining logic.
arm is very much geared to power saving, powerpc isn't! Otherwise, Apple would have used the powerpc or derivative in the Newton!
Ok, that is a good point. A 400MHz PowerPC G4 has a full FPU (not to speak about AltiVec) while an ARM processor has to usw a floating point library. And the new one with gcc 3.4 is IMHO not yet in use on the Zaurus.
And, secondly, an Apple has an additional GPU to do most of the windows and rendering. Has also to be done on the ARM in the Zaurus.
that said, a good compiler should be able to shrink the performance gap between arm and ppc. lets face it, the good old amiga ran a fully GUI multitasking OS in 512K memory (half rom, half ram) with an 8MHz 68000!
Yes, that is essentially my main point - improving algorithms (the inner loops wasting too much time - and missing caching algorithms) can have a large effect. And we have not really touched that in the QuantumSTEP project because we based on an older GNUstep system.
But that one has its roots in the NextStep system which also did run an 68040 with 16 or 32MHz (do not remember).
From all that I conjecture that most time is wasted in handling string comparisons and conversions. And, the QuantumSTEP runtime system is based on an old X11 server that requires a separate ztsd daemon to properly debounce and translate the Zaurus touch screen events (which comes into process priority conflict with everything else slowing down dramatically). Maybe something to replace by X/Qt which is unfortunately too much in Japanese for my language level...
So, there is plenty of room for software improvements (btw. the AppKit and Foundation libraries of QuantumSTEP are open source, LGPL).
-- hns