Developer Reference for Intel® oneAPI Math Kernel Library for C
BLAS Level 1 Routines That Can Work With Sparse Vectors
The following BLAS Level 1 routines will give correct results when you pass to them a compressed-form array x(with the increment incx=1):
- cblas_?asum
 -  
    
sum of absolute values of vector elements
 - cblas_?copy
 -  
    
copying a vector
 - cblas_?nrm2
 -  
    
Euclidean norm of a vector
 - cblas_?scal
 -  
    
scaling a vector
 - cblas_i?amax
 -  
    
index of the element with the largest absolute value for real flavors, or the largest sum |Re(x[i])|+|Im(x[i])| for complex flavors.
 - cblas_i?amin
 -  
    
index of the element with the smallest absolute value for real flavors, or the smallest sum |Re(x[i])|+|Im(x[i])| for complex flavors.
 
The result i returned by i?amax and i?amin should be interpreted as index in the compressed-form array, so that the largest (smallest) value is x[i-1]; the corresponding index in full-storage array is indx[i-1].
You can also call cblas_?rotg to compute the parameters of Givens rotation and then pass these parameters to the Sparse BLAS routines cblas_?roti.