On the instruction-level characteristics of scalar code in highly-vectorized scientific applications
Journal
25th Annual International Symposium on Microarchitecture
Pages
20-28
Date Issued
1992
Author(s)
Vajapeyam, Sriram
Abstract
The performance of a program will ultimately be limited by its serial (scalar) portion, as pointed out by Amdahl's Law. So far, reported studies of instruction-level parallelism have mixed data-parallel program portions with scalar program portions, often leading to contradictory and controversial results. In this study, we report an instruction-level behavioral characterization of scalar code containing minimal data-parallelism, extracted from highly vectorized programs of the PERFECT benchmark suite running on a Cray Y-MP system. We classify scalar basic blocks according to their instruction mix, characterize the data dependencies seen in each class, and, as a first step, measure the maximum intra-block instruction-level parallelism available. We observe: skewed rather than balanced instruction distributions in the scalar code and also within individual basic block classes; non-uniform distribution of parallelism across instruction classes; and, as expected, limited available intra-block parallelism. We identify frequently-occurring data-dependence patterns and discuss new instructions to reduce latency.
SDGs
Other Subjects
Parallel processing systems; Performance; Cray Y-MP; Instruction level characteristics; Microarchitecture; Scalar code; Vector processors; Microprogramming
Type
conference paper
