How do you speed up memory access using vector processing
Answers
Answered by
2
In vector processing an array of data items is processed in one processor instruction. Such vector processors are called SIMD or Single Instruction Multiple Data.
In scalar processors which we normally use, one instruction has one data value to work on. So if it has to work on an array of data items, the processor has to fetch all the memory contents one after another. It will also include the latency times to access memory contents. That is significant.
In vector processing, all data elements are accessed at the same time, so the latency times are now reduced a lot to negligible amount. We need not have to go for very very high speed clocks.
Since multiple data can be loaded into multiple registers at the same time, ALU can perform same operation on all those registers simultaneously, and results could be stored back concurrently, the memory access is speeded up.
Also the number of accesses to memory will reduce. If a big cache is used, then cache hit will be very high. Thus memory access will be faster.
Vector processing is used a lot in supercomputers. For numerical simulations and computations, vector processing is very much useful. It reduces the time of execution of programs. It allows quicker predictions and corrections, for modeling a system.
In scalar processors which we normally use, one instruction has one data value to work on. So if it has to work on an array of data items, the processor has to fetch all the memory contents one after another. It will also include the latency times to access memory contents. That is significant.
In vector processing, all data elements are accessed at the same time, so the latency times are now reduced a lot to negligible amount. We need not have to go for very very high speed clocks.
Since multiple data can be loaded into multiple registers at the same time, ALU can perform same operation on all those registers simultaneously, and results could be stored back concurrently, the memory access is speeded up.
Also the number of accesses to memory will reduce. If a big cache is used, then cache hit will be very high. Thus memory access will be faster.
Vector processing is used a lot in supercomputers. For numerical simulations and computations, vector processing is very much useful. It reduces the time of execution of programs. It allows quicker predictions and corrections, for modeling a system.
kvnmurty:
:-)
Similar questions