What Is the Difference Between Vector and Scalar Processors?

The Vector Processor System (VPS) is a parallel processing computer system oriented to vector-type parallel computing and mainly based on a pipeline structure. The use of parallel control structures such as advanced control and overlapping operation techniques, computation pipelines, and cross-accessed parallel memories have an important role in increasing the speed of operations.

Vector Processor System (VPS), is a vector-oriented
In a normal computer,
A vector processor usually consists of a normal pipelined scalar unit plus a vector unit. All functional components in this vector unit have a delay of several clock cycles. This enables the use of shorter clock cycles and is compatible with complex vector operations that require deep pipelining to avoid data hazards. The vector operations allowed by most vector processors include floating-point operations, integer operations, or logical operations. Here we focus on floating point operations. In fact, commercial vector processors contain both out-of-order scalar units (NEC SX / 5) and VLIW scalar units (Fujitsu VPP5000).
There are two main types of vector processors: vector-register processors and memory-memory processors. In the vector-register class processor, all vector operations except load and store are performed in the vector register. This type of processor corresponds to the load-store architecture we talked about in scalar processors. Almost all vector computers released in the late 1980s adopted this structure, including Cray Research processors (Cray-1, Cray-2, X-MP, YMP, C90, T90, SV1, and X1), Japanese Supercomputers (from NEC SX / 2 to SX / 8, Fujitsu VP200 to VPP5000, and Hitachi S820 and S-8300) and mini supercomputers (from Convex C-1 to C-4). In a vector processor of the memory-memory class, all vector operations are performed from memory to memory. The first vector processor was of this type, as was the CDC series.
The following figure is the structure of Fujitsu VP2000 series system:
The market for vector supercomputers is very small, but the Vector Instruction Set Architecture VISA used by vector supercomputers and its vector instruction set are still very advantageous. With the increase in integration, we will soon reach the "latency limit", and the vector instruction system structure provides a way to improve performance.
The advantages of VISA over scalar and VLISW ISA can be summarized from three aspects. One: semantic advantage, which means that writing programs with VISA can be more concise and effective. Second: vector instructions can more easily implement parallelized coding, which is conducive to highly parallelized implementation. Third: vector instructions are neat and it is conducive to parallelization, which makes vector instructions beneficial to improve design processor technology, such as the design of deep pipelines, the implementation of repeated resources, and shortening the clock cycle. The following points fully demonstrate the advantages of the vector instruction set:
(1) The vector program is streamlined and requires fewer steps.
The biggest difference between vector instructions and scalar instructions is that a vector instruction contains many operations. Therefore, for a given task, vector instructions are much smaller than programs consisting of scalar instructions. And scalar programs calculate addresses, loop variables, and branch addresses, all of which are implicit in vector instructions. The reduction in the amount of executed code brings many beneficial results. First, the reduction in the number of instructions reduces the amount of data exchanged between main memory and the processor. Second, the execution of branch instructions in vector operations is implied. It also reduces most of the delays caused by branch prediction errors; again, only a very simple control unit is needed to take one instruction to decode and execute in each cycle, which can achieve high operational efficiency. Therefore, the vector instruction set only needs a very simple controller when it is executed, which avoids excessive clock cycles when running.
(2) High performance of the storage system and full utilization
There are many benefits to accessing memory as a vector. First of all: each data item required by the processor is the data that is actually used, not the so-called prefetch supported by the cache. Secondly: the fetched information is transmitted directly by the hardware, which can improve the performance of the storage system in many ways. When encountering memory delays, vector instructions on memory operations can divide a long delay into many small time periods. Some studies have shown that the use of techniques similar to superscalar pipelines on vector processors does not cause much performance loss even with a main memory latency of hundreds of cycles.
(3) The vector processor has the characteristics of low power consumption and high real-time performance
For future application systems, low power consumption and high real-time performance will become a very important factor in computer design. In this regard, systems of vector architecture have considerable advantages.
Vector instructions have the characteristic of "local calculation", that is, when a vector instruction starts to execute, only the corresponding functional unit and the register inline bus need to be powered on. The instruction fetching component, the instruction fetching buffer register and other high power consumption components can be in a sleep state, and will not resume working until the current vector instruction is executed. A system using vector ISA can easily work in a low power state. For example, an operation requires two vector instructions to be executed in parallel, or the same instruction needs to be executed twice, requiring only minimal functional and bus components to work, instead of repeatedly taking the same loop instruction to execute as a superscalar processor, thus Can easily reduce power consumption. For real-time applications, vector computers can be designed as highly predictable, highly autonomous decision-making systems. When improving real-time performance, the problems of cache invalidation and branch prediction, which are a headache for designers, will no longer need to be considered. The highly structured features of the vector architecture make the vector architecture simple, decision-making, and have high real-time potential [1]
Vector machines are generally equipped with vector assembly and vector high-level languages for users to compile vector programs that can realize the speed potential of specific vector machines. Only by developing and adopting vector-type parallel algorithms, the more vector operations and longer vectors are included in the program, the higher the operation speed. The establishment of vector program libraries for various application fields can facilitate users to use and improve the efficiency of vector machine problem solving. The vector recognition program is a newly developed part of the compiler. It is used to automatically recognize the vector operation components in the source program using the usual serial algorithm at compile time and compile into the corresponding vector operation target program to improve the vector machine to calculate a large number of existing non- Calculation speed of vector programs. The vector recognition technology needs further development and improvement to improve the recognition level.
The development direction of vector processor is multi-vector machine system or cell structure vector machine. To achieve the former, progress must be made in software and algorithms to solve many problems such as task division and dispatch; the latter must use appropriate interconnection networks and use hardware to automatically resolve the use of scattered main memory as a centralized coexistence by users And the contradictions brought about can constitute a virtual coexisting vector machine for cell structure. It not only has the advantage that the array machine is easy to expand the number of parallel units in the structure to improve the speed, but also has the advantage that the vector machine is easy to use.

IN OTHER LANGUAGES

Was this article helpful? Thanks for the feedback Thanks for the feedback

How can we help? How can we help?