“…SpMV in Commodity Systems. Numerous prior works propose optimized SpMV algorithms for CPUs [5, 37, 59, 60, 62, 63, 108, 136, 165, 171, 172, 182, 193, 204, 209, 235-237, 245, 247, 250, 251, 255, 256, 274], GPUs [18,27,48,61,70,91,107,162,203,227,231,233,243,253,260,261,265], heterogeneous CPU-GPU systems [10,19,34,116,117,202,262,264], and distributed CPU systems [24,28,38,40,85,125,150,161,183,196,201,242]. Optimized SpMV kernels for processorcentric CPU and GPU systems exploit the shared memory model of these systems and data locality in deep cache hierarchies.…”