Home

MPKI

Misses Per Kilo Instructions (MPKI) is a performance metric used in computer architecture to quantify cache and translation lookaside buffer misses relative to the number of instructions executed. It is defined as the number of cache or TLB misses divided by the number of instructions executed, scaled to thousands of instructions, i.e., MPKI = misses / (instructions / 1000). MPKI is commonly reported for various memory hierarchy components, such as L1 data cache MPKI, L2 cache MPKI, instruction cache MPKI, and TLB MPKI (for both ITLB and DTLB).

MPKI is used to characterize memory locality and to compare how different workloads or architectural configurations

Measurement of MPKI typically relies on hardware performance counters available in modern processors. Tools that access

Limitations of MPKI include its abstraction over complex memory behavior, sensitivity to hardware specifics (cache sizes,

interact
with
the
memory
system.
A
lower
MPKI
indicates
fewer
misses
per
thousand
instructions
and
often
correlates
with
better
memory
locality
and
potentially
higher
performance,
though
it
is
not
a
direct
measure
of
total
execution
time.
these
counters
(for
example,
performance
profiling
and
tracing
suites)
count
cache
and
TLB
misses
and
the
total
number
of
instructions
executed
for
a
specified
region
of
code
or
workload.
Care
must
be
taken
to
ensure
consistent
measurement
windows,
representative
workloads,
and
to
account
for
overhead
or
variation
between
runs.
associativity,
prefetchers),
and
the
fact
that
it
does
not
directly
capture
stall
cycles
or
latency.
It
is
most
useful
as
a
comparative
metric
for
similar
architectures
and
workloads,
rather
than
as
an
absolute
predictor
of
overall
performance.