The part where he talks about the quality of benchmarking tools reminded me, a library I think worth mentioning for the .NET crowd is BenchmarkdotNet. Not only can it tell you time for a given test to run (after doing warmups to try and mitigate various problems with running tests cold), it also has options to see how the GC performed, at every generation level. Is this code getting to later generations, or is it staying ephemeral which is cheaper to use and destroy? Or can you avoid heap allocations entirely?
Edit: Oh and I should mention if you want the method level tracking on a run similar to some of his screenshots, if you pay for a Resharper license that comes with dotTrace I believe which gives you that sort of tracking.
dotTrace fantastic, really essential for performance profiling. Likewise, dotMemory is really good when trying to reduce or understand memory usage (tho dotTrace does have some memory tooling too). I've been happily paying for a JetBrains Ultimate personal license for a few years now.
There are very few companies that I'm really rooting for, but JetBrains is absolutely one.
I have a resharper ultimate license through work and a full Jetbrains ultimate at home (I switched to Rider for C#/F#/Unity dev in the past 6 months and really liking it, along with CLion for the times I'm writing rust).
One time at work I dug up something that removed 75% of the runtime of an application because it turned out taking the length of an image was actually a method even though it looked like a simple property, so I cached it at the start of processing each image instead of foring over it over and over. It was insane how much faster the code became. I tracked that down with dotTrace.
And yeah dotMemory is also fantastic, I've dug up some GNARLY memory usage with it. Probably should have mentioned it since I was bringing up the memory portion of BenchmarkdotNet.
Edit: Oh and I should mention if you want the method level tracking on a run similar to some of his screenshots, if you pay for a Resharper license that comes with dotTrace I believe which gives you that sort of tracking.