Fair, but that misses a bunch of short-running simple operations where hg does badly; things like "print the repo root" or "print the current branch name" take several milliseconds in Git, but Mercurial needs an order of magnitude longer (see e.g. https://www.mercurial-scm.org/wiki/OxidationPlan for some description of the issues there). Doesn't seem like much, but those add up, especially when they're wrapped up into other scripts that might run several of those in sequence.