On Mon, 18 Sep 2017 11:41:29 -0600 Mathieu Poirier mathieu.poirier@linaro.org wrote:
These two patches generated a fair amount of discussion on the mailing list when they were sent and as such I didn't apply them.
But from what I understand people use them when doing autoFDO testing. They may not be perfect but at least provide a base for discussion and further improvement.
My intention is to add them to the perf-opencsd-master branch for the 4.14 cycle. If anyone is categorically against it please get back to me with convincing arguments.
In my tests, the original inject support commit 13c23058bfef "perf tools: new inject capabilitity for CoreSight traces" did not work as advertised: no samples were generated during inject, and continuing to follow the AutoFDO procedure produced a better performing executable only because the -fauto-profile compiler flag enables some optimizations whether the gcov input file is populated or not.
Adding the two patches here on top of that made the autoFDO process produce *poorer* performing executables, because the output gcov data did not correctly represent the true code coverage.
I thus don't think it's a good idea to apply them to the perf-opencsd-master branch, as that gives one the illusion that inject/AutoFDO support works and that they should see an improvement in AutoFDO executable performance as per the intructions in HOWTO.OpenCSD.md appear to demonstrate (when in fact my tests suggest they won't).
Thanks,
Kim