ARM began as a simple sleek design influenced by 6502 and RISC. Gradually, ARM has become semi-CISC and bloated, with 64-bit extensions, three FP architectures, vector FP, two 16-bit modes, removal of Thumb mode, etc.

One of ARM's interesting features is (or was) "conditional instructions". An opcode fields specifies a condition such as EQ or NE, then execution of instruction becomes conditional. That is, instruction becomes a NOP if condition is false. So this eliminates a jump/branch instruction and pipe-line stall from mispredicted branch.

  CMP   R1, R2
  ADDEQ R3, R4

  CMP   AX, BX
  JNE   over
  ADD   CX, DX


IBM PowerPC 601 microprocessor

"PowerPC" was an extinct branch of IBM's "POWER" RISC architecture. Extinction was caused by being slower than 80x86 while running too hot. Despite being classified as a RISC design, it had hundreds of named instructions.

Design of PowerPC virtual memory was convoluted, based on hashing, with "segment registers" to complement page structures. This was so slow Apple provided a system call for Mac programs to disable virtual memory.

Author benchmarked his 3D engine in ~2007. Possible interpretations from this are how a new graphics card can speed an old slow system, PowerPC systems weren't nowhere as powerful as Apple hyped.

FPS    FPS    
peak:  norm:  machine:                        OS:            graphics:                      compiler:
4,900  2,500  AMD64 X2 2.2 GHz                Linux x86-64   Nvidia GeForce 7600 GT         g++ 4.1
700    400    Pentium III 450 Mhz             Linux x86-32   Nvidia GeForce 5500 FX AGP 2x  g++ 4.1
450    400    Apple Mac Mini PPC G4 1.33 Ghz  Mac OS X 10.4  ATI Radeon 9200                g++ 4.0