Ways of measuring benchmark characteristics independent of system design
are presented. These benchmark characteristics include memory access
behavior, control transfer behavior, and data dependencies. Measuring
benchmark characteristics independently of the design parameters
provides for cross-design and cross architecture comparisons using the
same benchmark set. These characteristics also serve as the basis for
interpreting benchmarking results. Instruction memory access behavior
and control transfer behavior are extracted from real programs and
presented to illustrate the usefulness of benchmark characterization