Performance Modeling of Streaming Kernels and Sparse Matrix-Vector Multiplication on A64FX
arXiv:2009.13903 · doi:10.1109/PMBS51919.2020.00006
Abstract
The A64FX CPU powers the current number one supercomputer on the Top500 list. Although it is a traditional cache-based multicore processor, its peak performance and memory bandwidth rival accelerator devices. Generating efficient code for such a new architecture requires a good understanding of its performance features. Using these features, we construct the Execution-Cache-Memory (ECM) performance model for the A64FX processor in the FX700 supercomputer and validate it using streaming loops. We also identify architectural peculiarities and derive optimization hints. Applying the ECM model to sparse matrix-vector multiplication (SpMV), we motivate why the CRS matrix storage format is inappropriate and how the SELL-C-sigma format with suitable code optimizations can achieve bandwidth saturation for SpMV.
arXiv comment6 pages, 5 figures, 3 tables
References in corpus (9)
- LIKWID: Lightweight Performance Tools
- A unified sparse matrix data format for efficient general sparse matrix-vector multiply on modern processors with wide SIMD units
- Exploring performance and power properties of modern multicore chips via simple machine models
- Quantifying performance bottlenecks of stencil computations using the Execution-Cache-Memory model
- Automated Instruction Stream Throughput Prediction for Intel and AMD Microarchitectures
- Kerncraft: A Tool for Analytic Performance Modeling of Loop Kernels
- Understanding HPC Benchmark Performance on Intel Broadwell and Cascade Lake Processors
- Automatic Throughput and Critical Path Analysis of x86 and ARM Assembly Kernels
- On the accuracy and usefulness of analytic energy models for contemporary multicore processors
Cited by in corpus (4)
- ECM modeling and performance tuning of SpMV and Lattice QCD on A64FX
- Sparse Stream Semantic Registers: A Lightweight ISA Extension Accelerating General Sparse Linear Algebra
- Occamy: A 432-Core Dual-Chiplet Dual-HBM2E 768-DP-GFLOP/s RISC-V System for 8-to-64-bit Dense and Sparse Computing in 12nm FinFET
- Accelerating the SpMV kernel on standard CPUs by exploiting the partially diagonal structures