
Hi, Am Dienstag, den 24.10.2017, 16:59 +0200 schrieb Boespflug, Mathieu:
Hi Joachim,
But that’s what I am saying: By measuring dynamic instructions (using cachegrind), the execution time is no longer relevant.
I'm skeptical that this metric is a reliable enough proxy for actual runtime of user programs to make tracking it and only it sufficient. For the reasons Sven Panne gave in a previous email. But I'll be very interested to hear your experience report over time.
Sure, it’s a crutch. But we have been working for decades with “allocations go down, so this must be a win”, which is even more distant from runtime. If someone builds me a system where the runtime measurements are actually reliable (and not drowned in the noise of modern CPU architectures with sensitivity to layout and alignment), maybe using a tool like this http://plasma.cs.umass.edu/emery/stabilizer.html then I’ll happily ditch instruction counts and use that! But at the current state, working with nofib results is just too frustrating: You see a change, but you don't know, is it a measurement error? Did you push something over a performance cliff? Is it really related to your change to Core? I find it just not viable. Joachim -- Joachim Breitner mail@joachim-breitner.de http://www.joachim-breitner.de/