The PowerPC architecture is an optimal solution for symmetric multi-processing (SMP) and provides the right balance of performance and power for any system design. This paper will discuss elements of both software and hardware design in relation to SMP systems, including an introduction on what and how SMP systems operate and concentrating on areas which application designers should consider when architecting and implementing their systems.