Parallel Processing in LINUX (Paresh
Parallel Processing in LINUX (Paresh
I. INTRODUCTION
of a program by dividing the program into multiple fragments that can execute
processors might execute n times faster than it would using a single processor.
designed "parallel computer"; along these lines, Linux now supports SMP
memory and bus interface within a single computer. It is also possible for a
but you will also find that some things that could execute in parallel might
Either the particular application program you are interested in already has
you are willing to do at least some new coding to take advantage of parallel
processing.
necessarily difficult, but it is not familiar to most computer users, and there isn't
any book called "Parallel Processing for Dummies"... at least not yet.
The good news is that if all the above are true, you'll find that parallel
processing using Linux can yield supercomputer performance for some programs that
perform complex computations or operate on large data sets. What's more, it can do
that using cheap hardware... which you might already own. As an added bonus, it is
also easy to use a parallel Linux system for other things when it is not busy executing
a parallel job.
S.S.G.M.C.E., Shegaon. 2
Parallel Processing in LINUX
II. TERMINOLOGY
Although parallel processing has been used for many years in many
1. SIMD:
parallel execution model in which all processors execute the same operation at
the same time, but each processor is allowed to operate upon its own data. This
model naturally fits the concept of performing the same operation on every
2. MIMD:
graphic display of the new entry. This is a more flexible model than SIMD
S.S.G.M.C.E., Shegaon. 3
Parallel Processing in LINUX
which a program may intermittently fail due to timing variations reordering the
3. SPMD:
in which all processors are running the same program. Unlike SIMD, each
processor executing SPMD code may take a different control flow path through
the program.
4. Communication Bandwidth:
data that can be transmitted in a unit of time... once data transmission has
Bytes/second (B/s).
5. Communication Latency:
transmit one object, including any send and receive software overhead. Latency
useful grain size, the minimum run time for a segment of code to yield speed-
up through parallel execution. Basically, if a segment of code runs for less time
than it takes to transmit its result value (i.e., latency), executing that code
segment serially on the processor that needed the result value would be faster
S.S.G.M.C.E., Shegaon. 4
Parallel Processing in LINUX
overhead.
6. Message Passing:
which then must accept and act upon the message contents. Although the
overhead in handling each message (latency) may be high, there are typically
few restrictions on how much information each message may contain. Thus,
message passing can yield high bandwidth making it a very effective way to
minimize the need for expensive message passing operations, data structures
within a parallel program must be spread across the processors so that most
data referenced by each processor is in its local memory... this task is known as
data layout.
7. Shared Memory:
systems in which each processor has it own memory by converting each non-
S.S.G.M.C.E., Shegaon. 5
Parallel Processing in LINUX
than message passing. Physically shared memory can have both high
bandwidth and low latency, but only when multiple processors do not try to
access the bus simultaneously; thus, data layout still can seriously impact
performance, and cache effects, etc., can make it difficult to determine what the
8. Aggregate Functions:
which an entire group of processors act together. The simplest such action is a
processor in the group has arrived at the barrier. By having each processor
9. Collective Communication :
This is another name for aggregate functions, most often used when
passing operations.
S.S.G.M.C.E., Shegaon. 6
Parallel Processing in LINUX
10. SMP:
work could be done equally well by any processor. Typically, SMP implies the
11. SWAR:
machine with k-bit registers, data paths, and function units, it has long been
(Digital Media eXtension, pronounced "Mad Max"), and Sun SPARC V9 VIS
(Visual Instruction Set). Aside from the three vendors who have agreed on
MMX, all of these instruction set extensions are roughly comparable, but
mutually incompatible.
S.S.G.M.C.E., Shegaon. 7
Parallel Processing in LINUX
example, many video and audio cards for PCs contain attached processors
DSP (Digital Signal Processing). There is also a wide range of attached array
13. RAID:
for increasing both the bandwidth and reliability of disk I/O. Although there are
many different variations, all have two key concepts in common. First, each
data block is striped across a group of n+k disk drives such that each drive
only has to read or write 1/n of the data... yielding n times the bandwidth of one
drive. Second, redundant data is written so that data can be recovered if a disk
drive fails; this is important because otherwise if any one of the n+k drives
S.S.G.M.C.E., Shegaon. 8
Parallel Processing in LINUX
like:
#include <stdlib.h>;
#include <stdio.h>;
intervals = atoi(argv[1]);
/* do the computation */
sum = 0;
sum *= width;
return(0);
S.S.G.M.C.E., Shegaon. 9
Parallel Processing in LINUX
parallel" implementation. The area is subdivided into intervals, and any number
of processors can each independently sum the intervals assigned to it, with no
need for interaction between processors. Once the local sums have been
computed, they are added together to create a global sum; this step requires
this global sum is printed by one processor as the approximate value of Pi.
S.S.G.M.C.E., Shegaon. 10
Parallel Processing in LINUX
4. CONCLUSION
If all points are true, then we find that Parallel Processing using LINUX can
That’s why Parallel Processing has been used for many years in many
S.S.G.M.C.E., Shegaon. 11
Parallel Processing in LINUX
BIBLIOGRAPHY
1. http://googlesearch.com
2. http://aggregate.org
S.S.G.M.C.E., Shegaon. 12
Parallel Processing in LINUX
S.S.G.M.C.E., Shegaon. 13