0% found this document useful (0 votes)
52 views

Array Processors

Uploaded by

revanthch121
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
52 views

Array Processors

Uploaded by

revanthch121
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 16

Array processors

Ch.revanth
21951A66A6
Cse(ai&ML)-B
Topics present in this slide show are:
• What is array processor
• Types of array processor
• Usage of array processor
• Applications of array processors
What is array processor?
• array processor A computer/processor that has an architecture especially
designed for processing arrays (e.g. matrices) of numbers. The architecture
includes a number of processors (say 64 by 64) working simultaneously, each
handling one element of the array, so that a single operation can apply to all
elements of the array in parallel.
• To obtain the same effect in a conventional processor, the operation must be
applied to each element of the array sequentially, and so consequently much
more slowly.

An array processor may be built as a self-contained unit attached to a main


computer via an I/O port or internal bus; alternatively, it may be a distributed
array processor where the processing elements are distributed throughout,
and closely linked to, a section of the computer's memory.
• A processor that performs computations on a vast array of data is known as an
array processor. Multiprocessors and vector processors are other terms for array
processors. It only executes one instruction at a time on an array of data. They
work with massive data sets to perform computations. Hence, they are used to
enhance the computer's performance.
• Array processor performs a single instruction in multiple execution units in
the same clock cycle
• The different execution units have same instruction using same set of
vectors in the array
• Use of parallel execution units for processing different vectors of the arrays •
• Use of memory interleaving, n memory address registers and n memory
data registers in case of k pipelines and use of vector register files
Types of array processor

Array processors can be divided into two categories:


1. Attached Array Processors
2. SIMD(Single Instruction Stream, Multiple Data Stream) Array Processors
We will go through the explained detail in the sections below.

Attached Array Processor


The attached array processor is the auxiliary processor connected to a general-
purpose computer to enhance and improve the machine's performance in
numerical computational tasks. It provides excellent performance by using
numerous functional units in parallel processing.
The attached array processor includes a common processor with an input/output
interface and a local memory interface.
The main memory and the local memory are linked.
The main memory and the local memory are linked.

The attached array processor intends to improve the performance of the


host computer in specific numeric computations.

The attached array processor has an inputoutput interface to a common


processor and another interface with a local memory • The local memory
interconnects main memory
Here local memory interconnects main memory. Host computer is general
purpose computer. Attached processor is back end machine driven by the host
computer.
The array processor is connected through an I/O controller to the computer &
the computer treats it as an external interface.
SIMD Array Processor

SIMD refers to the organization of a single computer with multiple parallel


processors. The processing units are designed to work together under the
supervision of a single control unit, resulting in a single instruction stream and
multiple data streams.
An array processor's general block diagram is given below.

It comprises several identical processing elements (PEs), each with its local memory
M. An ALU and registers are included in each processor element. The master control
unit controls the processing elements' actions. It also decodes instructions and
determines how they should be carried out.

The program is stored in the main memory. The control unit retrieves the
instructions. Vector instructions are sent to all PEs simultaneously, and the results
are stored in memory.
The ILLIAC IV computer, manufactured by the Burroughs Corporation, is the
most well-known SIMD array processor. Single Instruction Multiple Data (SIMD)
processors are highly specialized computers. They're only good for numerical
issues that can be stated as vectors or matrices; they're not suitable for other
kinds of computations.
• SIMD is a computer with multiple processing units operating in parallel.

• The processing units are synchronized to perform the same operation under the
control of a common control unit. Thus providing a single instruction stream, multiple
data stream (SIMD) organization. As shown in figure, SIMD contains a set of identical
processing elements (PES) each having a local memory M.
• Each PE includes –
• ALU
• Floating point arithmetic unit
• Working registers
• Master control unit controls the operation in the PEs. The function of master control
unit is to decode the instruction and determine how the instruction to be executed. If
the instruction is scalar or program control instruction then it is directly executed
within the master control unit.

• Main memory is used for storage of the program while each PE uses operands stored
in its local memory.
• Configurations of SIMD

• 1. Array processors that use RAM(Random Access Memory) are also known as
Dedicated Memory Organisation.
• ILLIAC-IV
• CM-2
• MP-1

• 2. Associative processor that uses content accessible memory is known as Global


Memory Organisation.
• BSP
Usage of Array Processors

• Array processors enhance the total speed of instruction processing.


• Most array processors' design optimizes its performance for
repetitive arithmetic operations, making it faster at vector arithmetic
than the host CPU. Since most Array processors run asynchronously
from the host CPU, the system's overall capacity is thus improved.
• Array Processors have their own local memory, providing additional
extra memory to systems with limited memory. This is an essential
consideration for the systems with a limited physical memory or
address space.
Applications of array processors
• Array processing is used at various places, including:-
• Radar Systems
• Sonar Systems
• Anti-jamming
• Seismic Exploration
• Wireless communication
• Medical applications
• Used for Speech Enhancement
• Used in Astronomy applications
• Array processors are extremely useful for dealing with problems that require a lot of
parallelisms. However, they do require a change in programming methodology.
Converting conventional (sequential) programs to support array processors is
complex, and different (parallel) algorithms may be needed to match the parallel
approach.

You might also like