Vector Processors: Characteristics, Use & Examples

Lesson Transcript
Instructor: Sudha Aravindan

Sudha Aravindan has taught high school Math and professional development in Information Technology for over 10 years. Sudha has a Doctorate of Education degree in Mathematics Education from the University of Delaware, USA, a Masters degree in English Literature from the University of Kerala, India, a Bachelor of Education degree in Teaching of Math from the University of Kerala, India, and a Bachelor of Science degree in Math, Physics and Statistics from the University of Kerala, India. Sudha has a certificate in Java programming and Statistical Analysis.

In this lesson, we'll learn about the characteristics and advantages of using vector processors. We'll also learn about the characteristics of a vector and discover through pseudocode how vectoring a loop helps with faster program execution. Updated: 04/28/2021

Vector Processing

Sandra was writing a program for computing Geographical Information Systems (GIS) data for 20,000 rivers and lakes in the Midwest. The calculations require a large number of variables and data types including image data, map data, and data from satellite images. Sandra created 300 different variables to hold data for the various computations. When the program was executed, it had to be left overnight to complete.

Her teammate Jen was running a similar program and it took only a fraction of the time. Jen said she was using a vector for processing the data. We can simply define vector processing as the process of using vectors to store a large number of variables for high-intensity data processing. The two main characteristics of a vector are that it helps with fast processing and that the size of the vector doesn't need to be decided in advance.

Let's first look at how a vector increases efficiency. If you have the following five integers: 20, 25, 30, 35, 40 and you need to add 10 to each of the integers, one method is to declare five variables to store each of the five integers. So, you have a = 20, b = 25, c = 30 and so on. The computer first finds 20, add 10 to 20; then find 25, and add 10 to 25, and so on.

Using the vector method, instead of having five separate variables, you could have one vector variable z. The vector saves all five numbers in its array: z[0] = 20, z[1] = 25, z[2] = 30 and so on. The processor considers the entire vector as one variable and instead of having to add 10 five separate times adds 10 at one time to all the elements in the vector, thereby increasing computing efficiency.

Now let's look at how a vector is dynamic. A vector is dynamic because you don't have to decide in advance the size of the vector, and it can increase or decrease in size dynamically as the program runs, depending on the number of variables the vector needs to hold. Therefore, in Sandra's program, she does not need to know or decide in advance that the vector needs to hold 20,000 variables for image data.

She can simply declare a dynamic vector and add more variables as the program runs. She could customize the program so that a user can input the number of rivers and lakes and the vector will expand to hold the number. In the same way, she can programmatically eliminate a certain number of rivers and lakes and the vector will automatically get smaller to hold the reduced number.

An error occurred trying to load this video.

Try refreshing the page, or contact customer support.

Coming up next: Interconnection Networks: Role & Types

You're on a roll. Keep up the good work!

Take Quiz Watch Next Lesson
Your next lesson will play in 10 seconds
  • 0:04 Vector Processing
  • 2:54 Vector Processor…
  • 3:51 Vector Processor Components
  • 4:34 Vector Processing Architecture
  • 5:41 Pseudocode Example
  • 7:13 Lesson Summary
Save Save Save

Want to watch this again later?

Log in or sign up to add this lesson to a Custom Course.

Log in or Sign up

Speed Speed

Vector Processor Characteristics

A vector processor is a CPU in a computer with parallel processors and the capability for vector processing. The main characteristic of a vector processor is that it makes use of the parallel processing capability of the processor where two or more processors operate concurrently. This makes it possible for the processors to perform multiple tasks simultaneously or for the task to be split into different subtasks handled by different processors and combined to get the result.

The vector processor considers all of the elements of the vector as one single element as it traverses through the vector in a single loop. Computers with vector processors find many uses that involve computation of massive amounts of data, such as image processing, artificial intelligence, mapping the human genome, space simulations, seismic data, and hurricane predictions.

Vector Processor Components

Let's now take a closer look at the different components of a vector processor.

1. Vector Registers File

The vector register holds the different elements that make up the vector. In the z vector, the vector register consists of z[0] through z[5].

2. Vector Address Generator

This generates the start address and the number of elements in each vector.

3. Vector Functional Units

These handle arithmetic and logical functions: addition, subtraction, multiplication, division, and square root.

4. Vector Data Switch

This is the switch to connect the different components, namely, to connect the processor to the memory modules.

Vector Processing Architecture

There are two commonly used architectures for parallel vector processing:

  1. Pipelined vector processors
  2. Parallel array processors

To unlock this lesson you must be a Member.
Create your account

Register to view this lesson

Are you a student or a teacher?

Unlock Your Education

See for yourself why 30 million people use

Become a member and start learning now.
Become a Member  Back
What teachers are saying about
Try it now
Create an account to start this course today
Used by over 30 million students worldwide
Create an account