Helper routine which computes sparse dot products across processors. Computes the dot product of one vector with several others. The pivoted version has the number of local pivots to work on as a parameter.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | num_values_i | The length of vector i. |
||
integer, | intent(in), | DIMENSION(:) | :: | indices_i | The index value of the sparse vector i. |
|
real(kind=NTREAL), | intent(in), | DIMENSION(:) | :: | values_i | The values of the sparse vector i. |
|
integer, | intent(in), | DIMENSION(:) | :: | num_values_j | Tn array with the length of vectors j. |
|
integer, | intent(in), | DIMENSION(:,:) | :: | indices_j | The indices of the vectors j. |
|
real(kind=NTREAL), | intent(in), | DIMENSION(:,:) | :: | values_j | The values of the vectors j. |
|
integer, | intent(in), | DIMENSION(:) | :: | pivot_vector | Vector storing the pivot values. |
|
integer, | intent(in) | :: | num_local_pivots | Number of pivots. |
||
real(kind=NTREAL), | intent(out), | DIMENSION(:) | :: | out_values | The dot product values for each vector j. |
|
integer, | intent(inout) | :: | comm | The communicator to reduce along. |