Vector computer
Vector operation is a simple parallel calculation, which has a wide range of applications, is easy to be realized by machine and is convenient to use, so vector computer (vector machine) has developed rapidly. TIASC( 1972) and CDC STAR- 100 (1973) are the first vector supercomputers in the world. By the end of 1982, there were about 60 supercomputers in the world, most of which were vector machines. 1983 The 757 machine with 1 0000000 times per second and the Galaxy machine with1000000000 times were also vector machines (see color map).

Vector machine is suitable for linear programming, Fourier transform, filtering calculation and solving mathematical problems such as matrix, line algebra, partial differential equation, integral, etc. It mainly solves large-scale calculation problems in meteorological research and weather forecast, space vehicle design, atomic energy and nuclear reaction research, geophysical research, earthquake analysis, large-scale engineering design, large-scale simulation of social and economic phenomena and other fields.

Vector computers take vectors as the basic unit of operation, and operands and results exist in the form of vectors, including vertical processing vector machines and vertical and horizontal processing vector machines. Such as CRAY- 1 in the United States and 757 in China.

Vector is generally equipped with vector assembly and vector high-level language for users to write vector programs that can give full play to the speed potential of vector machines. Only by developing and adopting vector parallel algorithm, the more vector operations contained in the program, the longer the vector, and the higher the operation speed. Establishing vectors for various application fields can be convenient for users to use and improve the efficiency of solving problems of vector machines.

The development direction of vector computer is multi-vector machine system or cell structure vector machine. To realize the former, we must make some progress in software and algorithm, and solve many difficult problems such as task division and assignment. In the latter case, it is necessary to use appropriate hardware to automatically solve the contradiction caused by users taking scattered main memory as centralized * * * memory, thus forming a virtual * * * memory cell structure vector machine. It not only has the advantage that the array machine is easy to expand the number of parallel machines in structure to improve the speed, but also has the advantage that the vector machine is convenient to use.

The word vector operation vector comes from mathematics and physics. A single quantity with only magnitude is called a scalar, and a quantity with magnitude and direction is called a vector. A vector is determined by several ordered quantities (coordinate values in each dimension). These ordered quantities are called components, and the number of components is the dimension or length of the vector. According to the data type of components, vectors include floating-point vectors, fixed-point vectors, integer vectors, bit vectors and so on. According to the storage mode in main memory, vectors include sequential vectors in which all components are stored in sequence, equidistant vectors with equal address differences between adjacent components, and special indirect vectors and sparse vectors.

In ordinary computers, the basic operation object of machine instructions is scalar. In addition to scalar processing function, vector machine also has a fully functional vector operation instruction system.

By performing the same operation on each component of a vector, or on the corresponding components of two vectors with the same dimension, or on each component of a vector with the same scalar, a new vector can be generated. These are basic vector operations. In addition, some operations can be performed between the components of a vector, such as addition, multiplication or continuous comparison, so as to integrate them into a scalar. In order to improve the ability of vector processing, basic vector operations can be flexible in execution, such as making some components not perform operations under the control of potential vectors, or adding other special vector operations, such as logical combination of two monotonically rising integer vectors with different dimensions, vector compression and reduction, etc. The operation of each component of a vector is generally independent of each other, so it can be carried out in parallel in many ways, which is vector-based parallel computing. The parallel execution of vector operation mainly adopts pipeline mode and array mode (see parallel processing computer system).

The size of main memory limits the problem-solving scale of the machine. Vector machine is mainly used to solve large-scale problems, and it must have a large capacity of main memory, and it should be a centralized public memory, which is convenient for users to use and program. When the high-speed operation pipeline is started, it is necessary to continuously provide operands and fetch operation results, and it is also required that the main memory has a high data transmission rate, otherwise the high-speed operation cannot be maintained.

The speed of the memory is always lower than the speed of the arithmetic unit, and the data path between the memory and the arithmetic unit is the "bottleneck" that hinders the improvement of the speed. The increase of the main memory capacity is contradictory to the improvement of the access speed. Therefore, how to match main memory and operation in speed is one of the key problems in vector machine design. This machine adopts the longitudinal processing mode of vector length, and every vector operation must be carried out from beginning to end. Operands or result vectors are directly fetched from main memory or written into main memory. The data transmission rate of the main memory must be configured to be 3 ~ 4 times the speed of the arithmetic unit. In order to meet the requirements, the vertical machining vector machine is equipped with a large number of memory banks and a wide data path, which can be accessed in units of super-long words. This is costly, the flexibility of the main memory system is poor, and it is difficult to achieve efficient access to many main memory vectors. In addition, the start-up time of vector operation is long, and the speed of short vector operation is greatly reduced.

Vertical and horizontal processing vector machine is a machine which adopts vector segmentation vertical and horizontal processing mode and is equipped with multiple vector operation registers with small capacity and high speed. When calculating the expressions of vector operations, each vector operation only performs one component at a time. Operand vectors accessed from the host and intermediate result vectors generated by operation can be stored in vector registers in segments, and the operation unit mainly accesses vector register groups. This can not only ensure the high-speed operation of the operation part, but also reduce the burden of the main memory, so that the requirements for the data transmission rate of the main memory are reduced by about 70% compared with vertical processing. CRAY- 1 in the United States and 757 in China all belong to this type. Vector machines are generally equipped with vector assembly and vector high-level languages for users to write vector programs that can give full play to the speed potential of specific vector machines. The vector library is established for various application fields, which is convenient for users to use and improves the problem-solving efficiency of vector machine. The vector identification program is a newly developed part of the compiler, which is used to automatically identify the vector operation components in the source program that adopts the usual serial algorithm and compile them into the corresponding vector operation target program, so as to improve the calculation speed of the vector machine when calculating a large number of existing non-vector programs. Vector recognition technology needs to be further developed and improved to improve the recognition level.