SIAM Journal on Scientific Computing · 2013 · 20 citations · 15 references
ComputingComputer ScienceHigh-performance ComputingComputational PhysicsParallel ComputingScientific ComputingData ParallelismFinite Difference MethodsIterative SolversMatrix ComputationNumerical AlgorithmsNumerical Linear AlgebraFinite Difference DiscretizationHigh PerformanceManycore ArchitecturesMulticore ArchitecturesNonlinear Partial Differential EquationsSparse Linear AlgebraSparse Matrix ComputationStencil Computation
Numerical solutions of nonlinear partial differential equations frequently rely on iterative Newton--Krylov methods, which linearize a finite-difference stencil-based discretization of a problem, producing a sparse matrix with regular structure. Knowledge of this structure can be used to exploit parallelism and locality of reference on modern cache-based multi and manycore architectures, achieving high performance for computations underlying commonly used iterative linear solvers. In this paper we describe our approach to sparse matrix data structure design and our implementation of the kernels underlying iterative linear solvers in PETSc. We also describe autotuning of CUDA implementations based on high-level descriptions of the stencil-based matrix and vector operations.
15
Satish Balay, Shrirang Abhyankar, Mark F. Adams et al. · 2019 · 2K citations
Xiaoye Sherry Li, James Demmel · ACM Transactions on Mathematical Software · 2003 · 622 citations
Ecient Sparse Matrix-Vector Multiplication on CUDA
Nathan Bell, Michael Garland · 2008 · 581 citations