> > I also wonder if there is a chance for collaboration/integration with perf
> > tools itself.
> > In particular, the current tool is picky about perf.data file format that
> > is not completely
> > stable. 

That perf.data format is stable, but it supports extensions, 
and the perf library that autofdo uses didn't use to ignore
unknown ones. I thought that had been fixed however. 
I don't think the format is a problem for a well written reader.

> So perhaps the perf.data loading can be sharing a library with
> > perftools.

There is libperf, but I wouldn't use it. The interface to it 
definitely isn't stable, as well as being convoluted.

There are lots of third party libraries that can read perf.data however,
or you can use a perf script extension like the one below.

> > On the other hand hwoever minimizing dependencies is quite important.
> 
> I think Andi had https://github.com/andikleen/perf-gcov.

Yes it needs some more work, and is currently broken, but could be that tool,
assuming python code is acceptable (which admittedly has some deployment
issues). It relies on some patches to libbacktrace.

It supports streaming at least, so the problem
of running out of memory or disk space would go away.

I agree that the on disk format could use some improvements, 
also the current gcc parser isn't great.

-Andi

Reply via email to