counting cycles in GC#50
Conversation
|
Example of output table: I believe this would need further assessment to judge whether the callback instrumentation introduces too much noise into the clock-time metrics. |
|
Latest commit should run benchmark 2*N times: N of them have the callbacks set and are used exclusively to measure cycles in GC. This should avoid putting the cost of a |
|
This is really nice! We should think about what other metrics we might want. Probably page-faults? |
|
The cycle count seems to be a bit discrepant with wall-clock-time in some of the benchmarks: |
|
I think you want to actually measure CPU-Time (x-ref JuliaCI/BenchmarkTools.jl#94) instead of wall-clock-time. I think perf has an event for this https://github.com/JuliaPerf/LinuxPerf.jl/blob/a7fee0ff261a5b5ce7a903af7b38d1b5c27dd931/src/LinuxPerf.jl#L80-L81 |
|
Seems like we were missing a few full GC collections. Latest commit seems to be a bit more consistent. Wondering how we can sanity check these results. |
Instrumentation to count cycles in GC: basically wraps a
perf_event_opensyscall in the GC callbacks.TODO:
measure_gc_cyles.cinto a shared library.