Netflix / flamescope

FlameScope is a visualization tool for exploring different time ranges as Flame Graphs.
Apache License 2.0
3.02k stars 169 forks source link

General issue with (perf) for flamescope using [Hardware cache event] counters #48

Closed drandynisbet closed 6 years ago

drandynisbet commented 6 years ago

Hi, Im trying to use flamescope on L1-dcache-load-misses, I use sudo node --perf-basic-prof dist/cli.js & sudo perf record -e L1-dcache-load-misses -g -c 100000 -p pgrep -n node sudo perf script --header > /examples/node.example.benchmark

Perf script is only producing the header output, I have not checked for which counter event types this happen.

I can do perf report and I can see that stack traces information is present, but obviously not in the format that I can use currently for flamescope -- anyone got any pointers here on how to fix this.

NOTE: if I do something like below for a [Hardware event] as reported by perf list sudo perf record -e cache-misses -g 100000 -p pgrep -n node then the perf script command produces stack traces.

perf version 4.13.13 kernel (uname -r) 4.13.0-36-generic

Apologies in advance if I've done something dumb ....

Thanks,

Andy

drandynisbet commented 6 years ago

perf script --header -F comm,pid,tid,time,event,ip,sym,dso > ../examples/node.example.benchmark

Doh ... should read the man page better ...

brendangregg commented 6 years ago

Just curious: you think L1-dcache-load-misses with -g is accurate? Do you know what level of PEBS (precise) it's using? (should show in -v -v -v).

drandynisbet commented 6 years ago

Good point, I hadn't thought about skid ... I'm actually more interested in LLC behaviour in order to look at GC etc, its down time here (out of hours & I have a glass of wine in front of me), so Ill try this out tomorrow.

Cheers for the reminder on checking the level of PEBS.