Why there are no BLAS procedures for addition and subtraction

BLAS has routines such as

dscal    scale a vector by a constant  
dinit    initialize a vector with given value
daxpy    perform y = a*x + y

etc. But apparently there are no routines for vector addition or vector subtraction. If this is true, what is the reason?

Moreover, there are procedures that perform more trivial operations, such as dinitor dscal. Of course, you can use it daxpywith a=1or a=-1to perform addition / subtraction from a given vector, but it seems to me overly complicated.

+4
source share
1 answer

To find a plausible explanation, we must return to the history of BLAS

, 1 2, 3 ( 2 1987, 3 - 1989).

1- , 1979 Fortran CL Lawson et al. , . 3

, , .

, 1973 Hanson et al. :

, [Krogh (1)], , Univac 1108 15% 30% , Fortran.

, , , : (1) ( ) , , y: = ax + y, x y - n- a - , (3) Givens 2 x 2 , 2 x n.

, ( ...) , . , , axpy, , , .. , , ..... .

+4

Source: https://habr.com/ru/post/1693323/


All Articles