Syllabus Topic
• Vector Processing
• Vector Processor
Loosely Coupled Systems
Tightly Coupled Systems
Vector Processing
What is a vector?
A vector is an ordered set of one dimensional
array of data items.
A vector V of length N is represented as
V=[V1,V2…….VN]. An element of Vector V is
represented by V[I] where I is the index which
refers to the memory location or register
where the Ith element is stored.
• Suppose there are two vectors V1 and V2 containing
100 elements each. And suppose we need to add
these vectors to form another Vector V. The
algorithm required will be as
Integer I = 0
While I < 100
Begin
read V1[I]
read V2[I]
V[I]=V1[I]+ V2[I]
I=I+1
End While
• A computer capable of vector processing eliminates
the overhead associated with the time to fetch and
execute the instruction in the program loop. It
allows operations to be specified with a single
vector instruction form
• V(1:100)= V1(1:100) + V2(1:100)
The vector instruction includes the initial address of
the operands , the length of the vectors, and the
operation to be performed, all in one composite
instruction.
Vector processors are extensively pipelined
architectures designed to operate on array-
oriented data.
Operation Source Source Destination
Vector length
Code address 1 address 2 address
The vector specifies the address of vector
elements, length of vector and operation to be
performed in just one single instruction.
• Let us illustrate vector computation with the help
of an example. Suppose we need to perform
C=A*B, where A,B,C are one dimensional vectors
with N number of data elements. The
multiplication can be depicted as shown below
a1 b1 c1=a1b1+ a1b2+……….+ a1bN
a2 * b2 = c2=a2b1 + a2b2+………+a2bN
aN bN cN= aNb1+ aNb2+……+ aN bN
• Where ai , bi and ci are elements of vectors
A,B,C respectively. The above process requires
N2 multiplications and N(N-1) additions. The
value of ai and bi may be in memory or in
registers.
• For the above computation we can use a
floating point adder pipeline and a floating
point multiplier pipeline.
• Suppose each of these pipeline have four
stages. The elements ai and bk are fed to the
two pipelines a shown below
• Matrix multiplication is an example for vector
processing. For calculating inner product in matrix
multiplication we are using vector processing
technique.
• There are many mathematical and statistical
applications where the computational loads are too
high for getting fast results. For such purposes, a
conventional computer may take days or weeks to
complete the job. Such computations are therefore
performed by using vector computations on
mainframe computers for faster processing.
• Some such applications which require vector
processing are:
Weather forecasting
Disease diagnosing
Artificial Intelligence
Gene mapping
Image Processing
Seismology
Without techniques like vector processing and parallel
processing, the above listed applications cannot be
completed fast. Some applications in aerodynamics
and nuclear physics require as many as 1013
arithmetic operations which an ordinary computer
would take more than two weeks to complete.
Tightly coupled and loosely coupled
Systems
Tightly coupled Systems
It is a system with common shared memory. In
fact, most commercial tightly coupled system
provide a cache memory that all CPUs can
access. Information can therefore be shared
among the CPU’s by placing it in a common
global memory
Loosely coupled Systems
Each processor in a loosely coupled system has
its own private local memory. The processor
are tied together by switching scheme
designed to route information from one
processor to another through a message
passing scheme.