Re: [PATCH v2 14/16] perf tools: add new mem command for memoryaccess profiling

From: Stephane Eranian
Date: Tue Nov 06 2012 - 10:49:18 EST


On Tue, Nov 6, 2012 at 4:44 PM, Arnaldo Carvalho de Melo
<acme@xxxxxxxxxx> wrote:
> Em Mon, Nov 05, 2012 at 02:51:01PM +0100, Stephane Eranian escreveu:
>> +
>> + if (strcmp(mem_operation, MEM_OPERATION_LOAD))
>> + sprintf(event, "cpu/mem-stores/pp");
>> + else
>> + sprintf(event, "cpu/mem-loads/pp");
>> +
>
> Fails for me on a Sandy Bridge notebook:
>
That's because you need to update the microcode.

$ sudo modprobe microcode
$ cat /proc/cpuinfo

Line with microcode needs to say:
microcode : 0x28

update the microcode package or install directly from
intel download center.

> [root@sandy ~]# perf mem -t store record -a
> Error:
> 'precise' request may not be supported. Try removing 'p' modifier
>
> So if I manually fall back to a less precise mode:
>
> [root@sandy ~]# perf record -g -a -e cpu/mem-stores/p
> Error:
> 'precise' request may not be supported. Try removing 'p' modifier
> [root@sandy ~]#
>
> Still can't, manually fall back a one more level:
>
> [root@sandy ~]# perf record -g -a -e cpu/mem-stores/
> ^C[ perf record: Woken up 25 times to write data ]
> [ perf record: Captured and wrote 7.419 MB perf.data (~324160 samples) ]
>
> Yay, got some numbers.
>
> smpboot: CPU0: Intel(R) Core(TM) i7-2920XM CPU @ 2.50GHz (fam: 06, model: 2a, stepping: 07)
> Performance Events: PEBS fmt1+, 16-deep LBR, SandyBridge events, Intel PMU driver.
> perf_event_intel: PEBS disabled due to CPU errata, please upgrade microcode
> ... version: 3
> ... bit width: 48
> ... generic registers: 4
> ... value mask: 0000ffffffffffff
> ... max period: 000000007fffffff
> ... fixed-purpose events: 3
> ... event mask: 000000070000000f
> Disabled fast string operations
> NMI watchdog: enabled on all CPUs, permanently consumes one hw-PMU counter.
>
> Do you have any test program you use to test if the results make sense that you
> could share?
>
> I could then try to shape it into a new 'perf test' entry that would test
> if requesting this event and then doing synthetic testing would produce
> the experted numbers or in a acceptable range.
>
> One suggestion for such new features, examples of use with the resulting output
> looks great on changeset logs :-)
>
> Ah, I recall seeing some, but that was on the patchset cover letter,
> that doesn't get inserted in the git changelog history, will look at those
> now.
>
> - Arnaldo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/