“…Future work in this direction includes integrating RACE MPK into communication-avoiding s-step Krylov solvers and polynomial preconditioners from the Trilinos [51] framework. For multi-node MPK computations, our level-based cache blocking scheme can be integrated with existing ideas (e.g, [11], [24]) to enable a highly efficient distributed MPK scheme with low inter-node communication overhead. Another interesting research direction that we are currently pursuing is the development of a GPU implementation for the cacheblocked MPK method.…”
Section: Discussionmentioning
confidence: 99%
“…Most of the other works [11], [21], [22], [23] on MPK schemes focused on reducing the MPI communication overhead. A recent work [24] in this direction presents a theoretical study on the benefit of diamond tiling for reducing communication.…”
The multiplication of a sparse matrix with a dense vector (SpMV) is a key component in many numerical schemes and its performance is known to be severely limited by main memory access. Several numerical schemes require the multiplication of a sparse matrix polynomial with a dense vector which is typically implemented as a sequence of SpMVs. This results in low performance and ignores the potential to increase the arithmetic intensity by reusing the matrix data from cache. In this work we use the recursive algebraic coloring engine (RACE) to enable blocking of sparse matrix data across the polynomial computations. In the graph representing the sparse matrix we form levels using a breadth-first search. Locality relations of these levels are then used to improve spatial and temporal locality when accessing the matrix data and to implement an efficient multithreaded parallelization. Our approach is independent of the matrix structure and avoids shortcomings of existing "blocking" strategies in terms of hardware efficiency and parallelization overhead. We quantify the quality of our implementation using performance modelling and demonstrate speedups of up to 3× and 5× compared to an optimal SpMV-based baseline on a single multicore chip of recent Intel and AMD architectures. Various numerical schemes like s-step Krylov solvers, polynomial preconditioners and power clustering algorithms will benefit from our development.
“…Future work in this direction includes integrating RACE MPK into communication-avoiding s-step Krylov solvers and polynomial preconditioners from the Trilinos [51] framework. For multi-node MPK computations, our level-based cache blocking scheme can be integrated with existing ideas (e.g, [11], [24]) to enable a highly efficient distributed MPK scheme with low inter-node communication overhead. Another interesting research direction that we are currently pursuing is the development of a GPU implementation for the cacheblocked MPK method.…”
Section: Discussionmentioning
confidence: 99%
“…Most of the other works [11], [21], [22], [23] on MPK schemes focused on reducing the MPI communication overhead. A recent work [24] in this direction presents a theoretical study on the benefit of diamond tiling for reducing communication.…”
The multiplication of a sparse matrix with a dense vector (SpMV) is a key component in many numerical schemes and its performance is known to be severely limited by main memory access. Several numerical schemes require the multiplication of a sparse matrix polynomial with a dense vector which is typically implemented as a sequence of SpMVs. This results in low performance and ignores the potential to increase the arithmetic intensity by reusing the matrix data from cache. In this work we use the recursive algebraic coloring engine (RACE) to enable blocking of sparse matrix data across the polynomial computations. In the graph representing the sparse matrix we form levels using a breadth-first search. Locality relations of these levels are then used to improve spatial and temporal locality when accessing the matrix data and to implement an efficient multithreaded parallelization. Our approach is independent of the matrix structure and avoids shortcomings of existing "blocking" strategies in terms of hardware efficiency and parallelization overhead. We quantify the quality of our implementation using performance modelling and demonstrate speedups of up to 3× and 5× compared to an optimal SpMV-based baseline on a single multicore chip of recent Intel and AMD architectures. Various numerical schemes like s-step Krylov solvers, polynomial preconditioners and power clustering algorithms will benefit from our development.
“…Most of the other works [11], [18], [19] on MPK schemes focused on reducing the MPI communication overhead. A recent work [20] in this direction presents a theoretical study on the benefit of diamond tiling for reducing communication.…”
The multiplication of a sparse matrix with a dense vector (SpMV) is a key component in many numerical schemes and its performance is known to be severely limited by main memory access. Several numerical schemes require the multiplication of a sparse matrix polynomial with a dense vector which is typically implemented as a sequence of SpMVs. This results in low performance and ignores the potential to increase the arithmetic intensity by reusing the matrix data from cache. In this work we use the recursive algebraic coloring engine (RACE) to enable blocking of sparse matrix data across the polynomial computations. In the graph representing the sparse matrix we form levels using a breadth-first search. Locality relations of these levels are then used to improve spatial and temporal locality when accessing the matrix data and to implement an efficient multithreaded parallelization. Our approach is independent of the matrix structure and avoids shortcomings of existing "blocking" strategies in terms of hardware efficiency and parallelization overhead. We quantify the quality of our implementation using performance modelling and demonstrate speedups of up to 3× and 5× compared to an optimal SpMV-based baseline on a single multicore chip of recent Intel and AMD architectures. As a potential application, we demonstrate the benefit of our implementation for a Chebyshev time propagation scheme, representing the class of polynomial approximations to exponential integrators. Further numerical schemes which may benefit from our developments include s-step Krylov solvers and power clustering algorithms.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.