Using microbenchmarks to evaluate system performance
Bershad, B.K.; Draves, R.P.; Forin, A.
Workstation Operating Systems, 1992. Proceedings., Third Workshop on
Volume , Issue , 23-24 Apr 1992 Page(s):148 - 153
Digital Object Identifier 10.1109/WWOS.1992.275671
Summary:An implicit assumption underlying the use of microbenchmarks is
that the time required for the microbenchmark to exercise the code path
in question is the same as it when the code path is used by real
programs. The vulnerability of this assumption is demonstrated by
showing the significant variation that can occur with even simple
microbenchmarks. The behavior of cache memory can distort the
performance of a microbenchmark. Cache collisions can occur between
memory in the same address space, or between memory in different address
spaces. Flushing the cache while running a microbenchmark and counting
memory accesses, rather than instructions, are two techniques for
reducing the variability of results. It is stressed that it is important
to understand low-level details about architectural implementation when
interpreting microbenchmarks
View citation and abstract |