28.10.2014 Views

Synergy User Manual and Tutorial. - THE CORE MEMORY

Synergy User Manual and Tutorial. - THE CORE MEMORY

Synergy User Manual and Tutorial. - THE CORE MEMORY

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Synergy</strong> <strong>User</strong> <strong>Manual</strong> <strong>and</strong> <strong>Tutorial</strong><br />

Parallel Processing<br />

What is parallel processing?<br />

Parallel processing is the concurrent execution of the same activity or task on multiple<br />

processors. The task is divided or specially prepared so that the work can be spread<br />

among many processors <strong>and</strong> yield the same result as if done on one processor but in less<br />

time. There is a variety of parallel processing systems. A parallel processing system can<br />

be a single machine with many processors or many machines connected by a network.<br />

The most powerful machines in the world are machines with hundreds or thous<strong>and</strong>s of<br />

processors <strong>and</strong> hundreds of gigabytes of memory. These machines are called massively<br />

parallel processors (MPP). Many individual machines can cooperate to perform the same<br />

task in distributed networks. The combination of lower performance computers may<br />

exceed the power of a single high-performance computer, when the computational<br />

resources are comparable. The computational power of MPPs has been combined using<br />

the distributed system model to produce unprecedented performance.<br />

Flynn’s taxonomy classifies computing systems with respect to the two types of streams<br />

that flow into <strong>and</strong> out of a processor: instructions <strong>and</strong> data. These two types of streams<br />

can be conceptually split into two different streams, even if delivered on the same wire.<br />

The classifications, based on the number of streams of each type, are:<br />

Single instruction stream/single data stream (SISD) systems have a single instruction<br />

processing unit <strong>and</strong> a single data processing unit. These are conventional single<br />

processor computers, also known as sequential computers scalar processors.<br />

Single instruction stream/multiple data streams (SIMD) systems have a single instruction<br />

processing unit or controller <strong>and</strong> multiple data processing units. The instruction unit<br />

fetches <strong>and</strong> executes instructions until a data or arithmetic operation is reached. It then<br />

sends this instruction to all of the data processing units, which each perform the same<br />

task on different pieces of data, until all data is processed. These data processing units<br />

are either idle or all performing the same task as all other data processors. They cannot<br />

perform different tasks, simultaneously. Each of the data processors has a dedicated<br />

memory storage area. They are directed by the instruction processor to store <strong>and</strong> retrieve<br />

data to <strong>and</strong> from memory. The advantage of this system is the decrease in the amount of<br />

logic on the data processors. Approximately 20 to 50 percent of a single processor’s<br />

logic is dedicated to control operations. The rest of the logic is shared by register, cache,<br />

arithmetic <strong>and</strong> data operations. The data processors have little or no control logic, which<br />

allows them to perform arithmetic <strong>and</strong> data operations much more rapidly. A vector or<br />

array processing machine is an example of an SIMD machine that distributes data across<br />

63

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!