Link to home
Start Free TrialLog in
Avatar of sreejesh
sreejesh

asked on

Vector Processing

What is meant by vector processing?.
What is the difference between vector pipeline and mulitple processors?.
ASKER CERTIFIED SOLUTION
Avatar of chris_calabrese
chris_calabrese

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of sreejesh
sreejesh

ASKER

Do you mean that the multiple operations done in vector processing can interact with eachother and is not possible in case of pipelining?. Why the term "Vector" is used for such processing?.
Yes, the operations in vector processing can intereact with each other and they can't in pipelining.

Actually, I should have clarified one other thing.  In vector processing, you load lots of data into lots of registers, and then you have one set of instructions that operates on all the data at the same time (again, a matrix multiply is the classic example).  Pipelining, on the other hand, is a technique to speedup the execution of a regular stream of instructions operating on independant data.

The reason vector processing allows interaction between the operations is that the operations can be things like "multiply each cell(n) with cell(n*2) and store the result in cell(n*3)", which means that the next instruction gets to see all the new data.

In pipelining, instructions in the pipeline are not complete, so if an instruction tries to operate on a register that's in the process of being changed by another instruction in the pipeline, you'll get indeterminate results.  Therefore, most processors implement what's called "pipeline stalling", which means they will actually block the second instruction from executing until the first completes.

The "vector" comes from the math background of vector processing, though I'm not sure _exactly_ what it refers to (the heyday of the vector machines is long since past and I've never worked on one).  I'm guessing that the vectors are the cells in the register banks that the vector instructions operate on.