llvm-compile-time-tracker icon indicating copy to clipboard operation
llvm-compile-time-tracker copied to clipboard

Only track userspace event counts

Open goldsteinn opened this issue 2 years ago • 4 comments

Generally would think events in the kernel are just noise in this context, but maybe not.

goldsteinn avatar Nov 02 '23 18:11 goldsteinn

We already collect instructions and instructions:u. I've collected some cycles + cycles:u data on a different server as well. Overall, it seems to make very little difference. The geomean standard deviations in percent for O3 on this data set look like this:

            "instructions": 0.0077548071803970305,
            "instructions:u": 0.007509253434847891,
            "cycles": 0.14777269587632164,
            "cycles:u": 0.14480575380626687,

The user-space metrics are maybe very marginally less noisy, but not to a degree that would be noticeable. The absolute values are also very close -- we don't spend much time in the kernel.

nikic avatar Nov 03 '23 20:11 nikic

Feel free to close, was just using this for something independent and made the change on my end. Figured might be wanted here.

goldsteinn avatar Nov 03 '23 21:11 goldsteinn

Feel free to close, was just using this for something independent and made the change on my end.

Out of curiosity, what are you using it for?

Figured might be wanted here.

I'm currently in the process of moving to a new server (in order to get timings for stage 2 clang builds) and could change the collected metrics as part of that move. I'm just not entirely sure it's worthwhile, as it breaks graphing when switching from one metric to another.

nikic avatar Nov 03 '23 21:11 nikic

Feel free to close, was just using this for something independent and made the change on my end.

Out of curiosity, what are you using it for? Just benchmarking various LLVM configs for build time, used this to display/compare.

Figured might be wanted here.

I'm currently in the process of moving to a new server (in order to get timings for stage 2 clang builds) and could change the collected metrics as part of that move. I'm just not entirely sure it's worthwhile, as it breaks graphing when switching from one metric to another.

If its really in the noise then would think not worth it. Although personally I'd think 3% difference is not nothing given that most of the regressions/perf improvements are ~1% of lower themselves.

goldsteinn avatar Nov 03 '23 21:11 goldsteinn