[Trilinos-Users] Cache performance of Trilinos MatVec
James C. Sutherland
James.Sutherland at utah.edu
Wed Jun 10 08:12:16 MDT 2009
On Jun 10, 2009, at 8:01 AM, Williams, Alan B wrote:
>
> James,
> For matrix-vector product y = A*x, the core of the sparse matvec is
> a statement like this:
> y[i] += Acoefs[j]*x[Acols[j]]
>
> So depending on how the column-indices of A are ordered, lots of
> cache misses in the x vector could occur.
> A matrix reordering may help in some cases.
>
> Alan
>
Alan,
Has there been any effort (or is there any planned) for Trilinos to
optimize this? It seems that there are a few packages out there (see
e.g. http://bebop.cs.berkeley.edu/oski ) that try to do this.
I have been using Trilinos for sparse matvec operations that are
applied locally (e.g. not through MPI). However, the cache
utilization problem may force me to switch unless there is another
option in Trilinos...
I even observe this problem on simple stencils in 1-D, e.g. a 3-point
laplacian stencil in 1D where the sparsity pattern is very regular and
localized.
James
More information about the Trilinos-Users
mailing list