Messages in this thread | | | Date | Thu, 14 Nov 2013 15:44:44 +0100 | From | Peter Zijlstra <> | Subject | Re: [PATCH] Perf: Correct Assumptions about Sample Timestamps in Passes |
| |
On Thu, Nov 14, 2013 at 07:26:06AM -0700, David Ahern wrote: > On 11/14/13, 3:05 AM, Ingo Molnar wrote: > > >What am I missing? > > I have spent quite a bit of time on this problem on this well. I think the > flush time needs to be based on the start time of each round, not the > minimum time observed across mmaps. I have tried the minimum time stamp > route and it still fails often enough to be annoying. > > See builtin-kvm.c, perf_kvm__mmap_read(). The problem is that it takes time > to move from mmap to mmap and sample can come in behind you - an mmap that > has already be scanned with a timestamp less than what is determined to be > the lowest minimum for the samples actually read. 'perf kvm stat live' in a > nested environment is a stress test for the problem.
In which case you need the sliding sort window to be n*buf_size, where n is the number of buffers flushed into the one file. Or move to one file per buffer and merge sort the lot, buffers should be monotonic.
| |