What is skid
Skid is the distance between events which trigger the issue and the events which are actually caught by
perf. To improve sampling accuracy,
Intel brings in
PEBS (Precise Event-Based Sampling), whilst
IBS (Instruction-Based Sampling). Check the output of "
perf list --help":
# perf list --help ...... The p modifier can be used for specifying how precise the instruction address should be. The p modifier can be specified multiple times: 0 - SAMPLE_IP can have arbitrary skid 1 - SAMPLE_IP must have constant skid 2 - SAMPLE_IP requested to have 0 skid 3 - SAMPLE_IP must have 0 skid, or uses randomization to avoid sample shadowing effects. For Intel systems precise event sampling is implemented with PEBS which supports up to precise-level 2, and precise level 3 for some special cases On AMD systems it is implemented using IBS (up to precise-level 2).
Following command is an example which requires no skid for sampling
# perf record -e "cpu/mem-loads/pp"