<P> CPU designers then borrowed ideas from commercial computing markets such as transaction processing, where the aggregate performance of multiple programs, also known as throughput computing, was more important than the performance of a single thread or process . </P> <P> This reversal of emphasis is evidenced by the proliferation of dual and more core processor designs and notably, Intel's newer designs resembling its less superscalar P6 architecture . Late designs in several processor families exhibit CMP, including the x86 - 64 Opteron and Athlon 64 X2, the SPARC UltraSPARC T1, IBM POWER4 and POWER5, as well as several video game console CPUs like the Xbox 360's triple - core PowerPC design, and the PlayStation 3's 7 - core Cell microprocessor . </P> <P> A less common but increasingly important paradigm of processors (and indeed, computing in general) deals with data parallelism . The processors discussed earlier are all referred to as some type of scalar device . As the name implies, vector processors deal with multiple pieces of data in the context of one instruction . This contrasts with scalar processors, which deal with one piece of data for every instruction . Using Flynn's taxonomy, these two schemes of dealing with data are generally referred to as single instruction stream, multiple data stream (SIMD) and single instruction stream, single data stream (SISD), respectively . The great utility in creating processors that deal with vectors of data lies in optimizing tasks that tend to require the same operation (for example, a sum or a dot product) to be performed on a large set of data . Some classic examples of these types of tasks include multimedia applications (images, video and sound), as well as many types of scientific and engineering tasks . Whereas a scalar processor must complete the entire process of fetching, decoding and executing each instruction and value in a set of data, a vector processor can perform a single operation on a comparatively large set of data with one instruction . This is only possible when the application tends to require many steps which apply one operation to a large set of data . </P> <P> Most early vector processors, such as the Cray - 1, were associated almost exclusively with scientific research and cryptography applications . However, as multimedia has largely shifted to digital media, the need for some form of SIMD in general - purpose processors has become significant . Shortly after inclusion of floating - point units started to become commonplace in general - purpose processors, specifications for and implementations of SIMD execution units also began to appear for general - purpose processors . Some of these early SIMD specifications - like HP's Multimedia Acceleration eXtensions (MAX) and Intel's MMX - were integer - only . This proved to be a significant impediment for some software developers, since many of the applications that benefit from SIMD primarily deal with floating - point numbers . Progressively, developers refined and remade these early designs into some of the common modern SIMD specifications, which are usually associated with one ISA . Some notable modern examples include Intel's SSE and the PowerPC - related AltiVec (also known as VMX). </P>

Explain cpu and define all units of cpu